Q:
Как контейнеризацията може да бъде добър избор за среда за машинно обучение?
A:Някои компании се насочват към контейнеризация за проекти за машинно обучение, базирани на някои от предимствата, които предлагат настройките на контейнерите по отношение на платформи и софтуерни среди.
Машинното обучение е сложно - самите алгоритми изпълняват много много подробни и сложни действия върху данните. Въпреки това, предложението за стойности в някои отношения е доста просто - алгоритмите за машинно обучение работят върху данни, идващи от среди за съхранение.
Безплатно изтегляне: Машинното обучение и защо има значение |
Използването на контейнери включва как инженерите поставят данните в машинната среда за обучение и как работят алгоритмите.
Инженерите могат да използват виртуализация на контейнери или за да съхраняват данните, или да разгърнат кода, който управлява алгоритмите. Въпреки че контейнерите могат да бъдат полезни за данни, основната им полза вероятно идва в тяхната употреба за създаване на код на алгоритъм.
Контейнерните архитектури разполагат със самостоятелни приложения и кодови бази. Всеки контейнер получава свой клонинг за операционна система и получава пълна операционна среда за набора от приложения или кодове, който живее вътре в него.
В резултат на това отделните приложения, микросервизи или кодови бази, които са във всеки контейнер, могат да бъдат разгърнати по много универсални начини. Те могат да бъдат разположени в различни платформи и различни среди.
Нека предположим, че се опитвате да увеличите проект за машинно обучение, в който различните алгоритми трябва да работят върху различни части данни по итеративен начин. Ако ви е омръзнало да се справяте с предизвикателства между платформи или проблеми с зависимостта или ситуации, при които внедряването на гол метал е трудно, контейнерите могат да бъдат решението.
По същество контейнерите предоставят начин за хост код. Експертите говорят за разполагането на контейнерите срещу съхранените данни, за да получат добри резултати.
"(Приложенията) могат да се смесват и да се съпоставят на произволен брой платформи, като практически не се изискват пренасяне или тестване", пише Дейвид Линтикум в статия на TechBeacon, която обяснява стойността на контейнерите за проекти за машинно обучение, "защото те съществуват в контейнери, те могат да работят в силно разпределена среда и можете да поставите тези контейнери близо до данните, които приложенията анализират. "
Linthicum продължава да говори за излагане на услуги за машинно обучение като микросервизи. Това позволява на външни приложения - базирани на контейнери или не - да се използват тези услуги по всяко време, без да се налага да местите кода вътре в приложението.
В много основен смисъл разгръщането на контейнерите е свързано с това да се направи функционалността на програмата за машинно обучение по-адаптивна - премахване на силози и ненужни връзки - и отново зависимости - които могат да осакатяват проект. За един слаб, среден проект за машинно обучение, ако отделните части на алгоритмите или приложенията или функционалностите се помещават в контейнери, е лесно да управлявате микро-управление на тези самостоятелни парчета и съответно да създавате сложни проекти за машинно обучение.