Јединице
1. Увод у вештачку интелигенцију у науци о подацима и аналитици: ток посла, улоге, границе, валидација и етика 2. Прикупљање података и разумевање извора: шема, узорковање, квалитет и свест о цурењу 3. Чишћење података и претходна обрада: Недостајућа вредност, Оутлиер и конверзија типа 4. Истраживачка анализа података (ЕДА): дистрибуције, односи и почетни увиди 5. Инжењеринг карактеристика: генерисање варијанти, кодирање, скалирање и избегавање цурења 6. Изградња модела: дефиниција проблема, избор алгоритма и подела обуке/тестирања 7. Евалуација модела: метрика, унакрсна валидација и екстремно учење 8. Визуелизација и приповедање: тачна графика, искрена графика 9. Генерисање кода: Анализа уз помоћ вештачке интелигенције са Питхон-ом (панде) и СКЛ-ом 10. Цурење података и репродуктивност: тихе катастрофе и дисциплина 11. МЛОпс фондација, етика, приватност и одговорна аналитика
Јединица 6 / 11

Изградња модела: дефиниција проблема, избор алгоритма и подела обуке/тестирања

Добици:

  • Способност дефинисања типа проблема (класификација, регресија, груписање) и критеријума успеха према стварној цени посла
  • Способност поштене поделе података (без додиривања скупа тестова; хронолошки у временској серији) и успостављања основе за процену без цурења
  • Способност да изаберете модел који се може тумачити тако што ћете почети са једноставном основном линијом и додати сложеност само када то заслужује.

До сада смо прикупили податке, очистили их, истражили и произвели функције. Сада долазимо до правог посла, прављења модела. Модел је математичка структура која учи образац из података и производи предвиђања за нове ситуације. Али најкритичнији део изградње модела није сам код, већ две одлуке које му претходе: дефинисање правог проблема и исправна подела података. АИ је моћан саветник у избору алгоритама, писању кода и подешавању параметара; али на једном је да одлучи шта ће предвидети и шта значи успех. Лоше дефинисан проблем неће радити чак ни са савршено написаним моделом.

Прво дефиниција проблема: шта предвиђамо

Сваки посао моделирања почиње питањем, а ово питање одређује тип модела. Класификација — излаз је категорија: „Да ли ће овај купац отићи или остати?“, „Да ли је ова трансакција лажна?“. Регресија (на енглеском регрессион - излаз је број): "Колико вреди ова кућа?", "Колико ће наруџбина стићи следећег месеца?". Груписање (подела неозначених података у природне групе): „На колико природних сегмената су подељени моји клијенти?“.

Други део исказа проблема је критеријум успеха: шта значи да овај модел буде „добар“? У моделу преваре, пропуштање преваранта је много скупље него случајно блокирање поштеног купца; Дакле, не „општа тачност” већ „стопа хватања превараната” долази до изражаја. Ако овај критеријум не дефинишете од почетка, заједно са власником предузећа, на крају ћете добити „веома тачан“ модел који не функционише (ући ћемо дубље у метрике у јединици 7).

Опрез: „Тачност“ може да завара. Ако је 10 од 1000 трансакција лажно, глупи модел који каже „ниједна није лажна“ даће 99% тачности, али неће ухватити ниједног преваранта. Изаберите критеријум успеха на основу стварне цене проблема.

Подела обуке/тестирања: поштено испитивање модела

Тестирање модела са подацима које је научио је као да студенту постављате иста питања која је проучавао на испиту; Добија високе оцене, али не показује шта заиста зна. Дакле, поделили смо податке на два (често три):

  • Сет за обуку (сет за обуку на енглеском, обично 70-80%): Модел учи на овоме.
  • Тестни сет (тестни сет, обично 20-30%): Модел ово уопште не види; овде се мери стварни учинак.
  • Сет за валидацију: Средњи скуп који се користи за подешавање модела (који је параметар бољи); да би тест сет био "чист".

Најосновније правило: тест сет се никада не додирује током тренинга. Скалирање, кодирање, избор карактеристика — све се једноставно учи из скупа за обуку, а затим се примењује на тестирање (принцип цурења из јединице 5). Тестни сет је први пут да модел види стварни свет; Ако га укључите прерано, никада нећете сазнати прави учинак.

Изузетак временске серије: Ако ваши подаци зависе од времена (продаја, берза, потражња), не врши се насумично подела. Пошто насумично цепање доводи до тога да модел види будућност и предвиђа прошлост — ово је цурење. Уместо тога, поделите хронолошки: тренирајте са старим периодом, тестирајте са новим периодом.

Избор алгоритма: од једноставног до сложеног

Најчешћа грешка почетника је да почну са најсложенијим моделом. Исправан приступ је супротан: прво успоставите једноставну основну линију. „увек погоди већинску класу“ у класификацији; „увек процени средњу вредност“ у регресији. Овај глупи модел даје основу; Ако ваш стварни модел не може да прође ово, постоји проблем. Затим пређите на једноставне и разумљиве моделе.

модел

Тип проблема

јака тачка

слабост

Основни (већина/просек)

обоје

Даје бенцхмарк

не учи

Логистичка регресија

Класификација

Једноставно, разумљиво

Само линеарни однос

Линеарна регресија

регресија

Једноставно, брзо

линеарна претпоставка

дрво одлучивања

обоје

интерпретабле

Лако памћење

случајна шума

обоје

Јака, издржљива

Мање интерпретабилно

Појачавање градијента (КСГБоост итд.)

обоје

веома јака

Тешко се прилагођава, ризик од памћења

Правило: изаберите најједноставнији "довољно добар" модел. Интерпретабилност је вреднија од моћи у већини пословних контекста; Боље је објаснити одбијање кредита „јер је ваш однос дуга и прихода висок“ него „зато што је то рекла црна кутија“.

три мини кофера

Случај 1 — Нетачна дефиниција проблема. Тим је направио модел класификације заснован на „да ли је купац задовољан“, али је изабрао „тачност“ као критеријум успеха. У подацима, 88% купаца је било задовољно; Модел је добио 88% тачности тако што је све назвао „задовољним“ и никада није ухватио незадовољне људе — иако је прави циљ био да их пронађе. Лекција: бирајте критеријуме успеха на основу стварне сврхе.

Случај 2 — Цурење времена у одељку. У пројекту предвиђања потражње, подаци су насумично подељени. Модел је дао 93% тачности, али је пао у производњи јер је током обуке предвидео јануар, па новембар, са подацима из децембра — видео је будућност. Када смо прешли на хронолошку поделу, стварни учинак се повећао на 74%. Лекција: хронолошка подела у временским серијама.

Случај 3 — Непотребна сложеност. Један аналитичар је почео директно са дубоком неуронском мрежом, подешавао је недељама и добио 81% тачности. Затим је колега добио 80% са 20 линија логистичке регресије — много брже, разумљиво и лакше за одржавање. Лекција: почните са основном линијом и једноставним моделом, додајте сложеност када то заслужује.

Четири шаблона за копирање

1) Појашњавање дефиниције проблема:

Ваша улога: консултант за моделирање. Помозите ми да дефинишем овај посао: „Желим да смањим одлив купаца.“ Питајте ме и појасните: (1) да ли је ово класификација или регресија, (2) шта је тачно циљна варијабла и како је треба дефинисати, (3) који би требало да буду критеријуми успеха и зашто. Одлука је моја; представљате питања и опције.

2) Безбедан одељак за обуку/тестирање:

Подели мој дф на тренинг/тестирање 80%/20%. Одржавати дистрибуцију класа (стратификовати).рандом_стате=42. Ово НИЈЕ ВРЕМЕНСКА СЕРИЈА (независна запажања). Одштампајте однос класа сваког скупа након дељења. Само дајте код за раздвајање тестном скупу без примене било какве трансформације.

3) Хронолошка подела временске серије:

Подаци зависе од времена (колона датума: ордер_дате). НЕ насумично, поделите хронолошки: најстарији 80% тренинг, најновији 20% тестирање. Одштампајте периоде обуке и тестирања како бих могао да проверим да будућност није процурила.

4) Постављање основне линије:

Имам проблем са класификацијом (циљ: одлив 0/1). Прво успоставите основну линију: мерите тачност тренинга/тестирања помоћу ДуммиЦлассифиер-а, који увек предвиђа класу већине. Затим тренирајте једноставну логистичку регресију и упоредите да ли она надмашује основну линију. Прикажите метрику два упоредо.

Слаби промпт / Јаки промпт

Слабо обавештење:

Изградите најбољи модел са овим подацима.

„Најбољи“ је недефинисан; Не постоји тип проблема, нема циља, нема критеријума успеха и нема стратегије поделе. АИ генерише насумични образац, вероватно непропусни.

Снажан упит:

Ваша улога: асистент моделинга. Проблем: класификација, циљни „одлив“ (0/1), постоји неравнотежа класа (~12% одлива). Критеријум успеха: Позивање оних који одбацују је приоритет. Подаци независно посматрање (не временске серије). Задатак: (1) 80/20% стратификована подела, (2) основна линија ДуммиЦлассифиер-а, (3) логистичка регресија, све трансформације у току и научено само из обуке. Не додирујте тест сет пре раздвајања.

Овде су јасни тип проблема, неравнотежа, критеријум и мера цурења.

Уобичајене грешке

  • Не бирајући критеријуме успеха према стварној сврси. „Тачност“ у неуравнотеженим подацима је обмањујућа; Ако желите да ухватите мањинску класу, опозив долази у први план.
  • Додиривање тестног сета током тренинга. Скалирање/кодирање пре раздвајања је непропусно и скрива стварне перформансе.
  • Случајно подела у временским серијама. Модел види будућност, колапсира у производњи; Хронолошка подела је неопходна.
  • Ускакање у сложени модел без успостављања основне линије. Без бенчмарка не можете знати да ли је модел заиста добар или не.
  • Игнорисање интерпретабилности. У пословним одлукама, једноставан објашњив модел је често вреднији од црне кутије.
Савет: Пре него што почнете да правите модел, напишите једну реченицу: „Овај модел ће предвидети _____, његов успех ће се мерити метриком _____, јер је права цена посла _____.“ Ако не можете да попуните ову реченицу, још нисте спремни за писање кода.

Укратко

Најкритичнији део изградње модела није код, већ одлуке које му претходе: дефинисање правог проблема (класификација или регресија, шта је циљ, који је критеријум успеха) и правично подела података (без додиривања скупа тестова; хронолошки у временској серији). Увек почните са једноставном основном линијом и додајте сложеност само када она то заслужује; интерпретабилност се у већини пословних контекста цени изнад моћи. АИ је моћан саветник у избору алгоритама и коду, али човек одлучује шта предвиђате и зашто.

Задатак апликације

Дефинишите проблем предвиђања и писмено допуните следећу реченицу: „Овај модел ће предвидети ___ (класификација/регресија), циљ је ___, критеријум успеха је ___ јер ___. Затим поделите податке са правом стратегијом (хронолошки ако је у питању временска серија), успоставите основну линију и измерите да ли једноставан образац крши ту основну линију.

контролна листа

  • [ ] Да ли сам јасно дефинисао тип проблема (класификација/регресија) и циљ?
  • [ ] Да ли сам изабрао критеријум успеха на основу стварне цене посла?
  • [ ] Да ли сам оставио тест сет нетакнут током тренинга?
  • [ ] Ако је у питању временска серија, да ли сам је поделио хронолошки?
  • [ ] Да ли сам успоставио основну линију пре него што пређем на сложени модел?