Какво е изкуствен интелект?

Изкуственият интелект е процес на програмиране на компютрите да вземат сами решения. Това означава създаване на алгоритми или набори от правила за сортиране, изучаване и изготвяне на прогнози от данни. Това също включва вземане на решения въз основа на данни, учене от нови данни и подобряване с течение на времето.

Изкуственият интелект е включен в „учебната програма по компютърни науки“ в много университети, училища и клубове за извънкласни занимания. Това е процес на програмиране на компютрите да вземат решения сами. Това означава създаване на алгоритми или набори от правила за сортиране, изучаване и изготвяне на прогнози от данни. Това също включва вземане на решения въз основа на данни, учене от нови данни и подобряване с течение на времето. Ето защо е важно да научите AI. По-подробна информация за това защо децата трябва да учат AI може да бъде достъпна тук.

Ами ако ви кажем, че можете да научите основите на AI с някои „интересни проекти“. В този урок ще ви покажем как да използвате Scratch и машинно обучение заедно, за да създадете проста игра. Ще научите как да обучите Scratch проект да разпознава изображения и да взема решения въз основа на това, което вижда. До края на този урок ще сте създали Scratch игра, задвижвана от AI, на която можете да се наслаждавате с приятелите си.

Какво е машинно обучение?

Машинното обучение е подмножество от AI, което се занимава със създаването на алгоритми, които могат да се учат от и да правят прогнози върху данни. Машинното обучение се фокусира върху способността на компютрите да подобрят своята производителност при конкретна задача, без да са изрично програмирани за това.

Машинното обучение е подмножество от AI, което се занимава със създаването на алгоритми, които могат да се учат от и да правят прогнози върху данни. При машинното обучение ние даваме на компютрите данни (това се нарича обучителни данни) и след това оставяме компютъра сам да измисли правилата. Целта е компютърът да научи достатъчно, за да може да прави добри прогнози за нови данни (това се нарича тестови данни).

Можете да мислите за машинното обучение като за обучение на дете как да разпознава животни. Първо ще покажете на детето няколко снимки на животни и ще им кажете какво представляват. След това ще дадете на детето няколко нови снимки на животни и ще видите дали може правилно да ги идентифицира.

Тъй като детето вижда все повече и повече снимки на животни, то ще започне да научава характеристиките, които правят едно животно животно. След като види достатъчно примери, детето трябва да може да идентифицира правилно нова снимка на животно през повечето време.

Ето как работи машинното обучение. Ние даваме данните за компютърното обучение, които са набор от данни, чиито отговори вече знаем. След това компютърът сам измисля правилата и ги прилага към нови данни (тестови данни), за да прави прогнози.

Машинното обучение често се използва за задачи като разпознаване на изображения, лицево разпознаване, анализ на настроението и откриване на измами.

Нека първо започнем с машинното обучение

За създаване на модел за машинно обучение ще използваме уеб базиран инструмент Google teachable machine. Teachable Machine улеснява обучението на вашите собствени модели за машинно обучение, независимо от опита в програмирането.

С Teachable Machine можете да обучите модел за класификация на изображения да разпознава различни обекти в картини, модел за класификация на звука да разграничава различни звуци или дори модел за оценка на позата на тялото, за да проследява движението на хора в изображенията.

След това можете да използвате тези обучени модели във вашите собствени проекти, като например проект Scratch, който използва класификация на изображения, за да контролира спрайтове, или уебсайт, който използва класификация на звука, за да възпроизвежда различни звуци в зависимост от това, което казва потребителят.

Най-хубавото от всичко е, че Teachable Machine е напълно безплатна и лесна за използване! Така че нека да започнем. Първо отидете до обучаемата машина и щракнете върху започнете.

Ще бъдете помолени да изберете тип проект. За този урок ще използваме типа проект за разпознаване на поза. Кликнете върху проекта Pose.

На следващия екран ще бъдете помолени да посочите различни категории или класове данни. В този проект ще създадем три различни класа като наклон наляво, наклон надясно и неутрален.

След като създадем три класа, трябва да предоставим проби или данни на съответните класове. За да предоставим данни на модела за машинно обучение, можем да отворим нашата уеб камера, за да кликнем върху изображения на нашата лява (наклонена глава наляво), надясно (наклонена глава надясно) и неутрална поза.

След като предоставим набора от данни, трябва да обучим нашия модел. Когато обучението приключи, можем да прегледаме нашия модел. Това все едно тестваме модела. Така че можем да накланяме наляво, накланяме надясно и да даваме неутрални пози (това са тестови данни) пред уеб камерата. Моделът за машинно обучение ще предостави резултата според данните от теста.

Експортен модел

След тестването е време да експортираме нашия модел и да го използваме в Scratch. Кликнете върху връзката Експортиране на модел. На следващия екран трябва да щракнем върху Качване, моят модел. Когато качването приключи, ще получим връзка, която можем да копираме (Щракнете върху бутона за копиране, както е показано на изображението).

Сега изключете вашата уеб камера на машината Teachable, като използвате бутона за превключване, показан на изображението по-долу.

Използвайте модел в Scratch AI интерфейс

Сега трябва да отворим друго приложение, базирано на браузър, т.е. PRG AI blocks. Връзката към подобен сайт на Scratch, който съдържа AI блокове, е написана по-долу

https://mitmedialab.github.io/prg-extension-boilerplate/create/

Уебсайтът ще ви отведе до среда, подобна на Scratch, с разширения за AI. Следващата стъпка е да добавите разширението. За да добавим разширение трябва да щракнем върху бутона в долната част на страницата.

Когато щракнете върху бутоните за разширение, ще отидете на страница с различни разширения. Сега натиснете удължението на обучаемата машина, за да получите обучаемите машинни блокове.

Следващата стъпка е да вземете два спрайта. Взехме момиче магьосник и звезден дух в този проект.

Първо ще кодираме момичето-магьосник. Момичето магьосник трябва да се движи наляво, когато се накланяме наляво (пред уеб камерата), да се движи надясно, когато се накланяме надясно и когато е неутрална поза, не трябва да има промяна в посоката на спрайта на момичето магьосник .

Трябва да активираме модела за машинно обучение (създаден в Teachable машина) в интерфейса на Scratch AI. За целта трябва да поставим връзката в машинния блок Teachable, както е показано на снимката по-долу

Ще използваме манипулатора на събития „при щракване върху зеления флаг“ с блока за използване на модела, за да активираме модела за машинно обучение. Когато моделът е активиран, ще видите зелена отметка (както е показано на снимката). Освен това класовете ще се появят в обучаемите машинни блокове (както е показано на снимката).

Пълният код за момичето магьосник е показан по-долу за справка. Ще създадем две променливи (i) посока, която ще помогне при движението на спрайта и (ii) Резултат, който се увеличава, когато момичето магьосник хване звездата.

Освен това трябва да кодираме звездите, така че да падат от горната част на екрана и да се появяват на произволни места.

Клонингът за звездите се създава на фона. Кодът за същото е показан на снимката по-долу.

Време е да се насладите на играта. Когато сте готови, щракнете върху бутона за флаг, за да започнете да играете. Можете да видите класификацията на вашата поза на живо в сценичния монитор, ако блокът за прогнозиране на модела е отметнат (в разширението Teachable machine).

Докато накланяте глава, посоката на момичето-магьосник се променя. Момичето магьосник се движи наляво, когато наклоните главата си наляво, а момичето магьосник се движи надясно, когато наклоните главата си надясно. Целта на играта е да хванете възможно най-много звезди. Успех в улавянето на звездите!

Заключение

Създаването на проекти за машинно обучение със Scratch е толкова забавно и лесно. В този проект видяхме как да използваме Scratch и AI заедно, за да направим интерактивна игра. Ние обучихме модел за машинно обучение с помощта на Teachable Machine и го използвахме в Scratch. Нашите ученици в SkoolofCode се забавляват да учат концепции за AI с помощта на Scratch разширения. Това е само един пример от многото възможности, които Scratch и AI предлагат. Така че опитайте различни неща и вижте какво можете да създадете!