Учени по данни и специалистите по машинно обучение се занимават със значителен брой данни от различни типове в типичен проект за наука за данни. Разработени са множество модели с различни конфигурации и функции, както и множество итерации на настройка на параметри, за да се постигне оптимална производителност.
При такъв сценарий всички модификации на данните и корекции на процеса на изграждане на модела трябва да бъдат наблюдавани и измерени, за да се определи кое е работило и кое не. Също така е жизненоважно да можете да се върнете към предишно издание и да разгледате предишните резултати.
Контролът на версиите на данните (DVC), който подпомага управлението на данните, основния модел и изпълняването на възпроизводими резултати, е една такава технология, която ни позволява да наблюдаваме всичко това.
В тази публикация ще разгледаме отблизо контрола на версиите на данните и най-добрите инструменти за използване. Нека да започнем.
Какво е контрол на версиите на данните?
Необходима е версия на версиите за всички производствени системи. Единна точка за достъп до най-актуалните данни. Всеки ресурс, който често се променя, особено от няколко потребители едновременно, се нуждае от създаване на одитна пътека, за да следи всички промени.
Системата за контрол на версиите е отговорна да гарантира, че всички в екипа са на една и съща страница. Това гарантира, че всички в екипа работят върху най-новата версия на файла и, което е по-важно, че всеки си сътрудничи по един и същ проект в даден момент.
Ако разполагате с подходящо оборудване, можете да постигнете това с минимални усилия!
Ще имате последователни набори от данни и задълбочен архив на всичките си изследвания, ако използвате надеждна стратегия за управление на версиите на данните. Инструментите за управление на версиите на данни са от решаващо значение за вашия работен процес, ако ви е грижа за възпроизводимостта, проследимостта и историята на модела на ML.
Те ви помагат да придобиете версия на елемент, като хеш на набор от данни или модел, който след това можете да използвате, за да идентифицирате и сравните. Тази версия на данни често се въвежда във вашето решение за управление на метаданни, за да се гарантира, че обучението на вашия модел е версияно и повторяемо.
Най-добрите инструменти за контрол на версиите на данните
Сега е време да разгледаме най-добрите налични решения за контрол на версиите на данни, които можете да използвате, за да следите всяка част от вашия код.
1. git-lfs
Проектът Git LFS е безплатен за използване. В Git големи файлове като аудио мостри, видеоклипове, бази данни и снимки се заменят с текстови указатели, а съдържанието на файла се записва на отдалечен сървър като GitHub.com или GitHub Enterprise.
Позволява ви да използвате Git за версия на огромни файлове — до няколко GB по размер — да хоствате повече във вашите Git хранилища, използвайки външно хранилище, и да клонирате и извличате големи файлови хранилища по-бързо. Когато става въпрос за управление на данни, това е доста леко решение. За да работите с Git, не се нуждаете от допълнителни команди, системи за съхранение или инструменти.
Той ограничава количеството информация, която изтегляте. Това означава, че клонирането и извличането на големи файлове от хранилища ще бъде по-бързо. Показателите са изработени от по-лек материал и сочат към LFS.
В резултат на това, когато поставите вашето репо в основното хранилище, то се актуализира бързо и заема по-малко място.
Професионалисти
- Лесно се интегрира в работните процеси за разработка на повечето бизнеси.
- Не е необходимо да се обработват допълнителни права, защото използва същите разрешения като Git хранилището.
Против
- Git LFS изисква използването на специални сървъри за съхранение на вашите данни. В резултат на това вашите екипи по наука за данни ще бъдат заключени и вашето инженерно натоварване ще се увеличи.
- Много специализиран и може да наложи използването на различни инструменти за следващите фази в работния процес на науката за данни.
Планове
Той е безплатен за използване за всеки.
2. LakeFS
LakeFS е решение за версия на данни с отворен код, което съхранява данни в S3 или GCS и има подобна на Git парадигма за разклоняване и извършване, която се мащабира до петабайта.
Тази стратегия за разклоняване прави вашето езеро от данни ACID съвместимо, като позволява промените да се случват в различни клонове, които могат да бъдат конструирани, обединени и върнати обратно атомарно и мигновено.
LakeFS позволява на екипите да създават дейности на езерото с данни, които са повторяеми, атомарни и версии. Това е новак на сцената, но е сила, с която трябва да се съобразявате.
Той използва подобен на Git подход за разклоняване и контрол на версиите, за да взаимодейства с вашия езеро с данни, мащабируеми до петабайти данни. В екзабайтова скала можете да проверите за контрол на версиите.
Професионалисти
- Операциите, подобни на Git, включват разклоняване, извършване, сливане и връщане.
- Куките за предварително записване/сливане се използват за CI/CD проверки на данни.
- Предоставя сложни функции като ACID транзакции за просто облачно съхранение като S3 и GCS, като същевременно остава неутрален във формат.
- Възстановете промените в данните в реално време.
- Мащабира се лесно, което му позволява да побере много огромни езера от данни. Контролът на версиите може да бъде предоставен както за настройки за разработка, така и за производствени.
Против
- LakeFS е нов продукт, така че функционалността и документацията може да се променят по-бързо, отколкото при предишните решения.
- Тъй като е фокусиран върху версията на данни, ще трябва да използвате различни допълнителни инструменти за различни части от работния процес на науката за данни.
Планове
Той е безплатен за използване за всеки.
3. ССЗ
Data Version Control е безплатно решение за версия на данни, предназначено за приложения за наука за данни и машинно обучение. Това е програма, която ви позволява да дефинирате своя тръбопровод на всеки език.
Чрез управление на големи файлове, набори от данни, модели за машинно обучение, код и т.н., инструментът прави моделите за машинно обучение споделени и възпроизводими. Програмата следва примера на Git в предоставянето на прост команден ред, който може да бъде настроен само с няколко стъпки.
Както подсказва името му, DVC не се отнася само до версиите на данни. Освен това улеснява управлението на тръбопроводи и модели на машинно обучение за екипи.
И накрая, DVC ще помогне за подобряване на последователността на моделите на вашия екип и тяхната повторяемост. Вместо да използвате сложни файлови суфикси и коментари в кода, възползвайте се от Git клонове да изпробвате нови идеи. За да пътувате, използвайте автоматизирано метрично проследяване вместо хартия и молив.
За предаване на последователни пакети от машинно обучение модели, данни и код в производството, отдалечени компютри или работния плот на колега, можете да използвате команди за натискане/дърпане вместо ad-hoc скриптове.
Професионалисти
- Той е лек, с отворен код и работи с всички основни облачни платформи и видове съхранение.
- Гъвкав, независим от формат и рамка и лесен за изпълнение.
- Цялата еволюция на всеки ML модел може да бъде проследена до неговия изходен код и данни.
Против
- Управлението на тръбопровода и DVC контролът на версиите са неразривно свързани. Ще има излишък, ако вашият екип вече използва друг продукт за конвейер за данни.
- Тъй като DVC е лек, вашият екип може да се наложи да проектира допълнителни функции ръчно, за да го направи по-удобен за потребителя.
Планове
Той е безплатен за използване за всеки.
4. Делта Лейк
DeltaLake е слой за съхранение с отворен код, който повишава надеждността на езерото от данни. Delta Lake поддържа ACID транзакции и мащабируемо управление на метаданни в допълнение към поточно предаване и обработка на пакетни данни.
Той работи с API на Apache Spark и се намира на съществуващото ви езеро от данни. Delta Sharing е първият в света отворен протокол за безопасно споделяне на данни в бизнеса, което улеснява обмена на данни с други предприятия, независимо от техните компютърни системи.
Delta Lakes са в състояние да обработват петабайти данни с лекота. Метаданните се съхраняват по същия начин като данните и потребителите могат да ги получат с помощта на метода Describe Detail. Delta Lakes има единна архитектура, която може да чете както потокови, така и пакетни данни.
Upserts се правят лесно с помощта на Delta. Тези премествания или сливания в таблицата Delta са сравними с SQL обединяванията. Можете да го използвате, за да интегрирате данни от друга рамка с данни във вашата таблица и да извършвате актуализации, вмъквания и изтривания.
Професионалисти
- Много възможности, като ACID транзакции и стабилно управление на метаданни, могат да бъдат налични във вашето настоящо решение за съхранение на данни.
- Delta Lake вече може без усилие да управлява таблици с милиарди дялове и файлове в петабайтов мащаб.
- Намалява необходимостта от ръчен контрол на версиите на данните и други проблеми с данните, позволявайки на разработчиците да се концентрират върху разработването на продукти на върха на техните езера от данни.
Против
- Тъй като е проектиран да работи със Spark и огромни данни, Delta Lake обикновено е прекомерен за повечето задачи.
- Това налага използването на специален формат за данни, което ограничава неговата гъвкавост и го прави несъвместим с настоящите ви формуляри.
Планове
Той е безплатен за използване за всеки.
5. Долт
Dolt е SQL база данни, която прави разклоняване, клониране, разклоняване, сливане, бутане и изтегляне по същия начин, както прави git хранилище. За да подобри потребителското изживяване на база данни за контрол на версиите, Dolt позволява на данните и структурата да се променят синхронизирано.
Това е отличен инструмент за съвместна работа за вас и вашите колеги. Можете да се свържете с Dolt по същия начин, както бихте направили с всяка друга MySQL база данни и да изпълнявате заявки или да правите промени в данните с помощта на SQL команди.
Когато става въпрос за версии на данни, Dolt е единствен по рода си. Dolt е база данни, за разлика от някои от другите решения, които само данни за версията. Докато софтуерът в момента е в ранен етап, има надежди да го направи напълно съвместим с Git и MySQL в близко бъдеще.
Всички команди, които сте запознати с Git, ще работят и с Dolt. Файлове с версии на Git, таблици с версии на Dolt Използвайки интерфейса на командния ред, импортирайте CSV файлове, заредете промените си, публикувайте ги на дистанционно и обединете промените на вашия съотборник.
Професионалисти
- Леки и с отворен код отчасти.
- В сравнение с по-неясни избори, той има SQL интерфейс, което го прави по-достъпен за анализаторите на данни.
Против
- В сравнение с други алтернативи за версии на база данни, Dolt все още е развиващ се продукт.
- Тъй като Dolt е база данни, трябва да прехвърлите данните си в нея, за да получите предимствата.
Планове
Всеки е добре дошъл да използва сесията на общността. Платформата не предоставя първокласни цени; вместо това трябва да се свържете с доставчика.
6. Пахидерм
Pachyderm е безплатна система за контрол на версиите за наука за данни с много функции. Pachyderm Enterprise е мощна платформа за наука за данни, предназначена за широкомащабно сътрудничество в силно защитени среди.
Pachyderm е една от малкото платформи за наука за данни в списъка. Целта на Pachyderm е да предостави платформа, която управлява пълния цикъл на данни и улеснява дублирането на констатациите на моделите за машинно обучение. Pachyderm е известен като „докерът на данните“ в този контекст. Pachyderm пакетира вашата среда за изпълнение с помощта на Docker контейнери. Това улеснява дублирането на същите резултати.
Учените по данни и екипите на DevOps могат да разгръщат модели с увереност благодарение на комбинацията от версионни данни с Docker. Благодарение на ефективната система за съхранение петабайтите структурирани и неструктурирани данни могат да се поддържат, докато разходите за съхранение са сведени до минимум.
По време на фазите на тръбопровода, базираното на файлове версия осигурява задълбочен запис от одит за всички данни и артефакти, включително междинни резултати. Много от възможностите на инструмента се управляват от тези стълбове, които помагат на екипите да извлекат максимума от него.
Професионалисти
- Въз основа на контейнери, вашите среди за данни ще бъдат преносими и лесни за прехвърляне между доставчици на облак.
- Здрав, с възможност за мащабиране от малки до изключително големи системи.
Против
- Тъй като има толкова много движещи се елементи, като сървъра Kubernetes, необходими за работа с безплатното издание на Pachyderm, има по-стръмна крива на обучение.
- Pachyderm може да е предизвикателство да се включи в съществуващата инфраструктура на компанията поради многото си технологични компоненти.
Планове
Можете да започнете да използвате платформата със сесията на общността, а за корпоративното издание трябва да се свържете с доставчика.
7. Нептун
Метаданните за изграждане на модели се управляват от хранилището за метаданни за ML, което е важен аспект на стека MLOps. За всеки MLOps работен процес, Neptune служи като централизирано съхранение на метаданни.
Можете да следите, визуализирате и сравнявате хиляди модели на машинно обучение на едно място. Той включва функции като проследяване на експерименти, регистър на моделите и наблюдение на модела, както и интерфейс за сътрудничество. Той включва над 25 различни интегрирани инструмента и библиотеки, включително няколко инструмента за обучение на модели и настройка на хиперпараметри.
Можете да се присъедините към Neptune, без да използвате кредитната си карта. На негово място е достатъчен акаунт в Gmail.
Професионалисти
- Интеграцията с всеки конвейер, поток, кодова база или рамка е проста.
- Визуализациите в реално време, лесният API и бързата поддръжка
- С Neptune можете да направите „резервно копие“ на всички данни от вашите експерименти на едно място, което можете да възстановите по-късно.
Против
- Въпреки че не е изцяло с отворен код, индивидуална версия вероятно би била достатъчна за лична употреба, въпреки че такъв достъп е ограничен до един месец.
- Има няколко малки недостатъка в дизайна, които трябва да бъдат открити.
Планове
Можете да започнете да използвате платформата с индивидуалния план, който е безплатен за използване за всеки. Разделът за цени започва от $150/месец.
Заключение
В тази публикация обсъдихме най-добрите инструменти за версия на данни. Всеки инструмент, както видяхме, има свой собствен набор от функции. Някои бяха безплатни, докато други изискваха плащане. Някои са много подходящи за малкия бизнес модел, докато други са по-подходящи за големия бизнес модел.
В резултат на това трябва да изберете най-добрия софтуер за вашите цели, след като претеглите предимствата и недостатъците. Препоръчваме ви да изпробвате безплатната пробна версия, преди да закупите първокласен продукт.
Оставете коментар