Машинско учење без Пајтона, Анаконде и других гмизаваца

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

До тачке. Написао неколико апликативних програма у МС Екцел-у за визуелизацију и визуелно представљање процеса који се јављају у различитим методама машинског учења при анализи података. Видети је ипак веровање, како кажу носиоци културе која је развила већину ових метода (узгред, не све. Најмоћнија „машина вектора подршке“, или СВМ, машина за векторе подршке је изум наш сународник Владимир Вапник Московски институт за менаџмент 1963. иначе! Сада, међутим, предаје и ради у САД).

Три фајла за преглед

1. К-значи груписање

Проблеми овог типа односе се на „учење без надзора“, када почетне податке треба да поделимо на одређени број унапред познатих категорија, али немамо ниједан број „тачних одговора“, већ их морамо издвојити из самих података. . Фундаментални класични проблем проналажења подврста цветова перунике (Роналд Фисхер, 1936!), који се сматра првим знаком ове области знања, управо је такве природе.

Метода је прилично једноставна. Имамо скуп објеката представљених као вектори (скупови од Н бројева). Код перуника, ово су скупови од 4 броја који карактеришу цвет: дужина и ширина спољашњег и унутрашњег режња периантха (Фишерови ириси - Википедија). Уобичајена картезијанска метрика се бира као растојање или мера близине између објеката.

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

Процес се приближава прилично брзо. На сликама у две димензије то изгледа овако:

1. Почетна случајна расподела тачака на равни и број кластера

Машинско учење без Пајтона, Анаконде и других гмизаваца

2. Одређивање центара кластера и додељивање тачака њиховим кластерима

Машинско учење без Пајтона, Анаконде и других гмизаваца

3. Преношење координата центара кластера, прерачунавање припадности тачака док се центри не стабилизују. Видљива је путања центра кластера који се креће у крајњи положај.

Машинско учење без Пајтона, Анаконде и других гмизаваца

У било ком тренутку можете поставити нове центре кластера (без генерисања нове дистрибуције тачака!) и видети да процес партиционисања није увек недвосмислен. Математички, то значи да за функцију која се оптимизује (збир квадрата растојања од тачака до центара њихових кластера) налазимо не глобални, већ локални минимум. Овај проблем се може превазићи или неслучајним избором почетних центара кластера, или набрајањем могућих центара (понекад је корисно поставити их тачно на једну од тачака, тада барем постоји гаранција да нећемо остати празни кластери). У сваком случају, коначни скуп увек има инфимум.

Можете играти са овом датотеком на овом линку (не заборавите да омогућите подршку за макрое. Датотеке су скениране на вирусе)

Опис методе на Википедији - к-меанс метода

2. Апроксимација полиномима и разлагање података. Преквалификација

Изванредан научник и популаризатор науке о подацима К.В. Воронцов укратко описује методе машинског учења као „науку о цртању кривих кроз тачке“. У овом примеру ћемо пронаћи образац у подацима користећи методу најмањих квадрата.

Приказана је техника поделе изворних података на „тренинг” и „контролу”, као и феномен као што је преобука, односно „поновно прилагођавање” подацима. Уз тачну апроксимацију, имаћемо извесну грешку на подацима обуке и нешто већу грешку на контролним подацима. Ако је нетачно, то резултира прецизним прилагођавањем података о обуци и огромном грешком у подацима теста.

(Опште је позната чињеница да се кроз Н тачака може повући једна крива Н-1 степена, а овај метод у општем случају не даје жељени резултат. Лагранжов интерполациони полином на Википедији)

1. Подесите почетну дистрибуцију

Машинско учење без Пајтона, Анаконде и других гмизаваца

2. Поене делимо на „тренинг” и „контролу” у односу 70 према 30.

Машинско учење без Пајтона, Анаконде и других гмизаваца

3. Цртамо апроксимирајућу криву дуж тачака за обуку, видимо грешку коју даје на контролним подацима

Машинско учење без Пајтона, Анаконде и других гмизаваца

4. Нацртамо тачну криву кроз тачке тренинга, и видимо монструозну грешку на контролним подацима (и нулу на подацима о обуци, али у чему је поента?).

Машинско учење без Пајтона, Анаконде и других гмизаваца

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

Датотека је доступна овде, скенирана антивирусом. Омогућите макрое за исправан рад

3. Градијентни пад и динамика промене грешке

Постојаће 4-димензионални случај и линеарна регресија. Коефицијенти линеарне регресије ће се одређивати корак по корак методом градијентног спуштања, у почетку су сви коефицијенти нула. Посебан графикон приказује динамику смањења грешке како се коефицијенти све прецизније прилагођавају. Могуће је видети све четири 2-димензионалне пројекције.

Ако поставите степен градијента спуштања превеликим, можете видети да ћемо сваки пут прескочити минимум и доћи до резултата у већем броју корака, иако ћемо на крају ипак стићи (осим ако не одложимо и корак спуштања много - онда ће алгоритам ићи „у пику“). А графикон грешке у зависности од корака итерације неће бити гладак, већ „трзав“.

1. Генеришите податке, подесите корак градијента спуштања

Машинско учење без Пајтона, Анаконде и других гмизаваца

2. Са исправним избором корака градијента спуштања, глатко и брзо достижемо минимум

Машинско учење без Пајтона, Анаконде и других гмизаваца

3. Ако је корак градијента спуштања погрешно одабран, премашујемо максимум, график грешке је „трзав“, конвергенција траје већи број корака

Машинско учење без Пајтона, Анаконде и других гмизаваца
и

Машинско учење без Пајтона, Анаконде и других гмизаваца

4. Ако потпуно погрешно одаберемо степен градијента спуштања, удаљавамо се од минимума

Машинско учење без Пајтона, Анаконде и других гмизаваца

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

Датотека је на овом линку, потребно је да омогућите макрое, нема вируса.

Да ли је, сматра угледна заједница, такво поједностављење и начин презентовања материјала прихватљив? Да ли је вредно превести чланак на енглески?

Извор: ввв.хабр.цом

Додај коментар