Этапы машыннага навучання ўяўляюць сабой структураваны падыход да распрацоўкі, разгортвання і падтрымання мадэляў машыннага навучання. Гэтыя этапы гарантуюць, што працэс машыннага навучання з'яўляецца сістэматычным, прайграваным і маштабуемым. У наступных раздзелах прадстаўлены вычарпальны агляд кожнай фазы з падрабязным апісаннем ключавых мерапрыемстваў і меркаванняў, звязаных з гэтым.
1. Вызначэнне праблемы і збор даных
Вызначэнне праблемы
Пачатковы этап прадугледжвае дакладнае вызначэнне праблемы, якую накіравана на вырашэнне мадэлі машыннага навучання. Гэта ўключае ў сябе разуменне бізнес-мэтаў і ператварэнне іх у праблему машыннага навучання. Напрыклад, бізнес-мэтай можа быць зніжэнне адтоку кліентаў. Адпаведная праблема машыннага навучання магла б заключацца ў тым, каб прадбачыць, якія кліенты, хутчэй за ўсё, адмовяцца, на падставе гістарычных даных.Collecte de données
Пасля таго, як праблема вызначана, наступным крокам з'яўляецца збор дадзеных, неабходных для навучання мадэлі. Збор даных можа ўключаць розныя крыніцы, такія як базы даных, API, вэб-скрапінг і наборы даных іншых вытворцаў. Якасць і колькасць сабраных даных з'яўляюцца найважнейшымі фактарамі, якія ўплываюць на прадукцыйнасць мадэлі машыннага навучання.2. Падрыхтоўка даных
ачыстка дадзеных
Неапрацаваныя даныя часта шумяць і ўтрымліваюць адсутныя або супярэчлівыя значэнні. Ачыстка дадзеных прадугледжвае апрацоўку адсутных значэнняў, выдаленне дублікатаў і выпраўленне неадпаведнасцей. На гэтым этапе звычайна выкарыстоўваюцца такія метады, як умененне, інтэрпаляцыя і выяўленне выкідаў.Пераўтварэнне дадзеных
Пераўтварэнне даных уключае такія аперацыі, як нармалізацыя, маштабаванне і кадаванне катэгарыяльных зменных. Гэтыя пераўтварэнні гарантуюць, што даныя знаходзяцца ў фармаце, прыдатным для алгарытмаў машыннага навучання. Напрыклад, нармалізацыя лікавых функцый можа дапамагчы палепшыць хуткасць збежнасці градыентных алгарытмаў.Раздзяленне даных
Набор даных звычайна дзеліцца на наборы для навучання, праверкі і тэставання. Навучальны набор выкарыстоўваецца для навучання мадэлі, набор праверкі выкарыстоўваецца для налады гіперпараметраў, а тэставы набор выкарыстоўваецца для ацэнкі прадукцыйнасці мадэлі. Агульны каэфіцыент падзелу складае 70% для навучання, 15% для праверкі і 15% для тэсціравання.3. Функцыя інжынерыі
Выбар функцый
Выбар прыкмет прадугледжвае вызначэнне найбольш рэлевантных функцый, якія спрыяюць прадказальнай здольнасці мадэлі. Для выбару функцый выкарыстоўваюцца такія метады, як карэляцыйны аналіз, узаемная інфармацыя і балы важнасці прыкмет з мадэляў на аснове дрэва.Выманне функцый
Выманне функцый прадугледжвае стварэнне новых функцый з існуючых. Гэта можа ўключаць агрэгаванне даных, стварэнне паліномных функцый або выкарыстанне прадметна-спецыфічных ведаў для стварэння значных функцый. Напрыклад, у наборы дадзеных часовых шэрагаў можна вылучыць такія функцыі, як слізгальныя сярэднія або значэнні з адставаннем.4. Выбар і навучанне мадэлі
Выбар мадэлі
Выбар правільнага алгарытму важны для поспеху праекта машыннага навучання. Выбар алгарытму залежыць ад характару праблемы, памеру і тыпу набору даных і даступных вылічальных рэсурсаў. Распаўсюджаныя алгарытмы ўключаюць лінейную рэгрэсію, дрэвы рашэнняў, апорныя вектарныя машыны і нейронавыя сеткі.Навучанне мадэлі
Навучанне па мадэлі прадугледжвае ўвядзенне навучальных даных у абраны алгарытм для вывучэння асноўных шаблонаў. Падчас гэтай фазы параметры мадэлі карэктуюцца для мінімізацыі функцыі страт, якая вымярае розніцу паміж прагназуемым і фактычным значэннямі. Для аптымізацыі звычайна выкарыстоўваюцца такія метады, як градыентны спуск.5. Гиперпараметрическая настройка
Пошук па сетцы
Пошук па сетцы ўключае ў сябе поўны пошук праз загадзя вызначаны набор гіперпараметраў, каб знайсці камбінацыю, якая дае найлепшую прадукцыйнасць у наборы праверкі. Гэты метад можа быць дарагім з пункту гледжання вылічэнняў, але эфектыўны для невялікіх і сярэдніх набораў даных.Выпадковы пошук
Выпадковы пошук прадугледжвае выпадковую выбарку гіперпараметраў з загадзя вызначанага размеркавання. Гэты метад часта больш эфектыўны, чым пошук па сетцы, паколькі ён вывучае больш шырокі спектр гіперпараметраў за меншы прамежак часу.Байесовская аптымізацыя
Байесовская аптымізацыя выкарыстоўвае імавернасныя мадэлі для выбару гіперпараметраў. Ён стварае сурагатную мадэль для апраксімацыі мэтавай функцыі і выкарыстоўвае гэтую мадэль для прыняцця рашэння аб тым, якія гіперпараметры ацэньваць далей. Гэты метад больш эфектыўны, чым сетка і выпадковы пошук, асабліва для складаных мадэляў.6. Ацэнка мадэлі
Метрыкі прадукцыйнасці
Ацэнка прадукцыйнасці мадэлі ўключае ў сябе выкарыстанне розных паказчыкаў для вымярэння яе дакладнасці, дакладнасці, запамінання, бала F1 і іншых адпаведных паказчыкаў. Выбар метрыкі залежыць ад канкрэтнай задачы. Напрыклад, у задачы класіфікацыі звычайна выкарыстоўваюцца дакладнасць і F1-паказчык, у той час як у задачы рэгрэсіі больш падыходзяць сярэднеквадратычная памылка (MSE) і R-квадрат.Перакрыжаваная праверка
Перакрыжаваная праверка ўключае ў сябе разбіццё набору даных на некалькі складкоў і навучанне мадэлі на розных падмноствах даных. Гэтая тэхніка забяспечвае больш надзейную ацэнку прадукцыйнасці мадэлі за кошт памяншэння дысперсіі, звязанай з адным падзелам тэсту цягніка. Распаўсюджаныя метады ўключаюць у сябе k-кратную перакрыжаваную праверку і стратыфікаваную перакрыжаваную праверку.7. Разгортванне мадэлі
Серыялізацыя мадэлі
Серыялізацыя мадэлі прадугледжвае захаванне навучанай мадэлі ў файл, каб потым яе можна было загрузіць і выкарыстоўваць для прагнозаў. Агульныя фарматы серыялізацыі ўключаюць pickle для мадэляў Python і ONNX для мадэляў, якія неабходна разгарнуць на розных платформах.Абслугоўванне мадэлі
Абслугоўванне мадэлі прадугледжвае яе разгортванне ў вытворчай асяроддзі, дзе яна можа атрымліваць ўваходныя даныя і вяртаць прагнозы. Гэта можна зрабіць з дапамогай REST API, мікрасэрвісаў або воблачных платформ, такіх як Google Cloud AI Platform, AWS SageMaker і Azure Machine Learning.8. Маніторынг і абслугоўванне
Маніторынг прадукцыйнасці
Пасля разгортвання мадэлі вельмі важна кантраляваць яе прадукцыйнасць у рэжыме рэальнага часу. Гэта прадугледжвае адсочванне такіх паказчыкаў, як затрымка, прапускная здольнасць і ўзровень памылак. Для гэтай мэты можна выкарыстоўваць такія інструменты маніторынгу, як Prometheus, Grafana і ўласныя воблачныя рашэнні.Мадэль перападрыхтоўкі
З часам прадукцыйнасць мадэлі можа пагоршыцца з-за змяненняў у базавым размеркаванні даных, з'ява, вядомая як дрэйф канцэпцыі. Рэгулярнае перанавучанне мадэлі новымі дадзенымі дапамагае падтрымліваць яе дакладнасць і рэлевантнасць. Для спрашчэння гэтага працэсу можна наладзіць аўтаматызаваныя канвееры.A/B тэставання
Тэставанне A/B прадугледжвае разгортванне некалькіх версій мадэлі і параўнанне іх прадукцыйнасці для вызначэння лепшай. Гэтая тэхніка дапамагае прымаць рашэнні аб абнаўленнях і паляпшэннях мадэляў на аснове даных.9. Дакументаванне і справаздачнасць
Мадэль дакументацыі
Поўная дакументацыя мадэлі, уключаючы яе архітэктуру, гіперпараметры, працэс навучання і паказчыкі прадукцыйнасці, важная для ўзнаўляльнасці і сумеснай працы. Для стварэння падрабязнай дакументацыі можна выкарыстоўваць такія інструменты, як Jupyter Notebooks, Sphinx і MkDocs.Справаздачнасць
Зацікаўленым бакам трэба паведамляць рэгулярныя справаздачы аб прадукцыйнасці мадэлі, абнаўленнях і любых праблемах, якія ўзніклі. Гэта забяспечвае празрыстасць і спрыяе прыняццю абгрунтаваных рашэнняў.Прыклад: прагназаванне адтоку кліентаў
Каб праілюстраваць этапы машыннага навучання, разгледзім прыклад прагназавання адтоку кліентаў для тэлекамунікацыйнай кампаніі.
1. Вызначэнне праблемы: Мэта бізнесу - паменшыць адток кліентаў. Праблема машыннага навучання заключаецца ў тым, каб прадбачыць, якія кліенты, хутчэй за ўсё, сыдуць, на аснове іх мадэляў выкарыстання, дэмаграфічных дадзеных і гісторыі абслугоўвання.
2. Collecte de données : Дадзеныя збіраюцца з розных крыніц, уключаючы базы даных кліентаў, журналы выкарыстання і запісы абслугоўвання кліентаў.
3. Падрыхтоўка дадзеных: Даныя ачышчаюцца для апрацоўкі адсутных значэнняў і неадпаведнасцяў. Такія функцыі, як штомесячнае выкарыстанне, валоданне кліентам і скаргі на абслугоўванне, нармалізуюцца і кадзіруюцца.
4. Інжынірынг функцый: Адпаведныя функцыі выбіраюцца на аснове іх карэляцыі з адтокам. Новыя функцыі, такія як сярэдняя працягласць размовы і частата скаргаў на абслугоўванне, вынятыя.
5. Выбар мадэлі і навучанне: Класіфікатар дрэва рашэнняў абраны для яго інтэрпрэтацыі. Мадэль навучаецца на навучальным наборы даных, каб даведацца пра заканамернасці, звязаныя з адтокам.
6. Настройка гіперпараметраў: Пошук па сетцы выкарыстоўваецца для пошуку аптымальных гіперпараметраў для дрэва рашэнняў, такіх як максімальная глыбіня і мінімальныя выбаркі на ліст.
7. Ацэнка мадэлі: Прадукцыйнасць мадэлі ацэньваецца з дапамогай дакладнасці, дакладнасці, запамінання і бала F1. Перакрыжаваная праверка праводзіцца для забеспячэння надзейнасці.
8. Разгортванне мадэлі: Навучаная мадэль серыялізуецца і разгортваецца на воблачнай платформе, дзе можа атрымліваць ўваходныя даныя і вяртаць прагнозы.
9. Маніторынг і абслугоўванне: Прадукцыйнасць мадэлі кантралюецца ў рэжыме рэальнага часу. Запланавана рэгулярнае перанавучанне для ўключэння новых даных і захавання дакладнасці. Тэставанне A/B праводзіцца для параўнання розных версій мадэляў.
10. Дакументацыя і справаздачнасць: Створана падрабязная дакументацыя мадэлі, уключаючы яе архітэктуру, працэс навучання і паказчыкі прадукцыйнасці. Рэгулярныя справаздачы ствараюцца і перадаюцца зацікаўленым бакам.
Структураваны падыход, выкладзены на гэтых этапах, забяспечвае сістэматычную распрацоўку, эфектыўнае разгортванне і эфектыўнае абслугоўванне мадэлі машыннага навучання, што ў канчатковым выніку прыводзіць да лепшых бізнес-вынікаў.
Іншыя апошнія пытанні і адказы адносна EITC/AI/GCML Google Cloud Machine Learning:
- Якія паказчыкі ацэнкі прадукцыйнасці мадэлі?
- Што такое лінейная рэгрэсія?
- Ці можна аб'яднаць розныя мадэлі ML і стварыць майстар ІІ?
- Якія алгарытмы найбольш часта выкарыстоўваюцца ў машынным навучанні?
- Як стварыць версію мадэлі?
- Як прымяніць 7 этапаў ML у кантэксце прыкладу?
- Як машыннае навучанне можна прымяніць да даных аб дазволах на будаўніцтва?
- Чаму AutoML Tables былі спынены і што іх замяняе?
- У чым заключаецца задача інтэрпрэтацыі дудлаў, намаляваных гульцамі, у кантэксце ІІ?
- Калі ў матэрыялах для чытання гаворыцца пра «выбар правільнага алгарытму», ці азначае гэта, што практычна ўсе магчымыя алгарытмы ўжо існуюць? Як мы ведаем, што алгарытм з'яўляецца "правільным" для канкрэтнай праблемы?
Больш пытанняў і адказаў глядзіце ў EITC/AI/GCML Google Cloud Machine Learning