برنامه نویسی

مقدمه ای بر کنترل نسخه داده ها

کنترل نسخه داده ها یک سیستم منبع باز رایگان است که مدیریت داده‌ها، آزمایش‌های یادگیری ماشینی و اتوماسیون‌های یادگیری ماشین را تضمین می‌کند. با حصول اطمینان از اینکه دانشمندان نگران نباشند که کدام مدل داده از کدام مجموعه داده استفاده می‌کند و اقدامات انجام شده برای دستیابی به نتیجه، کار انجام شده است. دانشمندان داده می توانند مجموعه داده های بزرگ را به راحتی مدیریت کنند و همکاری را بهتر می کنند.

Data Version Control برای اولین بار در سال 2017 به عنوان یک ابزار خط فرمان ساده منتشر شد. این ابزار مبتنی بر ابزارهای کنترل نسخه موجود مانند Git و CI است. نسخه های در حال تغییر داده ها و هر تغییر commit انجام شده در هر فایلی را ردیابی می کند. بنابراین DVC مانند git برای است. پروژه های یادگیری ماشینی

فایل dvc. سبک وزن است، بنابراین با کد در github ذخیره می شود. فایل های dvc. همراه با کد از github دانلود می شوند. مجموعه داده های بزرگ مورد استفاده و فایل های مدل **** همیشه در حافظه راه دور DVC ذخیره می شوند در حالی که فایل های dvc. که به فایل های داده اشاره می کنند در github ذخیره می شوند.

اصول طراحی DVC

1. کدگذاری: تعریف جنبه‌های پروژه مانند داده‌ها و نسخه‌های مدل یا آزمایش‌های یادگیری ماشین در متافایل‌هایی که توسط انسان قابل خواندن هستند.

2. نسخه سازی: متافایل های DVC را به git متعهد کنید که نسخه سازی و اشتراک گذاری کل پروژه (یعنی مجموعه داده ها، کد منبع و پیکربندی، پارامترها و معیارها) را با استفاده از git امکان پذیر می کند.

3. همکاری ایمن: دسترسی و مجوزهای پروژه را کنترل کنید.

ویژگی های DVC

Data Version Control از فناوری های موجود با هدف ارائه بهترین شیوه های مهندسی نرم افزار به حوزه علم داده بهره می برد. برخی از ویژگی های DVC عبارتند از:

  • استفاده و نصب آسان:
    DVC به زیرساخت و دانش خاصی نیاز ندارد. علاوه بر این، به هیچ سرویس خارجی وابسته نیست. DVC را می توان به راحتی با ابزارهای موجود مانند Git ادغام کرد.

  • می تواند در بالای Git Repo کار کند:
    DVC به گردش کار git مانند commit، درخواست‌های شاخه‌بندی، کشش، فشار، کلون کردن و غیره پایبند است. همچنین می‌تواند به تنهایی بدون قابلیت‌های نسخه‌سازی کار کند.

  • DVC به پلتفرم بستگی ندارد:
    این می تواند روی همه سیستم عامل های اصلی اجرا شود و کار کند. مستقل از زبان های برنامه نویسی و کتابخانه های یادگیری ماشین است.

نحوه نصب Data Version Control در ویندوز
DVC را می توان بر روی لینوکس و macOS نصب کرد. با این حال ما در این مقاله به نصب ویندوز خواهیم پرداخت.
برای استفاده از DVC به عنوان کتابخانه پایتون، می توانید آن را با conda یا با pip نصب کنید.

نصب با choco
برای نصب از خط فرمان از Chocolatey با استفاده از دستور choco استفاده کنید:
$ choco نصب dvc

نصب با کاندا:
به توزیع مینیوکوندا یا آناکوندا نیاز دارد. از اعلان آناکوندا از کوندا استفاده کنید.

$ conda install -c conda-forge mamba

$ mamba install -c conda-forge dvc

نصب با استفاده از پیپ:
ایجاد محیط مجازی توصیه می شود یا از pipx برای محصور کردن محیط محلی خود استفاده کنید. Python 3.8+ برای دریافت آخرین نسخه DVC مورد نیاز است.

** $ pip install dvc **

Windows Installer:
به صفحه اصلی https://dvc.org/ بروید و نصب کننده مستقل و اجرایی را دریافت کنید که از سایت موجود است. دانلود را فشار دهید. همچنین می توانید آن را از صفحه انتشار در GitHub دریافت کنید.
برای به روز رسانی دانلود DVC و اجرای مجدد نصب کننده. در صورتی که می خواهید برنامه را از دستگاه خود حذف کنید، از Windows Uninstaller استفاده کنید.

مزایای کنترل نسخه داده

  1. داده های یادگیری ماشین سازمان یافته-
    مفهوم خط لوله داده توسط DVC برای نسخه سازی داده ها با استفاده از Git استفاده می شود. سبک بودن خطوط لوله امکان سازماندهی و تکرارپذیری گردش کار را فراهم می کند.

  2. به اشتراک گذاری مدل ها از طریق فضای ذخیره سازی ابری-
    دانشمندان با استفاده از یک ذخیره‌سازی متمرکز داده انجام آزمایش‌ها را بر روی یک ماشین مشترک آسان می‌یابند که منجر به استفاده بهتر از منابع می‌شود.

  3. تکرارپذیری-
    مخازن DVC تاریخچه و جزئیاتی مانند تغییرات ایجاد شده و زمان را ذخیره می کنند. همچنین می تواند از کشش بدون کد برای به روز رسانی درخواست ها تنها با یک commit استفاده کند. رابط خط فرمان آسان به دانشمندان اجازه می دهد تا فروشگاه های ویژگی را با دریافت dvc و سازماندهی مجدد کنند و سازماندهی کنند. واردات dvc متعهد می شود.

  4. ردیابی و تجسم مدل های ML-
    نسخه‌سازی با استفاده از گردش‌های کاری Git مانند درخواست‌های کششی و فشاری به دست می‌آید.DVC ساخته شده در حافظه پنهان برای ذخیره تمام اطلاعات یادگیری ماشین که بیشتر با ذخیره‌سازی ابری راه دور همگام‌سازی می‌شوند، استفاده می‌شود. بنابراین DVC امکان ردیابی داده ها و مدل ها را برای نسخه های بیشتر فراهم می کند.

معایب DVC

الف) عملکرد ضعیف در معماری شلخته
کنترل نسخه داده‌ها در کنار Git کار می‌کند، بنابراین اگر برخی از اطلاعات مربوط به مجموعه‌های داده برای یک پروژه معین وجود نداشته باشد، اعضای تیم نمی‌توانند از مزایای کامل این سیستم کنترل نسخه بهره ببرند. ممکن است تیم‌ها مجبور شوند ویژگی‌های اضافی را به صورت دستی در DVC توسعه دهند تا نیازهای خاصی را برآورده کنند. از ML.
ب) افزونگی
DVC از مدیریت خط لوله استفاده می کند، بنابراین هرگونه استفاده از ابزار جداگانه خط لوله منجر به افزونگی می شود.
ج) خطر پیکربندی نادرست
اگر تیم کاری فراموش کند که فایل خروجی را اضافه کند، همیشه خطر پیکربندی نادرست خط لوله وجود دارد. علاوه بر این، نسخه تولید شده با DVC از پروژه در سال گذشته ممکن است در شرایط امروزی کار نکند.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا