Օգտագործելով սիմուլյացիաներ՝ ինտերակտիվ մեքենայական ուսուցման համար նախագծելու համար

Այս բլոգային գրառումն ամփոփում է կոնֆերանսի զեկույցը ներկայացված IUI 2022-ում (pdf): Եթե ​​նախընտրում եք տեսանյութ, տես իմ ներկայացումը համաժողովում:

Ահա ընդհանուր իրավիճակ. ես ունեմ տեքստային փաստաթղթերի հավաքածու և գաղափար դասակարգման առաջադրանքի համար: Ես որոշում եմ, որ ուզում եմ օգտագործել մեքենայական ուսուցում այս գաղափարի իրագործելիությունը ուսումնասիրելու համար: Տվյալները ծանոթագրելու և մոդելը վարժեցնելու համար ես կօգտագործեմ ինտերակտիվ մեքենայական ուսուցում (IML): Անոտացիա անելու համար ես կօգտագործեմ այս կեղծ IML պիտակավորման ինտերֆեյսի նման մի բան.

Ամենահիմնական հատկանիշը փաստաթղթերի ցուցադրումն է անոտացիայի կոճակների կողքին, որպեսզի ես կարողանամ առանձին փաստաթղթերին պիտակներ հատկացնել: Ինչպես նշում եմ, ես նաև ցանկանում եմ գնահատել իմ մոդելի կատարողականը: Արդյունավետության գնահատումը օգնում է ինձ (ա) զգալ, որ ես առաջընթաց եմ գրանցում, (բ) որոշել, թե երբ դադարեցնեմ պիտակավորումը և (գ) գնահատեմ, թե ևս քանի պիտակ պետք է ստանամ։ . Արդյունավետության գնահատում կազմելու համար ես պետք է գնահատեմ իմ մոդելի արդյունավետությունը մինչ այժմ իմ ստեղծած պիտակների վրա (քանի որ ես սկսել եմ զրոյական պիտակներից): Ես կօգտագործեմ թողնել մեկից դուրս խաչաձև վավերացում (CV)՝ հաշվարկելու կատարողականության ցանկացած ցուցանիշ, որն ինձ հետաքրքրում է (օրինակ՝ F1 միավոր):

Ես չեմ կարող ցուցադրել կատարողականի գնահատականը (կամ զգալ առաջադրանքի իրագործելիությունը), քանի դեռ պիտակավորել եմ փաստաթղթերը բոլոր դասերում: Եթե ​​դրական փաստաթղթերի տոկոսը ցածր է, ես գուցե ստիպված լինեմ նշել տասնյակ փաստաթղթեր, նախքան ընդհանրապես դրական պիտակներ ստանալը: Ընդհանուր գործնական խորհուրդն է՝ զտել ձեր ֆոնդը՝ ձեր տվյալների որոշ ենթախմբում դրական փաստաթղթեր բացահայտելու համար: Տեքստային տվյալների համար մենք կարող ենք մեր ինտերֆեյսին ավելացնել ամբողջական տեքստի որոնում հնարավորություն, որպեսզի օգտվողը կարողանա զտել չպիտակավորված փաստաթղթերը՝ դրական օրինակներ գտնելու համար:

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

Մոդելի և մոդելավորողի միջև փոխզիջումների բացահայտում

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

Մեր աշխատանքի նպատակը (ներկայացված IUI 2022-ում) ցույց տալն է, որ դուք պետք է անհանգստանաք այս հարցով. Դուք պետք է հաշվի առնեք այս փոխզիջումները հատուկ օգտագործողի փորձի համար նախագծելիս: Մեր աշխատանքում մենք բացահայտորեն համեմատեցինք տարբեր ցանկալի հատկանիշներ (օրինակ՝ որոնումը և ակտիվ ուսուցումը)՝ օգտագործելով սիմուլյացիան:

Ահա հիմնական ձևակերպումը, որը մենք օգտագործել ենք IML պիտակավորման ինտերֆեյսի օգտագործումը մոդելավորելու համար. (1) Ինտերֆեյսը նմուշառում է 10 չպիտակավորված փաստաթղթերի խմբաքանակ և ներկայացնում դրանք օգտագործողին: (2) Այնուհետև մեր նմանակված օգտվողը ծանոթագրություններ է տրամադրում խմբաքանակի բոլոր 10 փաստաթղթերի համար: Մոդելավորված օգտատերը յուրաքանչյուր փաստաթղթի համար տրամադրում է հիմնական ճշմարտության անոտացիա՝ առանց պիտակավորման աղմուկի, ենթադրություն, որը թույլ է տալիս համեմատել փորձերի միջև ավելի արդարացիորեն: Մեր փորձերի համար մենք օգտագործեցինք Amazon Հաճախորդների Կարծիքների Տվյալների հավաքածուն, և այս գրառման մեջ մենք կենտրոնանում ենք դասակարգելու վրա՝ արդյոք ապրանքի ակնարկը գրված է գրքի մասին, թե ոչ:

