K-fold cross-validation մեթոդ է, որն օգտագործվում է գնահատելու մոդելի կատարումը: Այն հատկապես օգտակար է գնահատելու որքան լավ է մոդելը ընդհանրանալու նոր, չտեսնված տվյալներին: Գործընթացը ներառում է տվյալների բազայի բաժանումը «k» ենթաբազմությունների կամ մոտավորապես հավասար չափի ծալքերի: Ահա քայլերի ամփոփումը.
1. Տվյալների հավաքածուի բաժանում.
Տվյալների հավաքածուն բաժանված է «k» հավասար չափի ենթաբազմությունների կամ ծալքերի: Օրինակ, եթե դուք ունեք 1000 նմուշ և ընտրեք «k» որպես 5, ապա յուրաքանչյուր ծալք կպարունակի 200 նմուշ:
2. Կրկնվող ուսուցում և գնահատում.
Մոդելը մարզվել է «k» անգամ: Յուրաքանչյուր կրկնությունում տարբեր ծալքեր օգտագործվում են որպես վավերացման հավաքածու, իսկ մնացած ծալքերն օգտագործվում են վերապատրաստման համար: Օրինակ՝
-
Կրկնություն 1: Ծալեք 1-ը որպես վավերացում, ծալեք 2-ից k-ը մարզման համար
-
Կրկնություն 2: Ծալեք 2-ը որպես վավերացում, ծալեք 1-ը և 3-ը դեպի k մարզման համար
-
Կրկնություն 3: Ծալեք 3-ը որպես վավերացում, ծալեք 1-ը և 2-ը և 4-ը դեպի k-ը մարզումների համար
-
... և այսպես շարունակ, մինչև բոլոր ծալքերը օգտագործվեն որպես վավերացման հավաքածու:
3. Կատարողականի գնահատում.
Յուրաքանչյուր կրկնությունից հետո մոդելի կատարումը գնահատվում է՝ օգտագործելով ընտրված չափանիշը (օրինակ՝ ճշգրտությունը, ճշգրտությունը, հետ կանչելը և այլն) վավերացման հավաքածուի վրա: Յուրաքանչյուր կրկնությունից կատարողական ցուցանիշները միջինացվում կամ համակցվում են՝ մոդելի կատարողականի ընդհանուր գնահատականը տալու համար:
4. Չափումների համախմբում.
Յուրաքանչյուր կրկնությունից կատարողականի ցուցանիշները (օրինակ՝ ճշտության միավորները) միջինացվում կամ համակցվում են՝ մոդելի կատարողականի ընդհանուր գնահատական տալու համար: Այս ագրեգացված ցուցանիշը ներկայացնում է մոդելի ակնկալվող արդյունավետությունը չտեսնված տվյալների վրա:
K-fold cross-validation-ի առավելությունները պարզ գնացքի/փորձարկման բաժանման նկատմամբ
-
Տվյալների ավելի լավ օգտագործում. K-fold cross-validation-ը թույլ է տալիս ավելի լավ օգտագործել առկա տվյալները, քանի որ յուրաքանչյուր նմուշ օգտագործվում է ինչպես վերապատրաստման, այնպես էլ վավերացման համար:
-
Կատարողականի գնահատման նվազեցված շեղում. այն ապահովում է մոդելի կատարողականի ավելի հուսալի գնահատում` նվազեցնելով մեկ գնացքի/փորձարկման բաժանման հետ կապված շեղումը:
-
Ընդհանրացում. Այն օգնում է հասկանալ, թե ինչպես է մոդելը գործում տվյալների տարբեր ենթաբազմությունների վրա, հետևաբար գնահատում է դրա ընդհանրացման հնարավորությունը:
Ընտրելով «k» արժեքը
-
Ավելի բարձր «k» արժեքներ. ավելի բարձր «k» արժեքի օգտագործումը (օրինակ՝ 10 կամ ավելի) հանգեցնում է վավերացման ավելի փոքր խմբերի, ինչը կարող է հանգեցնել ավելի ցածր կողմնակալության կատարողականի գնահատման, բայց ավելի բարձր հաշվողական ծախսերի:.
-
Ստորին «k» արժեքներ. ավելի ցածր «k» արժեքի օգտագործումը (օրինակ՝ 3 կամ 5) նվազեցնում է հաշվողական ծախսերը, բայց կարող է հանգեցնել կատարողականի գնահատման ավելի բարձր կողմնակալության՝ ավելի փոքր վավերացման պատճառով: հավաքածուներ.
Գործնական սցենարներում
-
Մեծ տվյալների հավաքածուների համար ավելի բարձր «k» արժեքները կարող են հաշվողականորեն թանկ լինել:
-
Երբ տվյալների շտեմարանը փոքր է, ավելի բարձր «k»-ը կարող է բավարար տվյալներ չտրամադրել յուրաքանչյուր ծալքում՝ ամուր մոդելի ուսուցման համար:
-
Ընդհանրապես, 5-ի կամ 10-ի նման արժեքները սովորաբար օգտագործվում են, քանի որ դրանք հավասարակշռում են հաշվողական արդյունավետության և հուսալի կատարողականի գնահատման միջև: