Կազմակերպեք աշխատանքը, հետևեք և պատկերացրեք փորձերը Neptune.ai-ի հետ

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

Փորձարկել «կառավարման» գործիքները

Փորձերին հետևելու գործիքները ձեզ մեծ խթան են տալիս ձեր մեքենայական ուսուցման համար (և ոչ միայն) նախագծերի համար: Դուք կարող եք դրանք օգտագործել հիպերպարամետրերին հետևելու, գրաֆիկները (օրինակ՝ չափումները) և պատկերները (շփոթության մատրիցա կամ սխալ դասակարգված նմուշներ) պատկերացնելու համար, արտեֆակտները (մոդելի կշիռները) պահելու և շատ ավելին:

Բարեբախտաբար, մարդիկ նկատել էին, որ նախագծերի կառավարման գործիքը պարտադիր է լավ կազմակերպված նախագծերի համար: Հետևաբար, այդ նպատակով ստեղծվում են ավելի ու ավելի շատ գործիքներ և ծառայություններ՝ Comet, MLFlow, Neptune և Weights & Biases՝ մի քանիսը:

Ո՞ր գործիքն եմ օգտագործում:

Ես անձամբ օգտագործում եմ Նեպտունը իմ նախագծերի համար։ Ես մեկ անգամ օգտագործել եմ և ինձ դուր է եկել, բայց, անկեղծ ասած, դեռ պետք է բավական ժամանակ գտնեմ այլ գործիքներ փորձարկելու համար: Նեպտունը փորձերի կառավարման ամենաթեթև գործիքն է, ինչպես նշում են հեղինակները: Դուք կարող եք փորձել այն ցանկացած ժամանակ, քանի որ այն հասանելի է որպես ծառայություն և լիովին անվճար է օգտագործել Ձեր անձնական նախագծերի հետ, ինչը նշանակում է.

  • 1 օգտվողի հաշիվ հանրային և մասնավոր նախագծերի համար,
  • մինչև 100 ԳԲ պահեստ տեղեկամատյանների, արտեֆակտների և այլնի համար,
  • անսահմանափակ փորձեր և նոթատետրերի անցակետեր:

Կան նաև այլ տարբերակներ մատչելի ընկերությունների կամ ավելի պահանջկոտ օգտատերերի համար:

«Թիմ» պլանը թույլ է տալիս ստեղծել 10 անգամ ավելի շատ օգտվողներ և տալիս է ձեզ 10 անգամ ավելի շատ սկավառակի տարածություն, քան անվճար պլանը, բայց այն արժե 79 դոլար ձեր թիմի յուրաքանչյուր օգտագործողի համար: Չկա անվճար ճաշ… Այնուամենայնիվ, կրթական, հետազոտական ​​կամ շահույթ չհետապնդող նպատակներով Թիմի պլանը լիովին անվճար է (այս պահին): Neptune գործիքը կարող է օգտագործվել նաև on-prem (տեղակայված է ձեր կազմակերպության ներսում) որպես «Ձեռնարկություն» պլանի մաս, սակայն դա խորհուրդ է տրվում հիմնականում խոշոր կազմակերպություններին, որոնք նախընտրում են չօգտագործել SaaS լուծումներն իրենց արտադրանքի համար:

Օգտագործելով Նեպտունը կոդի մեջ

Նեպտունը ձեր կոդի հետ ինտեգրելը իսկապես անպարկեշտ է: Դա հիմնականում Python մոդուլ է պարզ API-ով, օրինակ՝ մի քանի պարամետր և չափանիշ գրանցելու համար, այն ամենը, ինչ դուք պետք է անեք, այն է, ինչ տեսնում եք ստորև: Իհարկե, այս կախարդական թվերի փոխարեն, դուք մուտքագրեք արժեքներ, որոնք վերադարձվում են մեքենայական ուսուցման շրջանակի կողմից (ինչպես PyTorch Lightning-ը, որը մեծ աջակցություն ունի Նեպտունի և այլ գործիքների համար):

import neptune
neptune.init('Me/MyProject')
neptune.create_experiment(params={'lr':0.1, 'dropout':0.4})
neptune.log_metric('test_accuracy', 0.84)

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

Նկարը հազար բառ արժե, ուստի…

Հատկություններ

Սկսեք վահանակի տեսքից (Նկար 1.) բոլոր նախագծերի ցանկով (ներառյալ ներկայումս գործող փորձերը):

Նկար 1. Վահանակ. նախագծերի ցանկ, սկավառակի օգտագործում և այլն (Պատկեր ըստ հեղինակի)

Ծրագրի տեսքում (Նկար 2.) դիտեք փորձերի ցանկը իրենց պարամետրերով և արդյունքներով (չափանիշներ, օրինակ՝ test_loss): Փոփոխեք ցուցադրվող սյունակները, որոնք ներառում են փորձի տեղեկատվությունը (հեղինակ, գործարկման ժամանակ, պիտակներ) և չափումներ (Նեպտունը կարող է առաջարկել ձեզ ավելացնել մետրային սյունակ՝ հիմնվելով ձեր գրանցած տվյալների վրա):

Նկար 2. Փորձեր. վերջին գործարկումներ, պարամետրեր և արդյունքներ (Պատկեր ըստ հեղինակի)

Պատկերացրեք չափումները, լռելյայնորեն յուրաքանչյուր գծապատկեր ցուցադրվում է առանձին (Նկար 3.), բայց դուք կարող եք նաև ստեղծել անհատական ​​դիտումներ: Դուք կարող եք որոշել ցուցադրել մի քանի պատկերացումներ նույն գծապատկերում (Նկար 4.):

Նկար 3. Չափումների և այլ արժեքների պատկերացում, օրինակ. LR (Պատկեր հեղինակի կողմից)

Նկար 4. Հատուկ գծապատկերներ. մի քանի չափումներ նույն գծապատկերում (Պատկեր ըստ հեղինակի)

Պահպանեք ցանկացած ֆայլ (օրինակ՝ կշիռները, ելքային ֆայլերը) որպես արտեֆակտ (Նկար 6.):
Վերանայեք դրանք նախադիտման պատուհանում (եթե հնարավոր է) կամ ներբեռնեք դրանք՝ եզրակացությունների համար օգտագործելու համար:

Նկար 6. Արտեֆակտներ. պահպանել/ներբեռնել արտեֆակտները (օրինակ՝ մոդելը) (Պատկեր հեղինակի կողմից)

Սրանք չօգտագործելը ժամանակի վատնում է

Փոխի՛ր միտքս։

Ձեր կոդը կառավարման գործիքին միացնելը մանկական խաղ է: Ի հավելումն դրան, օրինակ, PyTorch Lightning-ում, երբ որոշեք, թե որ չափումները պետք է գրանցվեն և այլն: Դուք կարող եք օգտագործել լոգերները (ինչպես Tensorboard, Neptune, Weights&Biases) փոխարինելիորեն:

Դուք կարող եք փորձեր կատարել ֆոնային ռեժիմում, բոլոր մատյանները, պատկերները և արդյունքները կպահվեն, որպեսզի հետագայում անտեսեք:

Խաղացեք տարբեր գործիքների հետ, որոշները կարող են օգտագործվել որպես Saas, մյուսները կարող են աշխատել տեղական մակարդակում: Նրանք առաջարկում են տարբեր առանձնահատկություններ, նրանք, իհարկե, շատ ավելին են առաջարկում, քան ես նկարագրեցի: Նրանք նաև լրացնում են միմյանց, այնպես որ փորձեք մեկը, ապա ստուգեք մյուսը: Գտեք այն մեկը, որը ձեզ և ձեր թիմին ամենաշատն է դուր գալիս և ձեր նախագծերը լավ կազմակերպեք: Շնորհակալություն ավելի ուշ: