Dirbtinis intelektas buvo pradėtas tyrinėti po Antrojo pasaulinio karo, kai keletas pionierių pradėjo klausti, ar kompiuteriai galės mąstyti - ir šio klausimo iki šiol nesame atsakę.
Platus dirbtinio intelekto apibrėžimas yra „automatizuoti būdai atlikti intelektualines užduotis, kurios įprastai atliekamos žmonių“. Dirbtinis intelektas aprėpia mašininį mokymąsi ir gilųjį mokymąsi, bet taip pat ir daugybę kitų dalykų, kurie nėra priskiriami mokymuisi. Taisyklės ankstyvose šachmatų programose būdavo įrašomos programuotojų ir nebuvo laikomos mašininiu mokymusi, bet priklausė dirbtinio intelekto tyrimams. Metodas, vadinamas simboliniu dirbtiniu intelektu, ir buvo pagrindinė dirbtinio intelekto tyrimo srovė nuo šeštojo iki devintojo dešimtmečių. Devintajame dešimtmetyje jis pasiekė didžiausią populiarumą kaip ekspertinės sistemos.
Nors simbolinis dirbtinis intelektas galėjo išspręsti gerai apibrėžtas logines problemas kaip žaidimas šachmatais, pasirodė, kad to neužtenka daugumai realaus pasaulio problemų, kaip nuotraukų klasifikavimas ar balso atpažinimas ir kalbos vertimas. Tai sukėlė antrąją dirbtinio intelekto žiemą.
Maždaug po šimto metų ši mintis buvo panaudota Alano Turingo straipsnyje „Skaičiavimo mašinos ir intelektas“. Šiame straipsnyje jis taip pat aprašė Turingo testą, skirtą nustatyti mašinos gebėjimą rodyti protingą elgesį, kuris būtų neatskiriamas nuo žmogaus. Turingas pasiūlė, kad žmogus turėtų vertinti natūralius pokalbius tarp mašinos ir žmogaus, ir mašinos, kuri gali generuoti atsakymus panašius į žmogaus. Vertintojas turi žinoti, kad vienas iš partnerių pokalbyje yra mašina, dalyviai yra atskirti vienas nuo kito, o pokalbiai apriboti rašytu tekstu.
Mašinos, pagrįstos simboliniu dirbtiniu intelektu, negalėjo mokytis iš naujų duomenų. Tai paskatino atsirasti tyrimų sričiai, vadinamai mašininiu mokymusi, kuris apibrėžiamas kaip „kompiuterio apmokymas iš duotų duomenų“, užuot jį tiksliai užprogramavus. Nors mašininis mokymasis atsirado tik dešimtajame dešimtmetyje, jis greitai tapo daugiausiai naudojama dirbtinio intelekto atmaina. Tą nulėmė padidėjusios duomenų bazės, galingesni kompiuteriai.
Mašininis mokymasis skiriasi nuo klasikinio programavimo tuo, kad žmogus paduoda duomenis, atsakymus ir gauna taisykles, kurios vėliau gali būti naudojamos naujiems duomenims apdoroti. Mašininis mokymasis skirstomas į dvi rūšis: prižiūrimą (supervised) ir neprižiūrimą (unsupervised). Pirmuoju atveju bent dalis duomenų yra sužymėti ir iš to atrandamos taisyklės, kaip prognozuoti žymes naujiems duomenims.
Neuroniniai tinklai sudaryti iš daugybės paprastų ir tarpusavyje sujungtų procesorių, vadinamų dirbtiniais neuronais. Šie dirbtiniai neuronai savo struktūra šiek tiek primena natūralius neuronus dėl savo gaunamos, transformuojamos ir perduodamos informacijos. Nors dalinai buvo išvystyti žiūrint į tikras smegenis, gilūs neuroniniai modeliai su jomis turi mažai bendro.
Lūžis įvyko devintajame dešimtmetyje, kai keletas žmonių nepriklausomai atrado grįžtamojo perdavimo (backpropagation) algoritmą, ir pradėjo jį naudoti neuroniniams tinklams. Pirmas sėkmingas panaudojimas įvyko 1989 m. „BellLabs“, kai Yannas LeCunas panaudojo konvoliucinius tinklus kartu su grįžtamuoju perdavimu atpažinti ranka rašytiems skaičiams.
Dar vienas lūžis atsirado apie 2010 m. ir buvo nulemtas kelių įvykių: Fei-Fei Li, dirbtinio intelekto profesorius Stanforde, sukūrė „ImageNet“ duomenų bazę su 14 milijonų sužymėtų paveiksliukų, kurie galėjo būti naudojami tinklų treniravimui; per kelis metus po to grafinių procesorių greitis stipriai padidėjo ir tai leido mokyti konvoliucinius tinklus be vadinamojo „pradinio apmokymo sluoksnis po sluoksnio“ (layer by layer pretraining). Tai leido giliam mokymuisi vystytis ir tokie konvoliuciniai tinklai kaip „AlexNet“ laimėjo keletą tarptautinių paveikslėlių klasifikavimo konkursų 2011 m.
Gilų mokymasis yra mašininio mokymosi atšaka, kur kiekvienas sluoksnis išmoksta vis abstraktesnius duomenų bruožus. Jis vadinamas giliu, nes turi daugiau nei kelis sujungtus neuronų sluoksnius.
Konvoliuciniai tinklai (convolutional networks arba ConvNets) yra skirti apdoroti duomenims eilutėse arba matricose, tarkim spalvotiems paveikslėliams, kurie sudaryti iš dviejų dimensijų erdvėje su trimis spalvų intensyvumo kanalais. Dauguma surenkamų duomenų yra sudaryti iš keliamačių eilučių: vienos dimensijos eilutės signalams ir sekoms, dviejų - paveikslėliams ir garso spektogramoms, trijų - video arba tūriniams paveikslėliams. Konvoliuciniai tinklai pagrįsti keturiomis idėjomis: vietinėmis jungtimis, bendrais svoriais, raiškos sumažinimu ir daugybės sluoksnių naudojimu. Šie tinklai būvo įkvėpti 1986 metų tyrimo, kuriame buvo nagrinėjamas vaizdo apdorojimas katės smegenyse.
Anksčiau paminėti tinklai turi bendrą savybę - jie neturi atminties. Kiekvienas paduodamas pavyzdys apdorojamas atskirai ir būsena nėra išsaugoma tarp jų. Tarkime, kad dabar, skaitant šį tekstą, mūsų smegenys jį apdoroja kiekvieną kartą, kai mūsų akys pajuda ir perskaito keletą žodžių, laikydamos prieš štai perskaitytą informaciją atmintyje. Biologinės sistemos lengvai apdoroja nuolat atnaujinamą informaciją, laikydamos atmintyje seną.
Skatinamasis mokymasis yra retai sutinkamas kitur, nei akademinėje aplinkoje, nors po „Google“ „DeepMind“ gebėjimo žaisti „Atari“ žaidimus ir vėliau laimėjimų žaidžiant „Go“, jis pritraukia daugiau dėmesio. Tai ypač paprasta žaidimuose, kur neuroninis tinklas gauna informaciją apie tai, kas vyksta ekrane ir koks yra taškų skaičius ir per laiką išmoksta elgtis taip, kad maksimizuotų taškų skaičių. Nors kol kas mažai taikomas, laikui bėgant šitas metodas gali rasti platų pritaikymą: autonominiams automobiliams, robotams, resursų paskirstymui ir pan. Norėdamos tai paskatinti, keletas firmų yra išleidusios dirbtines aplinkas eksperimentams - tarkime „Microsoft“ padarė specialią „Minecraft“ aplinką testavimui.

Octave mokymo kursai
Octave kursai gali padėti jums išmokti skaitinius skaičiavimus, duomenų vizualizaciją, algoritmų įgyvendinimą ir matematinius modelius. Galite įgyti įgūdžių, susijusių su matricos operacijomis, statistine analize ir signalų apdorojimo technikomis. Daugelis kursų pristato tokias priemones kaip „Octave“ integruota kūrimo aplinka ir optimizavimo bibliotekos, leidžiančios taikyti šiuos įgūdžius realiems projektams ir tyrimams.
Populiarūs Octave kursai ir sertifikatai
- Octave Programming: Analyze, Apply & Implement: EDUCBA
- Octave for Machine Learning: Data Analysis Mastery: EDUCBA
- GNU Octave: Apply, Implement & Design Functions: EDUCBA
- Octave for Machine Learning: Analyze & Visualize: EDUCBA
- Applied Kalman Filtering: University of Colorado System
- Octave Machine Learning: Apply, Analyze & Build: EDUCB
Šie kursai apima tokias temas kaip:
- Įvadas į GNU Octave, jo diegimo procesą ir pagrindines matricos operacijas.
- Stygų manipuliavimas, tekstų apdorojimas ir efektyvus duomenų tvarkymas.
- Simbolinė matematika, sudėtingas diferencialinis ir integralinis skaičiavimas bei polinominiai skaičiavimai.

Baigę šiuos kursus, besimokantieji galės įdiegti Octave, atlikti matricos operacijas, manipuliuoti eilutėmis, apdoroti duomenis, taikyti simbolinę matematiką ir vizualizuoti statistinius modelius mašininio mokymosi užduotims.