Uplatnenie siedmich krokov strojového učenia poskytuje štruktúrovaný prístup k vývoju modelov strojového učenia a zabezpečuje systematický proces, ktorý možno sledovať od definície problému až po nasadenie. Tento rámec je výhodný pre začiatočníkov aj skúsených odborníkov, pretože pomáha pri organizácii pracovného postupu a zabezpečuje, aby sa neprehliadol žiadny kritický krok. Tu objasním tieto kroky v kontexte praktického príkladu: predpovedanie cien bývania pomocou nástrojov Google Cloud Machine Learning.
Krok 1: Definujte problém
Prvým krokom v akomkoľvek projekte strojového učenia je jasne definovať problém, ktorý sa snažíte vyriešiť. To zahŕňa pochopenie obchodného alebo praktického problému a jeho preloženie do problému strojového učenia. V našom príklade je obchodným problémom predpovedanie cien domov v konkrétnom regióne s cieľom pomôcť realitným maklérom a potenciálnym kupcom robiť informované rozhodnutia. Problém strojového učenia možno zarámovať ako kontrolovaný regresný problém, kde cieľom je predpovedať kontinuálnu cieľovú premennú, cenu domu, na základe rôznych funkcií, ako je umiestnenie, veľkosť, počet spální a ďalšie relevantné atribúty.
Krok 2: Zhromaždite a pripravte údaje
Zber a príprava údajov je kritickou fázou, ktorá zahŕňa zhromažďovanie relevantných údajov, ktoré možno použiť na trénovanie modelu. V našom príklade predpovede cien bývania by sa údaje mohli zbierať z výpisov nehnuteľností, verejných záznamov alebo databáz bývania. Súbor údajov by mal obsahovať celý rad funkcií, o ktorých sa predpokladá, že ovplyvňujú ceny domov, ako sú rozloha, počet spální a kúpeľní, hodnotenie okolia, blízkosť vybavenia a historické údaje o predaji.
Po zhromaždení je potrebné údaje predspracovať. To zahŕňa čistenie údajov spracovaním chýbajúcich hodnôt, odstránením duplikátov a opravou akýchkoľvek nezrovnalostí. Napríklad chýbajúce hodnoty v súbore údajov možno pripísať pomocou štatistických metód alebo znalostí domény. Okrem toho môže byť potrebné zakódovať kategorické premenné, ako sú napríklad názvy susedstiev, do číselných formátov pomocou techník, ako je rýchle kódovanie.
Krok 3: Vyberte si model
Výber modelu je ovplyvnený typom problému a povahou údajov. V prípade regresného problému, akým je predikcia ceny bývania, by sa mohli zvážiť modely ako lineárna regresia, rozhodovacie stromy alebo zložitejšie algoritmy, ako sú náhodné lesy a stroje na zvýšenie gradientu. V službe Google Cloud Machine Learning máte prístup k TensorFlow a ďalším knižniciam, ktoré uľahčujú implementáciu týchto modelov.
Ako základ môže slúžiť jednoduchý lineárny regresný model. Avšak vzhľadom na zložitosť a nelinearitu, ktorá sa často vyskytuje v údajoch z reálneho sveta, môžu byť vhodnejšie sofistikovanejšie modely ako XGBoost alebo DNRegressor od TensorFlow. Výber modelu by sa mal riadiť výkonnosťou overovacích súborov údajov a schopnosťou dobre zovšeobecniť na neviditeľné údaje.
Krok 4: Trénujte model
Tréning modelu zahŕňa vloženie pripravených údajov do zvoleného algoritmu, aby sa naučili základné vzorce. Tento krok vyžaduje rozdelenie údajov do trénovacích a validačných sád, čo umožňuje modelu učiť sa z jednej podmnožiny a vyhodnocovať na inej. V službe Google Cloud to možno efektívne spravovať pomocou služieb, ako je platforma Google Cloud AI Platform, ktorá poskytuje škálovateľné zdroje na školenie modelov.
Počas tréningu môže byť potrebné vyladiť hyperparametre modelu, aby sa optimalizoval výkon. Napríklad v modeli rozhodovacieho stromu môžu parametre ako hĺbka stromu a minimálny počet vzoriek potrebných na rozdelenie uzla významne ovplyvniť presnosť modelu a schopnosť zovšeobecnenia. Na nájdenie optimálnych nastavení hyperparametrov možno použiť techniky ako vyhľadávanie v mriežke alebo náhodné vyhľadávanie.
Krok 5: Vyhodnoťte model
Hodnotenie je dôležitým krokom na posúdenie výkonnosti trénovaného modelu. To zahŕňa použitie metrík vhodných pre daný typ problému. V prípade regresných problémov medzi bežné metriky patrí stredná absolútna chyba (MAE), stredná štvorcová chyba (MSE) a stredná štvorcová chyba (RMSE). Tieto metriky poskytujú prehľad o presnosti modelu a rozsahu chýb v predpovediach.
V našom príklade predikcie cien bývania by sa po natrénovaní modelu vyhodnotil na overovacej sade, aby sa zaistilo, že funguje dobre na neviditeľných údajoch. Platforma umelej inteligencie Google Cloud poskytuje nástroje na sledovanie týchto metrík a vizualizáciu výkonu modelu, čo pomáha pochopiť, ako bude model pravdepodobne fungovať v reálnych scenároch.
Krok 6: Vylaďte model
Ladenie modelu je iteratívny proces zameraný na zlepšenie výkonu modelu. Tento krok môže zahŕňať úpravu hyperparametrov, vyskúšanie rôznych algoritmov alebo úpravu sady funkcií. Napríklad, ak počiatočný model nefunguje uspokojivo, inžinierstvo prvkov možno prehodnotiť tak, aby zahŕňalo interakčné termíny alebo polynomické prvky, ktoré zachytávajú nelineárne vzťahy.
V službe Google Cloud je možné ladenie hyperparametrov automatizovať pomocou funkcie Hyperparameter Tuning platformy Cloud AI, ktorá efektívne vyhľadáva priestor hyperparametrov, aby našla najlepšiu kombináciu pre model. To môže výrazne zvýšiť výkon modelu bez manuálneho zásahu.
Krok 7: Nasaďte model
Nasadením je natrénovaný model dostupný pre použitie v reálnych aplikáciách. Tento krok zahŕňa nastavenie prostredia, kde model môže prijímať vstupné údaje, vytvárať predpovede a vracať výsledky používateľom alebo systémom. Google Cloud ponúka niekoľko možností nasadenia vrátane AI Platform Prediction, ktorá umožňuje nasadenie modelov ako RESTful API.
V príklade predpovede ceny bývania by sa nasadený model mohol integrovať do aplikácie s nehnuteľnosťami, kde používatelia zadávajú vlastnosti domu a prijímajú cenové predpovede. Nasadenie zahŕňa aj monitorovanie výkonu modelu vo výrobe, aby sa zabezpečilo, že bude pokračovať v poskytovaní presných predpovedí a podľa potreby aktualizuje model, keď budú k dispozícii nové údaje.
Príklad kontextu
Zvážte realitnú spoločnosť, ktorej cieľom je zlepšiť proces oceňovania nehnuteľností pomocou strojového učenia. Dodržaním siedmich načrtnutých krokov môže spoločnosť systematicky vyvinúť robustný model strojového učenia na predpovedanie cien nehnuteľností. Spočiatku definujú problém identifikáciou potreby presného ocenenia nehnuteľností. Potom zhromažďujú údaje z viacerých zdrojov vrátane historických záznamov o predaji a zoznamov nehnuteľností, čím zabezpečujú komplexný súbor údajov, ktorý odráža trendy na trhu.
Po predspracovaní údajov na spracovanie chýbajúcich hodnôt a kódovanie kategorických premenných si spoločnosť vyberie model zosilňovania gradientu vďaka svojej schopnosti zvládnuť zložité vzťahy a interakcie medzi funkciami. Trénujú model pomocou platformy umelej inteligencie Google Cloud, pričom využívajú jeho škálovateľnú infraštruktúru na efektívne spracovanie veľkých súborov údajov.
Model je hodnotený pomocou RMSE, pričom sa odhaľujú oblasti na zlepšenie. Vykonaním ladenia hyperparametrov a experimentovaním s ďalšími funkciami odvodenými zo znalostí domény spoločnosť zvyšuje predikčnú presnosť modelu. Nakoniec je model nasadený ako API, čo umožňuje integráciu do existujúcich systémov spoločnosti, kde používateľom poskytuje odhady cien v reálnom čase, čím zlepšuje rozhodovacie procesy a spokojnosť zákazníkov.
Ďalšie nedávne otázky a odpovede týkajúce sa EITC/AI/GCML Google Cloud Machine Learning:
- Aké sú kritériá na výber správneho algoritmu pre daný problém?
- Ak niekto používa model Google a trénuje ho na vlastnej inštancii, uchováva Google vylepšenia získané z údajov o školení?
- Ako sa dá vedieť, ktorý model ML sa má použiť, ešte pred jeho trénovaním?
- Čo je to regresná úloha?
- Ako je možné prechádzať medzi tabuľkami Vertex AI a AutoML?
- Je možné použiť Kaggle na nahrávanie finančných údajov a vykonávanie štatistických analýz a prognóz pomocou ekonometrických modelov, ako sú R-squared, ARIMA alebo GARCH?
- Môže sa strojové učenie použiť na predpovedanie rizika koronárnej choroby srdca?
- Aké sú skutočné zmeny v dôsledku zmeny značky Google Cloud Machine Learning na Vertex AI?
- Aké sú metriky hodnotenia výkonnosti modelu?
- Čo je lineárna regresia?
Ďalšie otázky a odpovede nájdete v EITC/AI/GCML Google Cloud Machine Learning