Добивки:
- Способност да се избере метриката соодветна на типот на проблемот и деловниот контекст (PR-AUC/отповикување во неурамнотежени податоци, MAE/RMSE во регресија) и препознавање над/подоволно учење
- Способност да се интерпретира секоја метрика според основната линија и да се измери отстапувањето и да се одвои бучавата од напредокот со вкрстена валидација
- Способност за известување неоптимистички резултати со подесување на хиперпараметрите со множеството за валидација и користење на тест множеството само на крајот
Обуката за модели (обука: процес на учење на обрасци од податоци) е највидливиот, но најпогрешниот чекор во МЛ инженерството. Се појавува затоа што произведува задоволителен број како „точност 95%“. Заблуда бидејќи таа бројка често е вистинскиот одговор на погрешното прашање. Во оваа единица, образованието и евалуацијата се дискутираат со инженерската дисциплина; Ние користиме вештачка интелигенција како партнер во експерименталниот дизајн и одлуката ја базираме на мерење.
Логика на циклусот на обука
Моделот ја учи шемата во податоците со минимизирање на функцијата за загуба: функција која нумерички ја мери грешката на моделот. Алгоритмот за оптимизација (на пр. спуштање со градиент) ја намалува загубата со прилагодување на параметрите чекор по чекор. Целта не е да се запаметат податоците за обуката, туку да се генерализираат на податоци без преседан.
Две главни опасности:
- Преоптоварување: Моделот ги меморира податоците за обуката и не успева на новите податоци. Успехот на обуката е висок, успехот за верификација е низок.
- Недостаток: Моделот не може да ја долови шемата; И обуката и успехот на валидација се ниски.
Пронаоѓањето на рамнотежа е уметност на образованието. Комплетот за валидација е таму за да ја следи оваа рамнотежа: ако успехот на валидацијата почне да се намалува додека успехот на обуката се зголемува, преучувањето започнало.
Совет: Забележете ја загубата на обука и валидација заедно на секој чекор. Точката во која двете кривини почнуваат да се разминуваат е местото каде што започнува прекумерното учење и е вистинскиот момент за „рано запирање“.
Метрички избор: најкритичната одлука
Погрешната метрика прави добар модел да изгледа лошо, а лошиот модел да изгледа добро. Проблемот ја одредува метриката:
- Неурамнотежена класификација (една класа е многу ретка, на пр. измама): Точноста е погрешна. Моделот што вели „наречете се што е нормално“ ќе добие 99% точност, но нема да фати ниту една измама. Наместо тоа, се користат прецизноста (колку од она што го фатив е всушност позитивно), потсетувањето (колку од она што го фатив е вистинско позитивно) и нивната рамнотежа F1 или PR-AUC.
- Балансирана класификација: Точноста и ROC-AUC може да бидат соодветни.
- Регресија (проценка на број): MAE (средна апсолутна грешка), RMSE (казнува големи грешки), MAPE (процентна грешка).
- Рангирање/препорака: NDCG, MRR, Recall@K.
Дали прецизноста или отповикувањето е важно зависи од деловниот контекст. Потсетувањето (не пропуштање на ниту еден пациент) е приоритет во скринингот за рак; Прецизноста во филтерот за спам (не праќање важни е-пошта до спам) е важна. Ова е деловна одлука, а не техничка, и е донесена заедно од инженерот и сопственикот.
Слаб промпт / Силен промпт
Слаба порака: „Оценете ги перформансите на мојот модел, точност 0,97“.
Моќно предупредување: „Имам модел за откривање измами; стапката на позитивна класа е 1,5%. Точноста е пријавена како 0,97. Објаснете зошто оваа метрика може да погреши, кажете ми кои метрики (прецизност, отповикување, PR-AUC) треба да ги претпочитам и зошто.
Разлика: моќниот промпт дава сооднос на класи и деловен контекст; исто така бара споредба на основниот модел - ова е најважното сидро за тоа дали метриката е значајна.
Основна линија: метриката без споредба е бесмислена
Метриката сама по себе не е добра или лоша; Тоа е добро или лошо според основен модел. Основниот модел е наједноставното решение што ми паѓа на ум: „секогаш кажувај ја мнозинската класа“, „повтори ја вредноста од минатата недела“, „погоди ја средната вредност“. Ако вашиот модел не може јасно да го помине ова едноставно решение, целата сложеност е за џабе.
Внимание: Реченицата „Мојот модел е 85% точен“ сама по себе не кажува ништо. Ако основниот модел веќе добива 84%, вашиот модел е речиси безвреден; Ако основниот модел добие 50%, вашиот модел е совршен. Секогаш зборувајте во однос на основниот модел.
Вкрстена валидација и доверба
Една поделба на обука/тестирање може да се должи на случајност. Вкрстена валидација: делењето на податоците на k делови и тестирањето на секој дел секвенцијално покажува колку е стабилна изведбата. Во 5-кратната вкрстена валидација добивате пет различни оценки; Нивната средна вредност и стандардното отстапување се важни. Ако просекот е 80%, но отстапувањето е ±12%, вашиот модел е нестабилен - може да се однесува многу поинаку во следната серија на податоци.
Ова е исто така критично за „споредбата на два модели“. Ако моделот А доби 81%, а моделот Б 82%, дали Б е навистина подобар? Ако отстапувањето е ± 3%, оваа разлика може да биде бучава. Размислете дали разликата е значајна пред да одлучите.
Подесување на хиперпараметар: со валидација, а не со тестирање
Хиперпараметрите (поставките рачно одредени пред обуката - стапка на учење, длабочина на дрвото итн.) се поставуваат со множеството за валидација. Тест сет се користи само на крајот, еднаш. Ако изберете хиперпараметри со гледање на тест множеството, тест множеството ќе биде контаминирано и перформансите што ги пријавувате ќе бидат оптимистички, што не е случај во реалноста.
Вештачката интелигенција е добар помошник во дизајнирањето на просторот за пребарување на хиперпараметри и пишувањето на кодот за пребарување (пребарување мрежа, случајно пребарување, бајесова оптимизација). Но, вие сепак одлучувате „која метрика ќе ја оптимизираме?“
три мини футроли
Случај 1 - Замка за точност. Медицински тим се гордееше со модел кој откри ретка болест: 98% точност. Кога беше направена споредбата на основниот модел, се појави вистината: бидејќи стапката на заболување беше 2%, моделот што рече „наречете ги сите здрави“ исто така доби 98%. Повлекувањето на моделот беше само 11% - недостасуваа повеќето пациенти. Откако метриката беше претворена во PR-AUC, беа измерени вистинските перформанси и моделот беше редизајниран.
Случај 2 - Грешка бучавата за напредок. Еден тим потроши месеци за да го подобри моделот од 86,2% на 86,9%. Вкрстената валидација покажа дека пристрасноста беше ± 1,4% - така што „подобрувањето“ од 0,7 поени беше статистичка бучава. Тимот потроши три недели на нереална заработка. Поука: не прогласувајте победа без да потврдите дека подобрувањето е поголемо од отстапувањето.
Случај 3 - Контаминација на тест сет. Еден инженер постојано го гледал тест сет за да ги избере најдобрите хиперпараметри. 91% што го објави падна на 83% во производството. Зошто: тој несвесно го одбрал моделот соодветно, гледајќи го тест сет одново и одново (преучување на тест сет). Пријавените и вистинските перформанси се преклопија кога се користеше посебен сет за валидација.
Шаблони за копирање
Помогнете ми да ја изберам вистинската метрика за овој проблем со класификација. Проблем: [што е предвидено] Распределба на класи: [позитивна стапка
Оценете ја споредбата на следните два модели. Вкрстена валидација на моделот А: [листа на бодови] Вкрстена валидација на моделот Б: [листа на бодови] Пресметајте ја средната вредност и стандардното отстапување. Дали разликата е статистички значајна или е само бучава во рамките на отстапувањето? Кој би ми препорачал да го изберам и зошто?
Проверете ја оваа шифра за обука за следново: 1) Дали хиперпараметрите се избрани со комплетот за тестирање или множеството за валидација?2) Дали предвременото запирање се следи со правилното множество?3) Дали има знаци на прекумерно учење (разлика во губење на обука/валидација)? Код: [шифра]
Која од MAE, RMSE и MAPE треба да ја пријавам за овој проблем со регресија? Скала на целната променлива: [опсег]Дали големите грешки се несразмерно лоши (RMSE), или се сите еднакви (MAE)? Дали има вредности блиску до нула (дали го искривуваат MAPE)? Предложете со кратко оправдување.
Табела со метрички избор
Тип на проблем
Соодветна метрика
Да се избегнува
Зошто
Неурамнотежена класификација
PR-AUC, F1, потсетиме
Точност
Класата на мнозинството ја надува метриката
Балансирана класификација
Точност, ROC-AUC
-
Сигурен во избалансирани податоци
Регресија (значително надворешно)
RMSE
MAPE (ако е нула)
Ги казнува големите грешки
Регресија (еднаква тежина)
MAE
-
Лесно за толкување
Рангирање/препорака
NDCG, Recall@K
Точност
Редот е важен
Вообичаени грешки
- Користење на точност на неизбалансирани податоци. Најчеста метричка грешка.
- Не правење споредби на основните модели. Тоа ја прави метриката да го изгуби своето значење.
- Гледајќи го тест множеството за хиперпараметри. Оптимистички, нереален резултат.
- Потпирајќи се на една преграда. Без вкрстена валидација нема да ја видите пристрасноста.
- Погрешна бучава за напредок. Малите „подобрувања“ од отстапување се главно среќа.
- Игнорирање на деловниот контекст. Билансот на прецизност/отповикување е деловна одлука.
Сумирано
Вистинската вештина во обуката за модели не е да се произведе голем број, туку да се знае што значи тој број. Проблемот и деловниот контекст ја одредуваат вистинската метрика; интерпретираат секоја метрика според основен модел; измерете ја пристрасноста со вкрстена валидација и не погрешно ја сметате бучавата за напредок; Користете го комплетот за тестирање само на крајот, еднаш. ВИ е ваш партнер во дизајнот на експерименти, но одлуката за „доволно добро“ зависи од вас и ваша.
Задача за апликација
За модел на класификација: (1) напишете ја распределбата на класата, (2) изградите соодветен основен модел и измерете го неговиот резултат, (3) оценете го вашиот модел со 5-кратна вкрстена валидација и пријавете ја средната вредност и стандардното отстапување, (4) пресметајте ја метриката соодветна на проблемот (на пр. PR-AUC) наместо точноста. Запишете дали вашиот модел го надминува основниот модел со голема разлика без пристрасност.
листа за проверка
- [ ] Ја избрав метриката врз основа на типот на проблемот и деловниот контекст.
- [ ] Направив основен модел и споредив со него.
- [ ] Ги пријавив средната вредност и отстапувањето со вкрстена валидација.
- [ ] Потврдив дека подобрувањето е поголемо од отстапувањето.
- [ ] Ги избрав хиперпараметрите со множеството за валидација.
- [ ] Го користев тест-сетот само еднаш, на самиот крај.