Бірнеше жаһандық секторлар машиналық оқытуға (ML) көбірек инвестиция сала бастады.
ML модельдерін бастапқыда мамандар топтары іске қосып, басқара алады, бірақ ең үлкен кедергілердің бірі алынған білімді келесі модельге процестерді кеңейту үшін көшіру болып табылады.
Модельдің өмірлік циклін басқаруға қатысты процестерді жақсарту және стандарттау үшін MLOps әдістерін машиналық оқыту үлгілерін жасайтын командалар көбірек пайдаланады.
Бүгінгі таңда қол жетімді кейбір ең жақсы MLOps құралдары мен платформалары туралы және олар құрал, әзірлеуші және процедуралық тұрғыдан машиналық үйренуді қалай жеңілдететіні туралы көбірек білу үшін оқуды жалғастырыңыз.
MLOps дегеніміз не?
Машиналық оқыту үлгілеріне арналған саясаттарды, нормаларды және үздік тәжірибелерді жасау әдісі «машинада оқыту операциялары» немесе «MLOps» ретінде белгілі.
MLOps ML әзірлеудің бүкіл өмірлік цикліне кепілдік беруді мақсат етеді - тұжырымдамадан бастап орналастыруға дейін - оған стратегиясыз көп уақыт пен ресурстарды жұмсамай, ең жақсы нәтижелерге қол жеткізу үшін мұқият құжатталған және басқарылады.
MLOps мақсаты машиналық оқытуды дамытуды ML операторлары мен әзірлеушілері үшін масштабталатын етіп жасау, сондай-ақ ML үлгілерінің сапасы мен қауіпсіздігін арттыру үшін ең жақсы тәжірибелерді кодтау болып табылады.
Кейбіреулер MLOps-ті «Машиналық оқытуға арналған DevOps» деп атайды, өйткені ол DevOps принциптерін технологиялық дамудың мамандандырылған саласына сәтті қолданады.
Бұл MLOps туралы ойлаудың пайдалы әдісі, өйткені ол DevOps сияқты топтар мен құралдар арасында білім алмасуға, ынтымақтастыққа және үздік тәжірибелерге баса назар аударады.
MLOps әзірлеушілерге, деректер ғалымдарына және операциялық топтарға ынтымақтасу және соның нәтижесінде ең қуатты ML үлгілерін шығару үшін негіз береді.
Неліктен MLOps құралдарын пайдалану керек?
MLOps құралдары ML командасы үшін кең ауқымды міндеттерді орындай алады, бірақ олар жиі екі топқа бөлінеді: платформаны басқару және жеке құрамдастарды басқару.
Кейбір MLOps өнімдері деректер немесе метадеректерді басқару сияқты бір негізгі функцияға ғана бағытталғанымен, басқа құралдар жан-жақты стратегияны қабылдайды және ML өмірлік циклінің бірнеше аспектілерін басқару үшін MLOps платформасын қамтамасыз етеді.
Маман немесе кеңірек құрал іздесеңіз де, командаңызға осы ML әзірлеу аймақтарын басқаруға көмектесетін MLOps шешімдерін іздеңіз:
- Мәліметтерді өңдеу
- Дизайн және модельдеу
- Жобаларды және жұмыс орнын басқару
- ML үлгісін қолдану және үздіксіз техникалық қызмет көрсету
- Әдетте толық сервистік MLOps платформалары ұсынатын өмірлік циклді басынан аяғына дейін басқару.
MLOps құралдары
1. MLFlow
Машинаны оқытудың өмірлік циклі ашық бастапқы платформа MLflow арқылы басқарылады және орталық үлгіні тіркеуді, орналастыруды және экспериментті қамтиды.
MLflow-ты кез келген өлшемді команда жеке және ұжымдық түрде пайдалана алады. Кітапханалардың құралға қатысы жоқ.
Оны кез келген бағдарламалау тілі мен машиналық оқыту кітапханасы пайдалана алады.
Машиналық оқыту қолданбаларын оқытуды, орналастыруды және басқаруды жеңілдету үшін MLFlow бірқатар машиналық оқыту құрылымдарымен, соның ішінде TensorFlow және Питорх.
Оған қоса, MLflow кез келген бар машиналық оқыту бағдарламаларына немесе кітапханаларға қосылуы мүмкін оңай қолданылатын API интерфейстерін ұсынады.
MLflow тәжірибелерді бақылауды және жоспарлауды жеңілдететін төрт негізгі мүмкіндікке ие:
- MLflow Tracking – машиналық оқыту кодының параметрлерін, нұсқаларын, метрикасын және артефактілерін тіркеуге арналған API және UI, сондай-ақ нәтижелерді кейіннен көрсету және қарама-қарсы қою үшін
- MLflow жобалары – өндіріске жіберу немесе басқа деректер ғалымдарымен бөлісу үшін машинаны оқыту кодын қайта пайдалануға болатын, қайталанатын пішімде орау.
- MLflow үлгілері – әртүрлі ML кітапханаларынан үлгілерге қызмет көрсету және шығару жүйелеріне үлгілерді қолдау және қолдану
- MLflow үлгі тізілімі – үлгі нұсқаларын, кезең ауысуларын және аннотацияларды қоса алғанда, MLflow үлгісінің бүкіл қызмет ету мерзімін бірлесіп басқаруға мүмкіндік беретін орталық үлгі қоймасы.
2. Кубефлоу
Kubernetes үшін ML құралдар жинағы Kubeflow деп аталады. Docker контейнерлерін орау және басқару, оларға техникалық қызмет көрсетуге көмектеседі машиналық оқыту жүйелері.
Оркестрацияны және машиналық оқытудың жұмыс процестерін орналастыруды жеңілдету арқылы ол машиналық оқыту үлгілерінің ауқымдылығына ықпал етеді.
Бұл әр түрлі ML қажеттіліктеріне бейімделген қосымша құралдар мен құрылымдардың мұқият таңдалған тобын қамтитын ашық бастапқы жоба.
Ұзақ ML оқыту тапсырмаларын, қолмен эксперимент жасау, қайталану және DevOps қиындықтарын Kubeflow Pipelines көмегімен өңдеуге болады.
Машинаны оқытудың бірнеше кезеңдері үшін, соның ішінде оқыту, құбырларды әзірлеу және техникалық қызмет көрсету Юпитер дәптері, Kubeflow мамандандырылған қызметтер мен интеграцияны ұсынады.
Бұл AI жұмыс жүктемелерінің қызмет ету мерзімін басқаруды және бақылауды, сондай-ақ машиналық оқыту (ML) үлгілері мен деректер құбырларын Kubernetes кластерлеріне орналастыруды жеңілдетеді.
Ол ұсынады:
- Жүйемен әрекеттесу үшін SDK пайдалануға арналған ноутбуктер
- іске қосуларды, тапсырмаларды және эксперименттерді басқаруға және бақылауға арналған пайдаланушы интерфейсі (UI).
- Әр жолы қайта құруды қажет етпей, сонымен қатар құрамдас бөліктер мен құбырларды қайта пайдалануды қажет етпей, түпкілікті шешімдерді жылдам жобалау.
- Kubeflow негізгі құрамдас бөлігі немесе дербес орнату ретінде Kubeflow Pipelines ұсынылады.
3. Деректер нұсқасын басқару
Машиналық оқыту жобалары үшін ашық бастапқы нұсқаны басқару шешімі DVC немесе Деректер нұсқасын басқару деп аталады.
Қай тілді таңдасаңыз да, бұл құбырды анықтауға көмектесетін эксперименттік құрал.
DVC ML үлгісінің бұрынғы нұсқасына қатысты мәселені тапқан кезде уақытты үнемдеуге көмектесу үшін кодты, деректер нұсқасын және қайталану мүмкіндігін пайдаланады.
Оған қоса, үлгіні үйрету және оны топ мүшелеріне тарату үшін DVC құбырларын пайдалануға болады. Үлкен деректерді ұйымдастыру және нұсқалау DVC арқылы өңделеді және деректерді оңай қол жетімді түрде сақтауға болады.
Ол экспериментті бақылаудың кейбір (шектелген) мүмкіндіктерін қамтығанымен, ол негізінен деректер мен құбыр нұсқасын жасауға және басқаруға бағытталған.
Ол ұсынады:
- Бұл сақтау агностикалық болып табылады, сондықтан сақтаудың әртүрлі түрлерін қолдануға болады.
- Ол сондай-ақ бақылау статистикасын қамтамасыз етеді.
- ML кезеңдерін DAG-ға біріктірудің және бүкіл құбырды басынан аяғына дейін іске қосудың алдын ала құрастырылған құралы
- Әрбір ML үлгісінің бүкіл дамуын оның бүкіл коды мен деректердің шығу тегін пайдалану арқылы бақылауға болады.
- Эксперимент үшін бастапқы конфигурацияны, кіріс деректерін және бағдарлама кодын адал сақтау арқылы қайталану мүмкіндігі.
4. Пахидерма
Pachyderm – DVC-ге ұқсас машиналық оқытуға және деректер ғылымына арналған нұсқаларды басқару бағдарламасы.
Оған қоса, ол қолданылғандықтан Докер және Кубернетес, ол Machine Learning қолданбаларын кез келген бұлттық платформада орындап, орналастыра алады.
Pachyderm машиналық оқыту үлгісіне тұтынылатын деректердің әрбір бөлігін бақылауға және нұсқалауға болатындығына кепілдік береді.
Ол машиналық оқыту үлгілерін жасау, тарату, басқару және бақылау үшін қолданылады. Үлгі тізілімі, үлгіні басқару жүйесі және CLI құралдар жинағы барлығы қамтылған.
Әзірлеушілер қайталануды қамтамасыз ететін Pachyderm деректер қорын пайдалана отырып, машиналық оқытудың өмірлік циклін автоматтандырып, кеңейте алады.
Ол деректерді басқарудың қатаң стандарттарын қолдайды, деректерді өңдеу және сақтау шығындарын төмендетеді және бизнеске деректер туралы ғылым бастамаларын нарыққа тезірек шығаруға көмектеседі.
5. Поляксон
Polyaxon платформасын пайдалана отырып, машиналық оқыту жобалары мен терең оқыту қосымшаларын олардың бүкіл өмірлік циклі бойына көшіруге және басқаруға болады.
Поляксон құралды орналастыруға және басқаруға қабілетті және оны кез келген деректер орталығына немесе бұлттық провайдерге орналастыруға болады. Torch, Tensorflow және MXNet сияқты ең танымал терең оқыту шеңберлерінің барлығын қолдайды.
Оркестрацияға келетін болсақ, Polyaxon CLI, бақылау тақтасы, SDK немесе REST API арқылы тапсырмалар мен сынақтарды жоспарлау арқылы кластеріңізді барынша пайдалануға мүмкіндік береді.
Ол ұсынады:
- Сіз дәл қазір ашық бастапқы нұсқаны пайдалана аласыз, бірақ ол корпоративтік таңдауларды да қамтиды.
- Ол толық өмірлік циклді, соның ішінде орындау оркестрін қамтитын болса да, ол әлдеқайда көп нәрсеге қабілетті.
- Техникалық анықтамалық құжаттармен, жұмысқа кірісу бойынша нұсқаулықтармен, оқу материалдарымен, нұсқаулықтармен, оқулықтармен, өзгерту журналдарымен және т.б. бұл өте жақсы құжатталған платформа.
- Эксперименттік ақпарат бақылау тақтасының көмегімен әрбір оңтайландыру тәжірибесін бақылауға, қадағалауға және бағалауға болады.
6. құйрықты жұлдыз
Comet – эксперименттер мен модельдерді қадағалайтын, қарама-қарсы қоятын, түсіндіретін және жетілдіретін мета машиналық оқытуға арналған платформа.
Барлық эксперименттеріңізді бір жерде көруге және салыстыруға болады.
Ол кез келген машинаны оқыту тапсырмасы үшін, код орындалатын кез келген жерде және кез келген машиналық оқыту кітапханасында жұмыс істейді.
Комета топтарға, жеке тұлғаларға, академиялық мекемелерге, кәсіпорындарға және эксперименттерді жылдам көргісі келетін, жұмысты оңтайландырғысы келетін және эксперименттер жүргізгісі келетін кез келген адамға жарамды.
Деректер ғалымдары мен топтар Comet өздігінен орналастырылған және бұлтқа негізделген мета-машина оқу платформасын пайдаланып эксперименттер мен үлгілерді бақылай алады, нақтылай алады, жетілдіре және салыстыра алады.
Ол ұсынады:
- Топ мүшелеріне тапсырмаларды ортақ пайдалану үшін көптеген мүмкіндіктер бар.
- Оның басқа технологиялармен байланыстыруды жеңілдететін бірнеше интеграциясы бар
- Қазіргі ML кітапханаларымен жақсы жұмыс істейді
- Пайдаланушыны басқаруға қамқорлық жасайды
- Эксперименттерді салыстыру, соның ішінде кодты, гиперпараметрлерді, көрсеткіштерді, болжамдарды, тәуелділіктерді және жүйелік көрсеткіштерді салыстыру қосылады.
- Үлгілерді визуализациялауға мүмкіндік беретін көру, аудио, мәтін және кестелік деректер үшін ерекше модульдерді қамтамасыз етеді.
7. Оптуна
Optuna - бұл машиналық оқытуға да, терең оқытуға да, басқа салаларға да қолдануға болатын автономды гиперпараметрлерді оңтайландыру жүйесі.
Ол таңдауға (немесе байланыстыруға) болатын әртүрлі алдыңғы қатарлы алгоритмдерді қамтиды, жаттығуларды көптеген компьютерлерге таратуды өте жеңілдетеді және нәтижелердің тартымды визуализациясын ұсынады.
PyTorch, TensorFlow, Keras, FastAI, sci-kit-learn, LightGBM және XGBoost сияқты танымал машиналық оқыту кітапханалары онымен біріктірілген.
Ол перспективалы болып көрінбейтін үлгілерді жылдам азайту арқылы тұтынушыларға нәтижелерді тезірек алуға мүмкіндік беретін алдыңғы қатарлы алгоритмдерді ұсынады.
Python негізіндегі алгоритмдерді пайдалана отырып, ол идеалды гиперпараметрлерді автоматты түрде іздейді. Optuna бастапқы кодты өзгертпестен көптеген ағындар бойынша параллельді гиперпараметрлерді іздеуді ынталандырады.
Ол ұсынады:
- Ол кластерде, сондай-ақ бір компьютерде (көп процесс) (көп түйінді) бөлінген оқытуды қолдайды.
- Ол конвергенцияны жылдамдату үшін бірнеше кесу әдістерін қолдайды (және аз есептеуді пайдалану)
- Оның кесінді сызбасы, контурлық сызба және параллель координаттар сияқты әртүрлі күшті визуализациялары бар.
8. Кедро
Kedro - деректер ғылымының жобалары үшін жаңартылуы және сақталуы мүмкін код жазуға арналған тегін Python негізі.
Ол бағдарламалық жасақтама инженериясындағы ең жақсы тәжірибелерден машиналық оқыту кодына идеяларды әкеледі. Python - бұл жұмыс үрдісін басқару құралының негізі.
ML процестерін қарапайым және дәлірек ету үшін сіз қайталанатын, қолдау көрсетілетін және модульдік жұмыс үрдістерін жасай аласыз.
Kedro модульдік, жауапкершілікті бөлу және машиналық оқыту ортасына нұсқа жасау сияқты бағдарламалық жасақтама жасау принциптерін біріктіреді.
Cookiecutter Data Science негізінде ол жалпы, бейімделетін жоба құрылымын ұсынады.
Бірнеше файлдық жүйелер мен файл пішімдері бойынша деректерді сақтау және жүктеу үшін пайдаланылатын бірнеше қарапайым деректер қосқыштары деректер каталогымен басқарылады. Ол машиналық оқыту жобаларын тиімдірек етеді және деректер құбырын құруды жеңілдетеді.
Ол ұсынады:
- Kedro дисперсті немесе жалғыз машинаны орналастыруға мүмкіндік береді.
- Құбыр абстракциясы арқылы Python коды мен жұмыс үрдісінің визуализациясы арасындағы тәуелділіктерді автоматтандыруға болады.
- Модульдік, қайта пайдалануға болатын кодты пайдалану арқылы бұл технология әр түрлі деңгейлерде топтық ынтымақтастықты жеңілдетеді және кодтау ортасында өнімділікті арттырады.
- Негізгі мақсат - деректер ғылымын қолдауға болатын бағдарламалауды жазу арқылы Jupyter жазу кітапшаларының, бір реттік сценарийлердің және желім кодының кемшіліктерін жою.
9. BentoML
BentoML көмегімен машиналық оқытудың API соңғы нүктелерін құру оңайырақ.
Ол үйренген машиналық оқыту үлгілерін өндіріске көшіру үшін әдеттегі, бірақ ықшамдалған инфрақұрылымды қамтамасыз етеді.
Ол кез келген ML құрылымын пайдалана отырып, оларды түсіндіре отырып, өндіріс параметрінде пайдалану үшін үйренген үлгілерді бумалауға мүмкіндік береді. Офлайн пакеттік қызмет көрсетуге де, онлайн API қызмет көрсетуге де қолдау көрсетіледі.
Жоғары өнімді үлгі сервері және икемді жұмыс процесі BentoML мүмкіндіктері болып табылады.
Сонымен қатар, сервер адаптивті микро-топтаманы ұсынады. Үлгілерді ұйымдастыруға және орналастыру процедураларын қадағалауға арналған бірыңғай тәсіл UI бақылау тақтасы арқылы қамтамасыз етілген.
Жұмыс механизмі модульдік және конфигурацияны қайта пайдалануға болатындықтан, сервердің тоқтап қалу уақыты болмайды. Бұл ML үлгілерін қамтамасыз етуге, ұйымдастыруға және қолдануға арналған икемді платформа.
Ол ұсынады:
- Оның бейімделгіш модульдік дизайны бар.
- Ол бірнеше платформаларда орналастыруға мүмкіндік береді.
- Ол көлденең масштабтауды автоматты түрде өңдей алмайды.
- Ол бір үлгі пішімін, үлгіні басқаруды, үлгі орауын және жоғары өнімді үлгі қызмет көрсетуін қосады.
10. Селдон
Деректер ғалымдары ашық бастапқы Seldon Core құрылымын пайдаланып, Kubernetes жүйесінде машиналық оқыту үлгілері мен эксперименттерін жасай, қолдана және басқара алады.
TensorFlow, sci-kit-learn, Spark, R, Java және H2O - бұл қолдау көрсететін құралдар жинағының бірнешеуі ғана.
Ол сондай-ақ Kubeflow және RedHat OpenShift интерфейсімен жұмыс істейді. Seldon ядросы машиналық оқыту үлгілерін (ML үлгілері) немесе тілдік орауыштарды (Python, Java, т.б. тілдер) өндірістік REST/GRPC микросервистеріне түрлендіреді.
Машиналық оқыту процестерін жақсартуға арналған ең жақсы MLOps құралдарының бірі - бұл.
Seldon Core көмегімен ML үлгілерін контейнерлеу және ыңғайлылық пен қауіпсіздікті тексеру оңай.
Ол ұсынады:
- Модельді орналастыруды канарларды орналастыру сияқты бірнеше баламалармен оңайлатуға болады.
- Неліктен нақты болжамдар жасалғанын түсіну үшін үлгі түсіндіргіштерін пайдаланыңыз.
- Мәселелер туындаған кезде ескерту жүйесін пайдаланып өндіріс үлгілерін қадағалаңыз.
қорытынды
MLOps машиналық оқыту операцияларын жақсартуға көмектеседі. MLOps қолдануды жылдамдатады, деректерді жинауды және жөндеуді жеңілдетеді және инженерлер мен деректер ғалымдары арасындағы ынтымақтастықты жақсартады.
Сіздің қажеттіліктеріңізге сәйкес келетін MLOps құралын таңдау үшін бұл мақалада 10 танымал MLOps шешімдері қарастырылды, олардың көпшілігі ашық бастапқы болып табылады.
пікір қалдыру