Որպես տվյալների գիտնականներ կամ մեքենայական ուսուցման ինժեներներ, երբեմն մենք ցանկանում ենք ավտոմատացնել մեր որոշ առաջադրանքներ: Այստեղ է մտնում AutoML-ը: AutoML-ը պարզապես գործընթաց է, որն անցնում է ML գործընթացի սկզբից մինչև վերջ և պատրաստ է դարձնում մոդելի արտադրությունը:

MLBox-ը բաց կոդով գործիք է, որը կարող է օգտագործվել AutoML-ի համար: Այն կարող է օգնել մշակման, ֆորմատավորման, մաքրման, դասակարգման և ռեգրեսիայի համար SOTA մոդելների կառուցման, բարձրաչափ տարածության հիպերպարամետրի ճշգրիտ օպտիմիզացման և առանձնահատկությունների ճշգրիտ ընտրության հարցում: Եկեք ուսումնասիրենք, թե ինչպես կարող ենք օգտագործել MLBox-ը AutoML-ի համար:

Տեղադրում

Եթե ​​օգտվում եք macOS-ից, նախ պետք է տեղադրել OpenMP-ը, նախքան MLBox-ն աշխատեցնելը: Դա անելու համար եկեք օգտագործենք ստորև նշված հրամանը.

Մենք ունենք MLbox-ը տեղադրելու երկու տարբերակ, նախ՝ կարող ենք օգտագործել pip կամ տեղադրել անմիջապես GitHub ռեպո-ից, pip-ի միջոցով տեղադրելու համար օգտագործեք ստորև նշված հրամանը:

Իսկ GitHub-ի միջոցով տեղադրելու համար մենք նախ պետք է կլոնավորենք ռեպո:

Դրանից հետո հաջորդ բանը թղթապանակ մտնելն է:

Եվ հետո տեղադրեք՝ օգտագործելով ստորև նշված հրամանը:

Մենք կկառուցենք սնկերի դասակարգման պարզ մոդել՝ օգտագործելով այս UCI տվյալների հավաքածուն, որը գտնվել է Kaggle-ում, ցույց տալու համար, թե ինչպես կատարել AutolML MLBox-ով:

Տվյալների նախնական մշակում

Նախ, եկեք ներմուծենք MLBox-ը և այն հնարավորությունները, որոնք մենք կօգտագործենք:

Հիմա եկեք ներմուծենք մեր տվյալների բազան:

MLBox-ն ունի այն, ինչ կոչվում էընթերցողի դաս և օգնում է պատրաստել տվյալները, ինչպիսիք են սյունակների տեսակների եզրակացությունը, անանուն սյունակների ջնջումը, կրկնօրինակների հեռացումը և այլն, ինչպես նաև պատրաստում է գնացքի և թեստի բաժանման տվյալները: Մենք պատրաստվում ենք օգտագործել ընթերցողի հնարավորությունը մեր տվյալները պատրաստելու համար:

Երբ ընթերցողի ֆունկցիան ավարտված է, այն ստեղծում է պահում կոչվող թղթապանակ, որտեղ այն պահում է թիրախային կոդավորիչը հետագա օգտագործման համար, հիմա եկեք հայացք գցենք նոր տվյալներին:

Հեռացումներ

Այս հատկանիշը MLBox-ի առանձնահատկություններից մեկն է, որն այն անում է ավտոմատ կերպով հայտնաբերում է բաշխումը, որը էապես տարբերվում է գնացքի և թեստային հավաքածուի միջև, և այնուհետև հեռացնում դրանք՝ տվյալների բազայում կողմնակալությունից խուսափելու համար: Այն, ինչ անում է MLBox-ը գլխարկի հետևում, այն է, որ այն կառուցում է դասակարգիչ, որը տարբերակում է գնացքը թեստային տվյալներից և այնուհետև օգտագործում է ROC գնահատականը՝ շեղումը չափելու համար:

MLBox-ն ունի Drift_thresholder կոչվող դաս, որն ընդունում է գնացքը, թեստային հավաքածուները և թիրախավորումը և հաշվարկում է դրեյֆի միավոր բոլորի համար, այնուհետև Drift_thresholder-ը ջնջում է այն փոփոխականը, որն ունի շեմից բարձր դրիֆի միավոր:

Այն, ինչ մենք արեցինք վերևում, նախ ստեղծեցինք Drift_thresholder դասի օբյեկտ և այնուհետև օգտագործեցինք օբյեկտի fit_transformը՝ դրիֆտ փոփոխականները հեռացնելու համար:

Ցանկանու՞մ եք ավտոմատ կերպով գրանցել ձեր փորձի պարամետրերը, որպեսզի կարողանաք ավելի արագ կրկնել: «Գրանցվեք ձեր անվճար Comet հաշվի համար այսօր:

Օպտիմալացում

Օպտիմալացման հատկանիշը ստեղծում է օպտիմիզացվելիք բոլոր պարամետրերի բարձրաչափ տարածություն, այնուհետև ընտրում է ամենաքիչ վավերացման գնահատական ​​ունեցող լավագույն պարամետրը: Այն իրականացնում է տարբեր օպտիմիզացումներ՝ առանձնահատկությունների ընտրիչից, NA կոդավորիչից մինչև stacking estimator: Սկսենք օպտիմալացման դասը սկսելու համար:

Այժմ եկեք սահմանենք մեր ընտրությամբ մի քանի կոնֆիգուրացիաների տարածք: Կա նաև լռելյայն MLBox կոնֆիգուրացիան օգտագործելու տարբերակ, բայց մենք այսօր չենք օգտագործի այն, քանի որ ես լուծում եմ որոշակի խնդրի համար:

  • ne_numeric/strategy. սահմանում է, թե ինչպես պետք է մշակվեն բացակայող տվյալները թվային հատկանիշներում:
  • ce_startegy. կարգավորում է կատեգորիկ փոփոխականների կոդավորումը
  • fs. հատկանիշի ընտրություն
  • stck՝ մետա-հատկանիշների ստաքեր
  • est՝ վերջնական գնահատող

Այժմ մենք կարող ենք գնահատել մոդելը:

Կանխատեսումներ անել

Այժմ մենք կարող ենք հարմարեցնել օպտիմալ խողովակաշարը և այնուհետև կանխատեսել մեր թեստային տվյալների բազայի միջոցով, որպեսզի դա անենք, նախ ստեղծենք դասի գուշակիչի օբյեկտ, այնուհետև օգտագործենք սկզբնական օբյեկտի fit_predict մեթոդը:

Եզրակացություն

Հետևելով այս ձեռնարկին, դուք կարող եք տեսնել, թե ինչպես է AutoML-ը հեշտ, իսկ MLBox-ը հեշտացրել է, որպեսզի որպես մշակողներ կարողանանք ավելի արդյունավետ կերպով հասնել ավելի քիչ ժամանակում, կարող եք անցնել նրանց փաստաթղթերը և ստուգել մի քանի ավելի հիանալի օգտագործման դեպքեր և առանձնահատկություններ, որոնք մենք չենք ուսումնասիրել և փորձել: դրանք դուրս.

Խմբագրի նշում. Heartbeat-ը ներդրողների վրա հիմնված առցանց հրատարակություն է և համայնք, որը նվիրված է տվյալների գիտության, մեքենայական ուսուցման և խորը ուսուցման մասնագետների համար առաջնակարգ կրթական ռեսուրսների տրամադրմանը: Մենք պարտավորվում ենք աջակցել և ոգեշնչել ծրագրավորողներին և ինժեներներին կյանքի բոլոր ոլորտներից:

Խմբագրականորեն անկախ, Heartbeat-ը հովանավորվում և հրատարակվում է Comet MLOps հարթակի կողմից, որը տվյալների գիտնականներին և ML թիմերին հնարավորություն է տալիս հետևել, համեմատել, բացատրել և օպտիմալացնել իրենց փորձերը: Մենք վճարում ենք մեր ներդրողներին և գովազդ չենք վաճառում:

Եթե ցանկանում եք ներդրում ունենալ, անցեք մեր նպաստողների կոչին: Կարող եք նաև գրանցվել՝ ստանալու մեր շաբաթական տեղեկագիրը (Deep Learning Weekly), ստուգել Comet blog-ը, միանալ մեզ »«Slack-ում և հետևել Comet-ին Twitter-ում և LinkedIn-ում ռեսուրսների, իրադարձությունների համար: , և շատ ավելին, որը կօգնի ձեզ ավելի արագ կառուցել ավելի լավ ML մոդելներ: