▮ 6-ТЕ СЪВЕТА
Има много неща, които трябва да вземете предвид при избора на модел за машинно обучение, освен показатели за ефективност, като необходимо количество данни, време за обучение на модела, скорост на извод и т.н.
Ако сравним конкретни ML алгоритми в тази публикация, те скоро ще бъдат остарели, така че ето няколко съвета за избор на модел, без да навлизаме твърде много в спецификата.
Справка: Проектиране на системи за машинно обучение
▮ 1. Избягвайте „най-съвременния“ капан
Ако има по-нов модел, защо да не използвате ТОЗИ, нали?
Звучи страхотно, ако използваме „най-съвременна“ технология.
Винаги обаче трябва да имаме предвид, че „Най-съвременно“ означава, че работи по-добре от предишните модели, когато е обучен и оценен на конкретен статичен набор от данни.
Това НЕ означава, че ще работи по-добре с текущия набор от данни, достъпен за вас. Нито означава, че може да постигне скоростта на извод, която очаквате.
Важно е да сте в крак с новите технологии, но по-важното е да можете да намерите правилното решение, което може да разреши конкретния проблем, пред който сте изправени. Ако традиционен прост модел може да постигне задачата с по-ниска цена, вероятно трябва да го използвате.
▮ 2. Започнете Simple
Простото е най-доброто за почти всичко. Дори за вашия модел на машинно обучение.
Ето предимствата на използването на прост модел.
- Можете да съкратите итерацията 「Train⇒Evaluate⇒Deploy⇒Monitor⇒Train」
- Можете постепенно да добавяте сложни компоненти, което улеснява разбирането и отстраняването на грешки в модела
- Можете да зададете производителността на този модел като стандартна производителност
▮ 3. Избягвайте човешките пристрастия
Когато ML инженер експериментира с множество модели, той може да отдели повече време на някои от моделите, отколкото на други. Това може да се случи или случайно, или поради техните предпочитания. Би било несправедливо да сравнявате всеки модел, ако времето, което сте прекарали в експерименти, е небалансирано.
Когато сравнявате множество архитектури, важно е да експериментирате с една и съща настройка.
Например, ако ще експериментирате 10 пъти върху модел A, вероятно трябва да експериментирате 10 пъти и върху модел B.
▮ 4. Изпълнение „Сега“ СРЕЩУ „ПО-КЪСНО“
Най-добре представящият се модел „Сега“ може да не се представи най-добре и по-късно. Може би няколко месеца по-късно ще има повече налични данни и ще можете да обучите невронна мрежа, която генерира по-добри резултати.
Можете да оцените това, като използвате „Кривата на обучение“ (Брой обучителни проби като X-ос и използване на загуба, точност и т.н. като Y-ос).
Не можете да кажете точно какво увеличение на производителността можете да очаквате, но можете да кажете дали изобщо можете да очаквате някакво увеличение или не.
▮ 5. Компромиси
Когато избирате модел, винаги ще има някакъв вид компромиси. Разбирането и приоритизирането на тези компромиси може да ви помогне да намерите правилния модел за проекта.
Напр. 1: Показатели за ефективност
Един от най-известните компромиси може да бъде фалшиво положителен/фалшиво отрицателен компромис. Когато броят на FP намалява, броят на FN ще се увеличи и обратно.
Примерна задача, когато FP би била по-опасна, е отключването на пръстови отпечатъци. Не бихте искали неоторизирани хора случайно да бъдат класифицирани като упълномощени. В този случай може да искате да изберете модел, който изпълнява относително ниски FP.
От друга страна, примерна задача, при която FN би била по-опасна, е скринингът за COVID-19. Не бихте искали хората, които имат COVID-19, да бъдат класифицирани като хора без COVID-19. В този случай може да искате да изберете модел, който изпълнява относително ниски FN.
Пр. 2: Ресурси
Когато използвате „най-съвременен“ модел, може да успеете да получите по-добри резултати, но забавянето на извода може да е твърде голямо, че потребителят да не иска да го използва повече.
В този случай може би е по-добре да избягвате модела „Състоянието на техниката“ и вместо това да използвате по-прост.
▮ 6. Разбиране на допусканията на модела
Всеки модел има някакво предположение. Важно е да разберете тези предположения и да видите дали наличните в момента данни също отговарят на тези предположения.
Пр. 1: Граници
Всички линейни класификатори приемат, че границите на решения са линейни
Пр. 2: Нормално разпределен
Много статистически методи предполагат, че данните са нормално разпределени
Пр. 3: Предположения за прогнозиране
Всеки модел предполага, че е възможно да се предвиди Y въз основа на вход X.