Երբ խմբաքանակը պիտակավորվում է, մենք CV-ն օգտագործում ենք առկա բոլոր պիտակների վրա՝ գնահատելու համար, թե որքանով է մեր մոդելը մինչ այժմ աշխատում: Իմ օգտագործած մոդելը լոգիստիկ ռեգրեսիա է RoBERTa համատեքստային ներկառուցումների նկատմամբ, որը լավ է աշխատում՝ միաժամանակ բավական արագ վարժեցնելու համար, որ կարող է ապահովել ինտերակտիվ ինտերֆեյս: Քանի որ մենք կենտրոնանում ենք այն բանի վրա, թե արդյոք դասակարգման առաջադրանքը իրագործելի է, մենք պարզապես կկենտրոնանանք առաջին 200 պիտակների (20 խմբաքանակների) վրա՝ անոտացիայի գործընթացի վաղ փուլը:

IML պիտակավորման ինտերֆեյսի մոդելավորում

Որպեսզի ցույց տանք, թե ինչպես են աշխատում մեր սիմուլյացիան, եկեք պատկերացնենք կատարողականի գնահատականները, որոնք օգտվողը կտեսնի 20 խմբաքանակներից յուրաքանչյուրը պիտակավորելուց հետո:

Մի քանի տատանումներից հետո մոդելը հասավ 0,82 F1 գնահատված գնահատականի:
Քանի որ մենք օգտագործում ենք սիմուլյացիաներ, մենք կարող ենք դուրս գալ մոդելի գնահատված արդյունավետությունից և նաև որոշել, թե որքանով է կողմնակալ է կատարողականի գնահատումը իրականում մոդելի օգտագործումն է՝ կանխատեսումներ անելու համար նախատեսված փորձնական հավաքածուի վրա, որը ես կավելացնեմ որպես ամուր գիծ:

Մոդելի «ճշմարիտ» ընդհանրացման ցուցանիշը 200 պիտակներից հետո կազմել է 0,83, ինչը մոտ է գնահատմանը: Այս օրինակը ընդամենը մեկ մոդելավորված վազքից է, բայց մենք կարող ենք վերցնել 100 վազքի միջինը՝ ցույց տալու միջին վազքի կատարումը: Մենք նաև կավելացնենք 95% վստահության միջակայքներ միջինի համար.

Գնահատված կատարողականի համար, չնայած որոշ շեղումների, մենք կարող ենք տեսնել, որ CV-ն ապահովում է կատարողականի ցածր կողմնակալության գնահատականներ: Միջին հաշվով, այս գնահատականները փոքր-ինչ հոռետեսական են (այսինքն՝ «հատված գիծը ավելի ցածր է, քան հոծ գիծը»), քանի որ յուրաքանչյուր CV ծալքում մենք տրամադրում ենք մեկ փաստաթուղթ, որը, եթե ներառվի, կբարելավի մոդելի իրական ընդհանրացման կատարումը:

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

Մենք կարող ենք տեսնել անորոշության նմուշառման օգուտը մեր արդյունքներում. իրական կատարողականը 200 պիտակների դեպքում գրեթե 0,1-ով ավելի բարձր է, քան պատահականորեն ընտրված մոդելը: Բայց անորոշության նմուշառումը խախտում է CV-ի վիճակագրական ենթադրությունները: Գնահատված կատարողականի համար մենք տեսնում ենք անհանգստացնող միտում. քանի որ ավելի շատ տվյալներ են պիտակվում, գնահատված կատարողականը իրականում նվազում է: Եթե ​​ինտերֆեյսը օգտագործողին զեկուցի այս կատարողականի գնահատականները, նրանք կեղծ եզրակացություն կանեին, որ իրենց մոդելը ավելի քան 0,3 F1-ով ավելի ցածր է կատարում, քան իրականում, ինչը կարող է լինել ավելի շատ անոտացիոն ռեսուրսներ ներդնելու որոշման կամ նախագիծը անիրագործելի չեղարկելու միջև:

Նույնիսկ եթե, որոշակի օգտագործման դեպքում, մեզ չեն հետաքրքրում մոդելի կատարողականի ճշգրիտ գնահատումները, մենք դեռ կարող ենք դժգոհ լինել ակտիվ ուսուցման մեթոդներից, ինչպիսիք են անորոշության նմուշառումը, որը պահանջում է արդեն պատրաստված մոդել ունենալ: Գրքերի դասակարգման մեր առաջադրանքի համար փաստաթղթերի մոտ 25%-ը դրական են, ինչը միայն մի փոքր անհավասարակշռված է: Առավել ծայրահեղ դեպքերում կարող է դժվար լինել գտնել դրական օրինակներ (որը կհանգեցնի ավելի վատ դասակարգչի): Մենք լուծեցինք այս խնդիրը՝ «սերմնացնելով» մեր դասակարգիչը դրական պիտակներով՝ իրականացնելով ամբողջական տեքստային որոնումներ (օգտագործելով հարցումներ, ինչպիսիք են «գրք» կամ «հողամաս»)՝ չպիտակավորված լողավազանը զտելու համար: Եթե ​​մենք օգտագործենք որոնումը ավազանը զտելու համար, նախքան մեր 10 պատահական փաստաթղթերը նմուշառելը, մենք կհայտնվենք փաստաթղթերի պիտակների ավելի հավասարակշռված հավաքածուով, որը թույլ կտա մեզ անմիջապես պատրաստել մոդելը և պոտենցիալ բարելավել մոդելն ընդհանուր առմամբ: (Մենք հարցումներ ենք հավաքել՝ հետազոտելով տվյալների գիտնականները, և հատկապես այն հարցումները, որոնք մեզ տվել են մարդիկ, արդյունավետ են ավազանը զտելիս՝ դրական փաստաթղթերի ավելի մեծ քանակություն ներառելու համար:)

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

Հետևանքները դիզայներների համար. ի՞նչ պետք է անեք այս փոխզիջումների հետ կապված:

Դուք կարող եք գտնել ավելի շատ սիմուլյացիաներ թղթում, սակայն մեր արդյունքների հիմնական նպատակը մեթոդների փոխզիջումն է, որը կբարելավի մոդելի ընդհանրացման կատարումը և կարող է մոդելավորողին տալ այդ կատարողականի ճշգրիտ գնահատականը. Եթե ​​դուք մոդելավորող եք, որն օգտագործում է ակտիվ ուսուցում կամ որոնում, մենք առաջարկում ենք ձեզ մի քանի ուղեցույց թերթում: Ամենակարևոր հետևանքները IML պիտակավորման համակարգերի նախագծողների համար են.

1) Օգտագործողին մի ցուցադրեք մոդելի կատարողականի ուղիղ գնահատականը, եթե այն հավանական է, որ այն սխալ է:
2) Խուսափեք որոնումը և ոչ պատահական նմուշառումը, եթե մոդելի կատարողականի գնահատականները կան: կարևոր է օգտատիրոջ համար:Ես անձամբ հավանում եմ Wall et al.-ի առաջարկը: (2019) առաջարկել բառացի հուշումներ՝ խրախուսելու կամ չխրախուսելու որոշակի տեսակի պիտակավորումը կամ ուսումնասիրությունը անոտացիայի գործընթացում:
3) Խրախուսեք դրական նմուշների որոնումը ծանոթագրման գործընթացի սկզբում` ընդհանրացման արդյունավետությունը բարձրացնելու համար: Սա ոչ միայն դժվար թե վնասի իրական կատարողականին, այլև կան որակական ապացույցներ, որ մարդիկ գնահատում են տվյալներն ուսումնասիրելու և անոտացիայի առաջադրանքի իրենց ըմբռնումը վերափոխելու այս հնարավորությունը:
4) Խրախուսեք ոչ պատահականության օգտագործումը: նմուշառում, երբ իրական կատարումը առաջնային կամ միակ նպատակն է:Մեր արդյունքները ցույց են տալիս, որ տիրույթի տեղաշարժի բացակայության կամ մոդելի կատարողականը գնահատելու անհրաժեշտության դեպքում դա կօգնի օգտագործել ակտիվ ուսուցման մեթոդներ:

Ազատորեն ստուգեք թուղթը ավելի շատ սիմուլյացիաների համար, ներառյալ փորձերը այլ ակտիվ ուսուցման մեթոդների հետ և համատեղելով ակտիվ ուսուցումն ու պատահական նմուշառումը նույն խմբաքանակում: Եթե ​​դուք հետաքրքրված եք նմանատիպ սիմուլյացիաներով, կարող եք գտնել GitHub կոդը: Շնորհակալություն կարդալու համար, և խնդրում եմ տեղեկացնել ինձ, եթե մեր արդյունքները ռեզոնանսվեն ձեր սեփական փորձի հետ ինտերակտիվ մոդելների վերապատրաստման կամ IML պիտակավորման համակարգերի նախագծման հետ:

Ես այս աշխատանքն արեցի, երբ պրակտիկանտ էի Վանեսա Մերդոկի թիմում Amazon-ում: Մեծ շնորհակալություն Մաքս Հարփերին և Սի Ջեյ Լիին՝ որպես իմ անմիջական դաստիարակներ հանդես գալու համար: Եթե ​​ցանկանում եք ավելին իմանալ IML պիտակավորման ինտերֆեյսների և անոտացիայի լավագույն փորձի մասին, խորհուրդ եմ տալիս Ռոբերտ (Մանրո) Մոնարխի «Human-in-the-Loop Machine Learning գիրքը: