JavaRush /Java блогы /Random-KK /Deep Learning, жасанды интеллект және манекендерге арналғ...

Deep Learning, жасанды интеллект және манекендерге арналған машиналық оқыту: мысалмен түсіндірілді

Топта жарияланған
Әріптестеріңіздің ортасында өзіңіздің интеллектіңізбен жарқ еткіңіз келе ме немесе ағымдағы техникалық тақырыптар бойынша әңгімелесуде достарыңызды таң қалдырғыңыз келе ме? Әңгімеде «Жасанды интеллект» немесе «Машинаны үйрену» деп атаңыз және сіз аяқтадыңыз. Манекендерге арналған Deep Learning, жасанды интеллект және машиналық оқыту: мысалмен түсіндірілді - 1«Жасанды интеллект» термині қазір кең таралған. Бағдарламашылар AI үйренгісі келеді. Көшбасшылар AI-ды өз қызметтеріне енгізгісі келеді. Бірақ іс жүзінде тіпті кәсіпқойлар да «AI» дегеннің не екенін түсінбейді. Бұл мақала «жасанды интеллект» және «машинада оқыту» терминдерін түсінуге көмектесуге арналған. Сондай-ақ сіз машиналық оқытудың ең танымал түрі Deep Learning қалай жұмыс істейтінін білесіз. Ең бастысы, бұл нұсқаулар өте қолжетімді тілде жазылған. Мұнда математиканы түсіну қиын болмайды.

Негіздер

Терең оқытудың не екенін түсінудің бірінші қадамы негізгі терминдер арасындағы айырмашылықты түсіну болып табылады.
Deep Learning, жасанды интеллект және манекендерге арналған машиналық оқыту: мысалмен түсіндірілді - 2
Сурет: Датанами

Жасанды интеллект және машиналық оқыту

Жасанды интеллект (AI немесе AI agnl.) — адамның ойлау процесін компьютер арқылы көшіру әрекеті. Жасанды интеллект саласындағы зерттеулер енді ғана басталған кезде, ғалымдар адам интеллектінің мінез-құлқын белгілі бір жағдайларда қатаң түрде көшіруге тырысты, яғни белгілі бір мәселелерді шешу үшін оны өткірлендірді. Мысалы, машина ойын ойнай алатындай етіп. Олар есептеуіш машина ұстануға тиісті бірқатар ережелерді белгіледі. Компьютерде мүмкін болатын әрекеттер тізімі болды және ол жобалау кезеңінде белгіленген ережелер мен шектеулер негізінде шешім қабылдады.
Machine Learning (ағылшын тілінде ML немесе ML) машинаның нақты анықталған ережелердің орнына ақпараттың үлкен жиынын өңдеу арқылы үйрену мүмкіндігін білдіреді.
ML компьютерлерге өздігінен білім алуға мүмкіндік береді. Оқытудың бұл түрі үлкен көлемдегі деректерді оңай өңдей алатын заманауи есептеу техникасының артықшылықтарын пайдаланады.

Бақыланатын оқыту және бақылаусыз оқыту

Бақыланатын оқыту кірістер мен күтілетін нәтижелерден тұратын таңбаланған деректер жиынын пайдаланады. Бақыланатын оқытуды пайдалана отырып, жасанды интеллект жаттықтыру кезінде сіз деректерді кіріс ретінде бересіз және нәтиже қандай болуы керектігін көрсетесіз. Егер AI шығаратын нәтиже күткеннен өзгеше болса, онда AI өз есептеулерін түзетуі керек. AI қателіктер жібергенше, процесс деректер массивінде бірнеше рет қайталанады. Бақыланатын оқытудың мысалы ауа райын болжайтын жасанды интеллект болуы мүмкін. Тарихи мәліметтерді пайдалана отырып, ауа райын болжауды үйренеді. Енгізілетін деректер қысым, ылғалдылық және жел жылдамдығы болып табылады, нәтижесінде біз температураны алуымыз керек. Бақылаусыз оқыту – құрылымданбаған деректерді пайдалана отырып, AI оқытудан тұратын тапсырма. Бақыланbyteын оқыту арқылы жасанды интеллект жаттықтыру кезінде сіз AI-ға деректердің логикалық жіктелуін жасауға мүмкіндік бересіз. Бақыланbyteын машиналық оқытуды пайдаланатын жасанды интеллект мысалы - интернет-дүкенде тұтынушылардың мінез-құлқын болжайтын робот. Ол алдын ала белгілі кірістер мен шығыстарды пайдаланбай үйренеді. Оның орнына ол кіріс деректерінің өзін жіктеуі керек. Алгоритм пайдаланушылардың қай түрі қандай өнімдерді қалайтынын анықтауы және айтуы керек.

Машиналық оқыту қалай жұмыс істейді

Сонымен, Deep Learning - машиналық оқыту тәсілдерінің бірі. Ол берілген кіріс деректерінен нәтижелерді болжауға мүмкіндік береді. Жасанды интеллектті үйрету үшін жоғарыда аталған екі нұсқаны да пайдалануға болады: бақыланатын және бақылаусыз оқыту. Біз Deep Learning қалай жұмыс істейтінін нақты мысал арқылы түсінеміз: әуе тасымалының бағасын болжау қызметін әзірлеу керек делік. Бақыланатын әдіс арқылы алгоритмімізді жаттықтырамыз. Әуе тасымалының бағасын болжауға арналған қызметіміз келесі кіріс деректер негізінде бағаны болжағанын қалаймыз (көрсету ыңғайлылығы үшін кері рейсті есепке алмаймыз):
  • ұшып кету әуежайы;
  • келу әуежайы;
  • жоспарланған кету күні;
  • әуе компаниясы.
Нейрондық желілер Жасанды интеллекттің миын қарастырайық. Биологиялық тірі тіршілік иелері сияқты, біздің болжаушының «басында» нейрондары бар. Суретте олар шеңбер түрінде берілген. Нейрондар бір-бірімен байланысқан.
Манекендерге арналған Deep Learning, жасанды интеллект және машиналық оқыту: мысалмен түсіндірілді - 3
Суретте нейрондар қабаттардың үш тобына біріктірілген:
  • кіріс қабаты;
  • жасырын қабат 1 (жасырын қабат 1) және жасырын қабат 2 (жасырын қабат 2);
  • шығыс қабаты.
Кейбір деректер енгізу деңгейіне енеді. Біздің жағдайда кіріс қабатында төрт нейрон бар: кету әуежайы, келу әуежайы, кету күні, авиакомпания. Енгізу деңгейі деректерді бірінші жасырын қабатқа жібереді. Жасырын қабаттар алынған кіріс деректеріне негізделген математикалық есептеулерді орындайды. Нейрондық желілерді құрудағы негізгі мәселелердің бірі жасырын қабаттардың санын және әрбір қабаттағы нейрондардың санын таңдау болып табылады.
Deep Learning тіркесіндегі Deep сөзі бірнеше жасырын қабаттардың бар екенін көрсетеді.
Шығару деңгейі алынған ақпаратты бізге қайтарады. Біздің жағдайда рейстің күтілетін бағасы.
Deep Learning, жасанды интеллект және манекендерге арналған машиналық оқыту: мысалмен түсіндірілді - 4
Біз осы уақытқа дейін ең қызықты нәрсені жіберіп алдық: күтілетін баға нақты қалай есептеледі? Deep Learning сиқыры осы жерден басталады. Нейрондар арасындағы әрбір байланысқа белгілі бір салмақ (коэффициент) тағайындалады. Бұл салмақ кіріс мәнінің маңыздылығын анықтайды. Бастапқы салмақтар кездейсоқ түрде орнатылады. Әуе тасымалының құнын болжау кезінде, ұшу күні бағаға көбірек әсер етеді. Сондықтан «кету күні» нейронының байланыстары көбірек салмаққа ие.
Deep Learning, искусственный интеллект и машинное обучение для чайников: объяснение на примере  - 5
Әрбір нейронның оған қосылған белсендіру функциясы бар. Математикалық білімсіз бұл функцияның не екенін түсіну қиын. Олай болса, біршама жеңілдетейік: белсендіру функциясының мәні нейроннан шығуды «стандарттау» болып табылады. Деректер жинағы нейрондық желінің барлық қабаттарынан өткеннен кейін нәтижені шығыс қабаты арқылы қайтарады. Әзірге бәрі түсінікті, солай ма?

