Խորը ուսուցման նեյրոնային ցանցի մոդելները ունեն բազմաթիվ պարամետրեր (օրինակ՝ կշիռներ և կողմնակալություններ), ինչպես նաև բավականին շատ հիպերպարամետրեր։ Մենք գիտենք, թե ինչ պարամետրեր կան ավագ դպրոցից: Դրանք թվեր են, որոնք դուք միացնում եք գործառույթին: Բայց որո՞նք են հիպերպարամետրերը: Դե, դրանք հիմնականում տարբերակներ են, որոնք օգտագործվում են պարամետրերը պահպանող մոդել ստեղծելու համար:

Որոշ ժամանակ է պահանջվում իմանալու համար, թե որ հիպերպարամետրի պարամետրը հարմար է մոդելի վարքագծի համար: Բարեբախտաբար, keras-ի կանխադրվածները իսկապես լավ մեկնարկային կետ են:

Նախ, եկեք հիշենք նախորդ հոդվածներից, որ մեր խորը ուսուցման մոդելները փորձում են մոտավորել ֆունկցիան f, որը քարտեզագրում է մուտքագրման առանձնահատկությունները X արդյունք ստանալու որոշումներY: Կամ, այլ կերպ ասած, մենք փորձում ենք գտնել մի ֆունկցիա, որը համապատասխանում է Y= f(X) ցածր սխալով, բայց առանց հիշելու ուսուցման տվյալները (overfitting )

Մեր մոդելիպարամետրերը, ինչպիսիք են կշիռները և կողմնակալությունները, ճշգրտվում են պարամետրերի օպտիմալացման գործընթացում (այսինքն՝ ետ տարածում)՝ մեր քարտեզագրման ֆունկցիայի ավելի ու ավելի լավ տարբերակ ստանալու համար f . Հիմնվելով սուպեր հուզիչ վերջին աշխատանքի վրա՝ պարզվում է, որ նեյրոնային ցանցերն իրականում կատարում են տեղեկատվության մի տեսակ սեղմում՝ սովորելով մոտավոր f: Սա մեր հին ընկերոջ տեղեկատվական տեսությունը կապում է մեր նոր ընկերոջ խորը նեյրոնային ցանցերի հետ:

Հիպերպարամետրերը-ն այն մետա-պարամետրերն են, որոնք մենք կարող ենք ընտրել (հուսով ենք, որ խելացի ձևով) կարգավորելու համար, թե ինչպես է մոդելը ձևավորում f: Այլ կերպ ասած, մենք սահմանում ենք հիպերպարամետրեր, որպեսզի ընտրենք մեր ուզած մոդելի տեսակը: Օրինակ, t-SNE-ն ունի հիպերպարամետրային կարգավորումներ, որոնք կոչվում են տարակուսանք, էպսիլոն (ուսուցման արագություն), և մի քանի այլ, օրինակ՝ կրկնությունների քանակը:

Մտածեք կարգավորելու և ստեղծելու խորը ուսուցման մոդելներ, ինչպիսին է սուշի պատվիրելը. սուշին գալիս է գլանափաթեթներով: Որոշ ռուլետներ ունեն 8 կտոր, իսկ մյուսները՝ 6 կամ 4 կտոր։ Հիպերպարամետրը, որը վերահսկում է համը, և քանի կտոր կստանաք, երբ ցանկից ռուլետ խնդրեք, ռուլետի տեսակն է: Դուք կարող եք ընտրել կծու ռուլետ, բուսական ռուլետ, տապակած ռուլետ և այլն: Բոլոր դեպքերում դուք դեռ ստանում եք սուշի: Ինչ է փոխվում այն ​​կոնֆիգուրացիան, որն օգտագործում է սուշի խոհարարը ձեր սուշի պատրաստելու համար: Յուրաքանչյուր ռուլետի համը տարբեր է: Սա վերադարձնելով մեքենայական ուսուցման աշխարհ՝ մենք պետք է որոշ շատ մեծ որոշումներ կայացնենք, երբ ընտրում ենք հիպերպարամետրեր (օրինակ՝ ռեգրեսոր կամ դասակարգիչ, CNN կամ LSTM կամ DNN կամ GaN), ինչպես նաև շատ փոքր որոշումներ (օրինակ՝ խմբաքանակի չափը, թեստը/գնացքը)։ պառակտում, կանոնավորիչներ, դուրս գալը, աղմուկ և այլն): Որոշ դեպքերում նախապես պատրաստված նեյրոնային ցանցը (a la VGG-19) կամ նեյրոնային ցանցի նախապես սահմանված ձևը (a la autoencoder) ձեզ ավելի մոտ կբերի լուծմանը, քան զրոյից սկսելը: Նյարդային ցանցի լրիվ հարմարեցված կոնֆիգուրացիաների համար մենք ստանում ենք հիպերպարամետրերի բազմաթիվ տարբերակներ keras-ում, ինչպիսիք են կարգավորիչները L1-ի և L2-ի համար, DNN շերտի լայնությունը, ցանցի ձևը (ավտո կոդավորիչ, ֆիքսված լայնություն…), սովորելու արագությունը և շատ ավելին:

Ծրագրավորողները սիրում են օգտագործել կազմաձևման պարամետրերը, օրինակ. prod / dev կարգավորումներ: Մենք օգտագործում ենք ConfigParser դրա համար: Այնուամենայնիվ, խորը ուսուցման մեջ հիպերպարամետրերը ավելի շատ նման են մի շարք բնադրված օղակների, որոնք փնտրում են լավ կոնֆիգուրացիա, նախքան ճեղքումը: Որոնումը պետք է սկանավորի մեքենայական ուսուցման առկա մոդելները՝ գտնելու ցածր սխալ ունեցող մեկը (կամ ինչ էլ որ լինի նպատակային գործառույթը): Դուք կարող եք պատկերացնել այս մոդելի հիպերպարամետրերը որպես կոնֆիգուրացիաներ: Այնուամենայնիվ, ավելի ճիշտ է դիտարկել հիպերպարամետրերի ընտրության որոնումը որպես Պարետո օպտիմիզացիա, որտեղ սահմանափակումներն այնպիսին են, ինչպիսին է GPU-ի չափը, և նպատակներն են կորուստը/ճշգրտությունը, ընդհանրությունը (ճշգրտություն, հիշել, F- գնահատական) և մոդելի կատարողականի այլ չափանիշներ: Շատ մոդելային սահմանափակումներ ունենալը խնդիր չէ: Դա այն հատվածն է, որտեղ դուք ունեք բազմաթիվ նպատակներ, և որոշ սահմանափակումներ ամբողջ թվեր են, որն իսկապես փչում է: Երբ բախվում եք մի քանի նպատակների օպտիմիզացման խնդրին, դուք պետք է կամ ստեղծեք այս նպատակների գծային համակցությունը (գծային մոդել), հնարավոր է՝ կատարեք խելահեղ մաթեմատիկա (տես խառը ամբողջ թվով գծային ծրագրավորում), կամ պարզապես ասեք սա որպես մետա- մակարդակի մեքենայական ուսուցում խնդիրը (հետազոտություն): Քանի որ Pareto-ի բազմաբնույթ նյութերն այնքան տգեղ և դանդաղ են (կարդա՛ որպես թանկարժեք), կանոնն այն է, որ փորձեք այնպիսի բաներ, որոնք իմաստալից են, մինչև հասնեք մոդելի ընդունելի կատարողականի։ մակարդակ. Իմ մագիստրոսի կոչումը վերաբերում էր նախագծային տիեզերական հետազոտությանը, ուստի ես անձամբ գիտեմ, թե որքան դժվար է ընտրել տվյալ կոնֆիգուրացիան բազմաթիվ սահմանափակումների ներքո:

Մինչև ստորագրելը, այսօր իսկապես հետաքրքիր նորություններ ստացա: API.AI, փոխել է իր անունը Dialogflow: Նրանք վերահղեցին տիրույթի անունը և ամեն ինչ։ Կարծում եմ, որ ինչ-որ պահի Google-ը պատրաստվում է տեղադրել այն որպես dialogflow.google.com, ինչպես դա արեցին AdWords-ի և Google-ի այլ արտադրանքների, ինչպիսիք են ներարկղը: Որպես այլընտրանք, այն կարող է կլանվել Google Cloud Platform-ում, ինչպես անում է Amazon-ն իր AWS ամպային ծառայությունների հետ:

ԼԱՎ. Վերադառնալ աշխատանքի! Եթե ​​ձեզ դուր եկավ արհեստական ​​ինտելեկտի վերաբերյալ այս հոդվածը, ապա փորձեք ծափերի գործիքը: Հպեք դրան: Հետևեք մեզ միջինում: Գնացեք դրա համար: Ես նույնպես ուրախ եմ լսել ձեր կարծիքը մեկնաբանություններում: Ինչ ես կարծում? Արդյո՞ք ես չափազանց շատ փակագծեր եմ օգտագործում: Ինչի՞ մասին գրեմ: Ես գրել եմ մի փունջ հոդվածներ բիզնեսի վերաբերյալ, իսկ վերջերս հետաքրքրությունն ավելի շատ տեխնիկական կողմն է: Ի՞նչ կասեք այս մասին. ուղարկեք ինձ ձեր տվյալների գիտության օգտագործման դեպքերը կամ խնդիրները, և ես կընտրեմ գրառում՝ հոդված գրելու համար: Գնացեք դրան՝ [email protected]

Ուրախ կոդավորում:

-Daniel
[email protected] ← Say hi.
Lemay.ai
1(855)LEMAY-AI

Այլ հոդվածներ, որոնք դուք կարող եք վայելել.