Како започети са машинским учењем?

Покушаји да се дизајнирају машине паметније од људи нису нови.

Један од врло раних напада које је компјутерска наука извршила на људску „интелигенцију“ био је кроз игру шаха. Многи су шах (или да кажемо да ли је?) сматрали врхунским тестом људског интелекта и креативности, а 1960-их и 70-их година, постојале су различите школе мишљења у компјутерским наукама.

Неки су сматрали да је само питање времена када ће компјутери престићи људе у игрању шаха, док су други веровали да се то никада неће догодити.

Каспаров против Дееп Блуе

Најсензационалнији догађај у којем је учествовао човек против машине у борби мисли био је шаховски меч 1996. између тадашњег светског шампиона Гарија Каспарова (и вероватно најбољег шахиста икада) и Тамно плависуперкомпјутер који је ИБМ дизајнирао управо за овај догађај.

Кредит за слику: Википедиа

Да скратимо причу, Каспаров је убедљиво победио у мечу 1996. (4-2), али је изгубио реванш 1997. (4.5-3.5) уз много контроверзи и Каспаровљеве директне оптужбе за варање против ИБМ-а.

Без обзира на то, ера у шаху и информатици је завршена. Рачунари су имали право паметније од било ког живог човека. ИБМ је, задовољан осветом, демонтирао Дееп Блуе и кренуо даље.

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

Шта није машинско учење?

Пре него што детаљније погледамо машинско учење, хајде да склонимо неке заблуде са пута. Машинско учење, ни у ком случају, није покушај реплицирања људског мозга. Упркос сензационалистичким веровањима попут Елона Маска, истраживачи рачунарских наука тврде да нису у потрази за овим светим зрном и сигурно нигде близу њега.

Једноставно речено, машинско учење је пракса примене процеса учења по примерима на рачунарима. Ово је у супротности са традиционалним приступом ослањања на људског програмера да смисли све могуће сценарије и правила тврдог кода за њих у систем.

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

  Како трајно избрисати свој ИЦК налог

Примене машинског учења

Дакле, ако машинско учење није црна магија и неће ли нешто произвести Терминаторе, чему је оно корисно?

Машинско учење помаже у случајевима када традиционално програмирање пада у воду, а ови случајеви углавном спадају у једну од две категорије.

Као што назив имплицира, класификација се односи на исправно означавање ствари, док предвиђање има за циљ да исправи будуће пројекције, с обзиром на довољно велики скуп података прошлих вредности.

Неке занимљиве примене машинског учења су:

Филтрирање нежељене поште

Спам е-поште је свеприсутан, али покушај да га зауставите може бити ноћна мора. Како се само дефинише нежељена пошта? Да ли је то присуство одређених кључних речи? Или можда онако како је написано? Тешко је смислити исцрпан скуп правила, у погледу програма.

Због тога користимо машинско учење. Систему приказујемо милионе нежељених порука и порука које нису нежељене поште и пуштамо га да схвати остало. Ово је била тајна иза одличних Гмаил филтера за нежељену пошту који су потресли личну е-пошту почетком 2000-их!

Препоруке

Све велике компаније за е-трговину данас имају моћне системе препорука. Понекад је њихова способност да препоруче ствари које бисмо „могли“ сматрати корисним невероватно тачна, упркос томе што никада раније нисмо кликнули на ту ставку.

Случајност? Нимало!

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

Цхатботс

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

Па, онда вас је изиграло Машинско учење!

Учење из разговора и одређивање шта да се каже када је предстојећа и узбудљива област апликације за ћаскање.

Уклањање корова

У пољопривреди се роботи покретани машинским учењем користе за селективно прскање корова и других нежељених биљака усред усева.

Ово би иначе морало да се уради ручно или би било веома расипно јер би систем такође прскао производ течношћу која убија!

Интеракција заснована на гласу са компјутерским системима више није научна фантастика. Данас имамо дигиталне асистенте као што су Алека, Сири и Гоогле Хоме који могу вербално да преузимају команде и да не забрљају (па, скоро!).

  иПхоне не приказује недавне позиве? Испробајте ова 4 поправка

Неки би могли тврдити да је то изум који је најбоље избегавати јер чини људску расу ленијом него икад, али не можете се расправљати о ефикасности.

Медицинска дијагноза

Ми смо на ивици револуције у медицинској дијагностици, јер системи засновани на машинском учењу почињу да надмашују искусне лекаре у дијагноза преко рендгенских зрака итд.

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

Ово је био само пример за шта се користи машинско учење. Аутомобили који се сами возе, ботови за стратешке игре, машине за савијање мајица, разбијање цаптцха-а и бојење црно-белих фотографија дешавају се ових дана.

Врсте машинског учења

Технике машинског учења су две врсте.

Учење под надзором, у којем је систем вођен људским просуђивањем, и Учење без надзора, у којем је систем остављен да учи сам. Други начин да се иста ствар каже је да у контролисаном учењу имамо скуп података који садржи и улазе и очекивани излаз, које систем користи за упоређивање и самоисправљање. У ненадгледаном учењу, међутим, нема постојећег резултата за мерење, тако да резултати могу веома варирати.

Узбудљива примена ненадгледаног машинског учења од које се кости смрзавају?

То би били ботови који играју друштвене игре, при чему се програм учи правилима игре и условима за победу, а затим се препушта сам себи. Програм затим игра милионе игара против себе, учећи из својих грешака и поткрепљујући корисне одлуке.

Ако сте на довољно моћном рачунару, врхунска вештачка интелигенција може бити припремљена за неколико сати!

Следеће слике сажето илуструју ове идеје (извор: Медиум):

Ресурси за почетак машинског учења

Дакле, сада када сте се запалили око машинског учења и како вам оно може помоћи да освојите свет, одакле да почнете?

У наставку сам навео неке фантастичне ресурсе на вебу који вам могу помоћи да постигнете течност у машинском учењу без стицања доктората. у информатици! Ако нисте истраживач машинског учења, сматраћете да је домен машинског учења практичан и пријатан као и програмирање уопште.

Дакле, не брините, без обзира на ваш ниво тренутно, можете, попут доброг програма машинског учења, научити себе и постати бољи. 😛

  Шта су напади човека у средини и како их спречити?

#1. Програмирање

Први услов за улазак у машинско учење је учење програмирања. То је зато што системи машинског учења долазе у облику библиотека за различите програмске језике.

Питхон је најпрепоручљивији, делом зато што је невероватно пријатан за учење, а делом зато што има огроман екосистем библиотека и ресурса.

Тхе званичник Водич за почетнике је одлично место за почетак, чак и ако сте мало упознати са Питхон-ом. Или, узми ово Боотцамп курс да од нуле постанеш херој.

#2. Тхинк Статс

Када завршите са основама Питхона, моја друга препорука би била да прођете кроз две изванредне књиге. Они су 100% бесплатни и доступни као ПДФ за преузимање. Тхинк Статс и Мисли Бајеса су два модерна класика која би сваки амбициозни инжењер машинског учења требало да усвоји.

#3. Удеми

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

Обавезно проверите преглед курса, рецензије (посебно оне негативне!) и општи осећај курса пре него што почнете.

Такође можете бесплатно наићи на невероватне туторијале на ИоуТубе-у. Сентдек је један такав канал који могу да препоручим, где увек иде тона забаве, али његов приступ није прилагођен почетницима.

#4. Андрев Нг

Курс који држи Андрев Нг он Цоурсера је вероватно најпопуларнији ресурс за учење о основама машинског учења.

Иако користи програмски језик Р, остаје без премца у свом третману субјекта и његовим луцидним објашњењима. Због овог курса, Андрев Нг је постигао донекле божанствени стас у круговима МЛ-а, и људи се уздају у њега због врхунске мудрости (не шалим се!).

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

#5. Удацити

Постаните инжењер машинског учења тако што ћете добити овај наностепен Удацити.

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

Закључак

Ресурсима на интернету нема краја и лако се можете изгубити када почнете. Већина туторијала и дискусија су математички изазовни или им недостаје структура и могу вам сломити самопоуздање пре него што почнете.

Дакле, желео бих да вас упозорим на самоуништење: држите скроман циљ и крећите се у минималним корацима. Машинско учење није нешто са чиме се можете опустити у року од дан или два, али ускоро ћете почети да уживате, а ко зна, можда чак и направите нешто застрашујуће!

Забави се! 🙂