Нейрондық желіні оқыту

Нейрондық желіні оқыту - Deep Learning бағдарламасының ең қиын бөлігі! Неліктен? Өйткені сізге үлкен көлемдегі деректер қажет. Өйткені сізге көбірек есептеу қуаты қажет. Біздің жобамыз үшін әуе билетінің тарихи деректерін табуымыз керек. Сонымен қатар, ұшу және тағайындалған әуежайлардың, ұшу күндерінің және әртүрлі авиакомпаниялардың барлық ықтимал комбинациялары үшін. Бізге билет бағасы туралы деректердің өте үлкен көлемі қажет. Біз жиынтықтағы кіріс деректерін нейрондық желінің кірістеріне беріп, олардың бізде бар нәтижелерге сәйкес келетінін тексеруіміз керек. Егер жасанды интеллект алған нәтижелер күткеннен өзгеше болса, бұл оның әлі жеткілікті түрде дайындалмағанын білдіреді. Нейрондық желі арқылы деректердің толық көлемін іске қосқаннан кейін, AI нәтижелері деректер жиынындағы нақты нәтижелерден қаншалықты ерекшеленетінін көрсететін функцияны құра аламыз. Мұндай функция шығындар функциясы деп аталады . Біз бар күш-жігерімізбен ұмтылатын идеалды жағдайда, біздің шығындар функциясының мәндері нөлге тең. Бұл нейрондық желі таңдаған құн нәтижелері біздің деректер жиынындағы билеттердің нақты құнынан ерекшеленбейтінін білдіреді.

Шығындар функциясының мәнін қалай азайтуға болады?

Біз нейрондар арасындағы байланыстардың салмақтарын өзгертеміз. Мұны кездейсоқ жасауға болады, бірақ бұл әдіс тиімді емес. Оның орнына біз Gradient Descent деп аталатын әдісті қолданамыз .
Градиенттің түсуі – функцияның минимумын табуға мүмкіндік беретін әдіс. Біздің жағдайда біз шығындар функциясының минимумын іздейміз.
Бұл алгоритм деректер жиынтығын өңдеудің әрбір жаңа итерациясынан кейін салмақтарды біртіндеп арттыру арқылы жұмыс істейді. Салмақтардың белгілі бір жиынтықтары үшін шығын функциясының туындысын (немесе градиентін) есептеу арқылы біз минимум қай бағытта болатынын көре аламыз.
Deep Learning, искусственный интеллект и машинное обучение для чайников: объяснение на примере  - 6
Суретте: Бастапқы салмақ – бастапқы салмақ, Жаһандық шығын минимумы – шығындар функциясының ғаламдық минимумы. Шығын функциясын азайту үшін біз деректер жиынтығымызда бірнеше рет есептеулерді орындауымыз керек. Сондықтан сізге көп есептеу қуаты қажет. Салмақтар градиентті төмендету әдісі арқылы автоматты түрде жаңартылады. Бұл терең оқытудың сиқыры! Біз AI ұшу бағасын болжау қызметін үйреткеннен кейін, біз оны нақты бағаларды болжау үшін қауіпсіз пайдалана аламыз.

Жинақтау…

  • Терең оқыту интеллектті модельдеу үшін нейрондық желілерді пайдаланады.
  • Нейрондық желіде нейрондардың үш түрі бар: кіріс қабаты, жасырын қабаттар, шығыс қабаттар.
  • Нейрондар арасындағы әрбір байланыстың өзіндік салмағы бар, бұл кірістің маңыздылығын көрсетеді.
  • Нейрондар нейронның шығысын «стандарттау» үшін белсендіру функциясын пайдаланады.
  • Нейрондық желіні жаттықтыру үшін деректердің үлкен көлемі қажет.
  • Егер біз нейрондық желіні пайдаланып деректер массивін өңдейтін болсақ және шығыс деректерін нақты деректермен салыстырсақ, біз AI қаншалықты дұрыс емес екенін көрсететін шығын функциясын аламыз.
  • Әрбір деректерді өңдеуден кейін шығындар функциясының төмендеуіне қол жеткізу үшін нейрондар арасындағы салмақтар градиентті түсіру әдісі арқылы реттеледі.
Түпнұсқаға сілтеме
Пікірлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION