Närvivõrgud ja programmeerimine: Difference between revisions
Created page with "=Tehisnärvivõrkude arengu ajalugu= Närvivõrkude mõiste oli formuleeritud 1943. aastal<ref>[https://en.wikipedia.org/wiki/Warren_Sturgis_McCulloch, "Warren Sturgis McCullo..." |
No edit summary |
||
Line 64: | Line 64: | ||
Bill Gates: “The power of artificial intelligence is “so incredible, it will change society in some very deep ways...” “...The world hasn’t had that many technologies that are both promising and dangerous — you know, we had nuclear energy and nuclear weapons”<ref>[https://www.cnbc.com/2019/03/26/bill-gates-artificial-intelligence-both-promising-and-dangerous.html#:~:text=Megan%20DeMatteo-,Bill%20Gates%3A%20A.I.%20is%20like%20nuclear,%E2%80%94%20'both%20promising%20and%20dangerous'&text=The%20power%20of%20artificial%20intelligence,Microsoft%20co%2Dfounder%20Bill%20Gates Catherine Clifford, "Bill Gates: A.I. is like nuclear energy — ‘both promising and dangerous", 26.05.2019]</ref>. | Bill Gates: “The power of artificial intelligence is “so incredible, it will change society in some very deep ways...” “...The world hasn’t had that many technologies that are both promising and dangerous — you know, we had nuclear energy and nuclear weapons”<ref>[https://www.cnbc.com/2019/03/26/bill-gates-artificial-intelligence-both-promising-and-dangerous.html#:~:text=Megan%20DeMatteo-,Bill%20Gates%3A%20A.I.%20is%20like%20nuclear,%E2%80%94%20'both%20promising%20and%20dangerous'&text=The%20power%20of%20artificial%20intelligence,Microsoft%20co%2Dfounder%20Bill%20Gates Catherine Clifford, "Bill Gates: A.I. is like nuclear energy — ‘both promising and dangerous", 26.05.2019]</ref>. | ||
=Närvivõrgu abil probleemide lahendamise etapid= | |||
==Andmete kogumine õppimise jaoks== | |||
Esimene samm on loomulikult närvivõrgu abil lahendatava probleemi valik. Siis saate hakata andmeid koguma. Seda etappi võib pidada kõige keerulisemaks, sest tulemuse kvaliteet sõltub täielikult andmetest, millele võrk on õpitud. Närvivõrgu õpetamiseks on vaja palju andmeid ja mida rohkem, seda parem ja need peavad olema ‘’’esinduslikud’’’ (kuvama selgelt koolituse jaoks vajalikud elemendid) ja ‘’’järjepidevad’’’ (vastuolulised andmed halvendavad komplekti õppimise kvaliteeti).<ref name=”Statsoft”>[http://statsoft.ru/home/textbook/default.htm, Учебник по статистике, 2012]</ref> | |||
==Andmete ettevalmistamine õppimiseks== | |||
Kogutud andmed tuleb enne õppimisele edastamist korrastada. Selleks võib kasutada kahte meetodit: ‘’’normaliseerimine’’’ ja ‘’’standardiseerimine’’’. | |||
‘’’Normaliseerimise’’’ käigus muudetakse andmed nii, et need jäävad vahemikku 0 kuni 1. Seda meetodit saab kasutada, kui teil on täpne ettekujutus andmete maksimaalsest ja minimaalsest väärtusest. | |||
‘’’Standardiseerimine’’’ hõlmab andmete väärtuste jaotuse muutmist nii, et andmete keskmine oleks 0 ja standardhälve 1.<ref>[https://machinelearningmastery.com/how-to-improve-neural-network-stability-and-modeling-performance-with-data-scaling/, Jason Brownlee, “How to use Data Scaling Improve Deep Learning Model Stability and Performance”, 04.02.2019]</ref><ref>[https://www.analyticsvidhya.com/blog/2020/04/feature-scaling-machine-learning-normalization-standardization/, Aniruddha Bhandari, “Feature Scaling for Machine Learning”, 03.04.2020]</ref> | |||
Need andmed tuleb jagada ka mitmeks osaks: andmed ‘’’õppimise’’’, ‘’’kohandamise‘’’ ja ‘’’testimise‘’’ jaoks.(training, validation and test data). | |||
‘’’Õppimise‘’’ jaoks on kõige suurem osa andmetest (umbes 80%), nii et närvivõrk saab õigesti õppida andmeside üldistamist. | |||
‘’’Kohandamise‘’’ andmed on vaja võrgu parameetrite häälestamiseks, et parandada algoritmi jõudlust. | |||
‘’’Testi‘’’ andmed kasutatakse pärast õppimise etappi parandatud võrgu algoritmi õige toimimise kontrollimiseks. Neid andmeid ‘’’ei tohiks‘’’ koolitusel kasutada.<ref>[https://becominghuman.ai/step-by-step-neural-network-tutorial-for-beginner-cc71a04eedeb, Tirmidzi Faizal Aflahi, Becoming Human, 19.06.2019]</ref> | |||
==Võrgu tüübi valik== | |||
Võrgu õppimise tüübi valik sõltub antud ülesandest. ‘’’Juhendatud õpega‘’’ (supervised learning) võrkude puhul peavad sisendite kohta olema teada väljundi tulemused. Kui sisendandmete jaoks ei ole väljundandmed teada, siis sobib juhendamata õpe võrk. (unsupervised).<ref name=”Statsoft” /> | |||
==Võrgu õppimine== | |||
Näiteks võib tuua ‘’’Mitmekihiline perceptron‘’’ (multilayer perceptron). Võrk koosneb mitmest neuronikihist, kus iga neuron sisaldab ‘’’aktiveerimisfunktsiooni‘’’ ja kaalu, millest sõltub sisendandmete olulisus. Sellises võrgus edastatakse signaale otse - sisendandmetest väljundandmeteni. | |||
Sisend- ja väljundkihid on alati ükshaaval ja nende elementide arv sõltub probleemi seisukorrast. Enne treeningprotsessi algust ei saa valida nendes õige vahekihtide ja elementide arvu, seega peaksite valima juhusliku arvu kihte ja elemente, mida saab seejärel muuta. | |||
Järgmine samm on leida võrgu kaalude ja künniste väärtused. ‘’’Õppimis algoritmid‘’’ aitavad selle eesmärgi saavutamisel. ‘’’Ennustus vigade‘’’ (prediction error) minimeerimiseks reguleerivad nad automaatselt võrgu kaalu ja künniseid. Võrgu konfiguratsiooni viga määratakse andmete käitlemise kaudu läbi võrgu ja tulemuste võrdlemise oodatavate tulemustega. Nendest erinevustest saadakse ‘’’kaotus funktsioon‘’’ (loss function), mille väärtus on ‘’’võrguviga‘’’. Kasutades ‘’’backpropagation algoritmi‘’’, levitatakse ekslikke andmeid väljundist läbi kõigi vahekihtide. Iga kihis olev neuron saab selle eksliku signaali osa, mille ta sisestas tulemuse kontole. | |||
Õppimise Algoritm lühikirjeldus<ref name=”TowardsData”>[https://towardsdatascience.com/learning-process-of-a-deep-neural-network-5a9768d7a651, Jordi TORRES.AI, 21.04.2020]</ref>: | |||
Õppimis andmete edastamine võrgu kaudu väljundi genereerimiseks | |||
Saadud andmete võrdlus oodatava tulemusega | |||
Arvutage ennustus viga ja backpropageerige | |||
Saadud teabe abil muudab võrguvigade vähendamiseks võrgu parameetreid | |||
Korrake seda protsessi, kuni saate hea võrgumudeli.<ref name=”Statsoft” /><ref name=”TowardsData” /> | |||
==Võrgu korrektsuse kontrollimine== | |||
Nüüd tuleb tekkinud närvivõrku kontrollida, kui hästi see oma ülesannet täidab. Närvivõrkude levinud probleem on ümberõpe (overfitting). Õppimisandmete võrguviga muutub minimaalseks, kuid näitab testiandmetel täiesti valesid tulemusi. <ref name=”Statsoft” /> | |||
Õppimiseks peaks valima ka õiged andmed, sest võrk õpib seda, mida on kõige lihtsam õppida. Näiteks kui õppimis toimub piltide kohta ja “õiged” pildid on tumedad ja “valed” heledad, õpib võrk pilte eraldama värvitooni, mitte soovitud tingimuste järgi. Ka “õiged” ja “valed” andmed peavad olema võrdses vahekorras. Kui mõned andmed on rohkem kui teised, siis on võrgu tulemused kallutatud vastavalt sellele, milliseid andmeid oli rohkem.<ref name=”Statsoft” /> |
Revision as of 17:47, 13 December 2020
Tehisnärvivõrkude arengu ajalugu
Närvivõrkude mõiste oli formuleeritud 1943. aastal[1]. Närvivõrgu põhielement on tehisintellekt (AI). Seega, et näha kogu rada, mida mööda inimkond on lähenenud närvivõrgu avastamisele, tuleb alustada AI-st. Tehisintellekti on uurinud nii matemaatikud kui ka filosoofid. Tuleb lisada, et varem need kaks teadust olid tihedalt seotud ja ühe areng täiendas teist.
Olulised sündmused filosoofias närvivõrkude jaoks
Allpool loetletud sündmuste järgi võib jälgida, kuidas inimkond läheneb mõttele, et mõistust on võimalik imiteerida.
Esimesed olulised sammud olid inimkonna katsed mõista loogika olemust: Mis vormis on vaja mõelda, et järeldus oleks loogiline? Millised on mõistuse põhimõtted? Aristoteles tegi tähelepanuväärse panuse selleks teaduseks. Aristoteles kirjutas esimesena täpse seaduste kogumi, mille järgi ratsionaalne mõtlemine peaks töötama. Tema teos võimaldas inimesel kujundada oma järeldusi mehaaniliselt, kasutades juba loodud algoritmi[2].
Edasi tuleb mainida Ramon Llull-i loogikamasinat. Ramon lõi selle 13. sajandil. Masin töötab kombinatorika põhimõtete järgi. Llull arvas, et vanade tõdede põhjal saab koostada uusi tõdesid tema masina abil[3].
Üks olulisemaid 17. sajandi filosoofe Thomas Hobbes väitis, et „me lisame ja lahutame vastu tahtmist oma mõtetes”[4]. Mõiste „teadvus” näib olevat loogilisem ja arvutatav.
David Jung kirjeldab oma traktaadis “Treatise of human nature” meetodi, mida nüüd nimetatakse matemaatiliseks induktsioonimeetodiks. Meetodit kasutatakse, et tõestada mingi väite tõesust, kõikide naturaalarvude jaoks[5]. David Jung oli ka loogilise positivismi eellane[6], millest kirjutatakse allpool
Loogilise positivismi filosoofiat arenedasid peamiselt filosoofide rühm, mida nimetatakse "Viini ringiks". Loogilise positivismi idee seisneb selles, et maailma uurimine peaks olema puhtalt ratsionaalne. Selle rühma juht oli Rudolf Carnap. 1950. aastal Carnap kirjutas „Tõenäosuse loogilised alused“. Oma raamatus Canap töötas välja doktriini mille mõtte seisneb selles, et kõiki teadmisi saab iseloomustada loogiliste teooriatega. Oma raamatus püüab ta mõista: kuidas teadmised tulevad kogemustest ja kuidas teadvus ennast arendab”[7]. Küsimused, millele on vaja vastata, et tehisintellekti luua.
Olulised sündmused matemaatikas närvivõrkude jaoks
Filosoofia alati arenes koos matemaatikaga, teineteist täiendades. Filosoofia andis tehisintellekti mõiste ja ettekujutuse. Matemaatika tegeleb mõiste vormistamisega ja lihtsustab teate süsteemiks ja kasutab neid praktikas.
George Boole oli matemaatilise loogika rajajaks. 1847. aastal George Boole töötas välja lauseloogika, mis sai tema järgi nime Boole'i algebra. Gottlob Frege ka andis tohutu panuse loogikasse. Frege lõi esimese-järgu loogika. Tänu tema 1879. aasta teosele “Begriffsschrift” alustas loogika ajalugu uut ajastut[8].
1930. aastal Kurt Gödel tõestas esimest ja teist "Gödel's incompleteness theorems". Teoreemid tõestasid, et algoritmid, mis tagaksid kõikide probleemide lahendamise ei eksisteeri. Teisisõnu, ei saa ehitada inimteadvuse keerukusega tehisintellekti, kasutades ainult formaalset loogikat. Tuleb mõista, et kuigi praegused närvivõrgud põhinevad "Fuzzy” loogikal ja oskavad areneda, siiski nad on sõnastavate probleemidega piiratud. Probleemid, mida ei saa sõnastada, näiteks probleemid loovuses, on nende jaoks lahendamatud. “Incompleteness” teoreemid tõestavad ka seda, et Turingi masin ei hakka kunagi mõtlema nagu inimene. Seetõttu, inimese mõistuse keerukusega närvivõrgu loomiseks tuleb otsida teist süsteemi[9].
Tõenäosusteooria on tehisintellekti jaoks sama oluline kui loogika. Kuna tõenäosusteooria loob tehisintellektile meetodid määramatusega töötamiseks. Mõned peamised teadlased, kes tegid suure panuse sellesse teooriasse : Pierre de Fermat (1607 - 1665), Blaise Pascal (1623 - 1662) Jacob Bernoulli (1655 - 1705)[10].
20. sajand
Närvivõrkude väljatöötamise võib jagada kolme etappi:
1. etapp "Läbimurre"
20. sajandil toimus märkimisväärne läbimurre tänu tehnoloogia arengule. Paljudel teadustel tekkisid uusi võimalusi uurimistööks tehnoloogia abil. Neurobioloogia ja neuroanatoomia oli integreeritud närvivõrku.
20. sajandi keskel oli määratud kindlaks, et aju on loendamatu arv ühendatud neuroneid. Samal ajal ilmus ka närvivõrgu kontseptsioon: esimese töö, kus närvivõrgu valdkonnas saavutati peamised tulemused, tegid McCulloch ja Pitts. 1943. aastal nad töötasid välja närvivõrgu arvutimudeli, mis põhines matemaatilistel algoritmidel ja aju struktuuril. Nad oletasid, et neuroneid võib käsitleda kahendarvudes töötavate seadmetena. McCulloch-Pittsi neuronid oskasid õppida. Loojad eeldasid, et sellel võrgul on inimluure potentsiaal[11].
1949. aastal Donald Hebb esimesena pakkus oma töös, et õppimine toimub sünaptiliste ühenduste tugevuse muutuste tõttu. 1951. aastal Marvin Lee Minsky juhtimisel oli ehitatud 40 Hebbi sünapsi võrgustik. Sünapsid olid omavahel juhuslikult ühendatud ja õpiti vastavalt Hebbi reeglile[12][13].
1958. aastal Frank Rosenblatt lõi maailma esimese neuroarvuti MARK 1 mis põhineb perceptroni kontseptsioonil. Perceptron on üks esimesi närvivõrgu mudeleid. Vaatamata oma lihtsusele perceptron oskab õppida ja lahendada üsna keerukaid probleeme. Arvutil võttis 50 katset, et õppida eristama vasakut ja paremat. 1960. aasta esitlusel arvuti suutis eristada inglise tähestiku tähti. Teadlased ennustavad, et hiljem suudavad närvivõrgud inimesi ära tunda ja neid nimepidi kutsuda, samuti suulise ja kirjaliku kõne koheselt ühest keelest teise tõlkida. Hr Rosenblatt ütles, et põhimõtteliselt on võimalik ehitada "ajusid", mis suudavad end konveieril paljundada ja mis on teadlikud omaenda olemasolust[14].
2. etapp "Pessimism" Huvi närvivõrkude uurimise vastu väheneb pärast masinõppe teose "Minsky M., Papert S. Perceptrons" avaldamist 1969. aastal. Avastati närvivõrkude peamised probleemid: Perceptron ei saa XOR-funktsiooni rakendada. Arvutitel ei olnud piisavalt töötlemisvõimsust, et tõhusalt hakkama saada suurte arvutustega, mis olid vältimatud töötamises närvivõrkudega[15].
3. etapp "Optimism"
1975 aastaks, kui arvutid muutusid suhteliselt võimsaks, toimus ka oluline sündmus, mis äratas huvi närvivõrkude vastu. Paul Werbos kirjeldas backpropagation meetodit. Meetod lahendas „liitmismooduli 2” ja mõne muud 1969. aastal püstitatud probleemid[16].
1975. aastal Fukushima töötas välja neokognitrooni, millest sai üks esimesi mitmekihilisi närvivõrke. See sündmus on oluline, sest varem arvati, et mitmekihilised närvivõrgud ei suuda arvutada vajalikke funktsioone. Kuid võrgud said informatsiooni levitada ainult ühes suunas. Neuronite vahelist informatsiooni kahepoolset edastamist oli saavutatud ainult Hopfieldi võrgus 1982. aastal[17]. Kuigi Hopfieldi võrgul olid puudused ja seda ei saanud praktikas kasutada, oli see oluline samm närvivõrkude arendamisel. Teadlane pani aluse korduvatele võrkudele[18].
Alates 1980. aastatest uus masinõppe lähenemine “konnektivism” muutunud populaarseks. Üks konnektivismi ideid on see, et selgitada inimese vaimseid võimeid võib kasutada närvivõrku. Et meelt saab iseloomustada nagu "a set of complex associations, represented as a layered network”. 1986. aastal psühholoog James McClelland kasutas konnektivismi närviprotsesside arvuti modelleerimiseks[19].
Järeldus
Kindlasti, artiklis ei mainiti veel palju muid sündmusi ja teadlasi. Kuid selle artikli eesmärk ei olnud detailne närvivõrgu arengu uurimine. See uurimine nõuab nii kirjutajalt kui ka lugejalt palju masinõppe kogemusi. Vastasel juhul esimene ei kirjuta midagi või teine ei saa midagi aru. Selle asemel püütakse artiklis kirjeldada suurt pilti: Kuidas inimesed närvivõrgu avastasid. Kuidas nad selle avastamisele reageerisid. Mida selle avastusega tehti.
Praegu närvivõrgud suudavad juhtida autosid, tuvastada inimest näo järgi, isegi luua nägusid, mida ei saa reaalsetest eristada ja palju muud. Siiski närvivõrgu tulevik on ebakindel. Pole teada, kas inimene suudab luua närvivõrgu, mis ületab teda kõiges, sest see väide on iseenesest paradoksaalne. Kas Jumal saab luua kivi, mida ta ei suuda tõsta? Kas inimene suudab luua närvivõrgu, mis on targem kui tema? Kas ta üldse vajab seda? Eks inimkond oleks hävitud. Kindlasti, inimkond saab piirata närvivõrku moraalsete piiridega ja panna selle teenima, siis ei saa öelda, et närvivõrk oleks meist targem.
Närvivõrkudel on tohutu potentsiaal, mis on hirmutav. Igaüks peab ise vastama kõlbluse küsimusele “kas tuleb luua midagi täiuslikumat kui meie?” Kuid allpool esitatakse kuulsate isikute arvamusi:
Elon Musk: “With artificial intelligence we are summoning the demon. In all those stories where there’s the guy with the pentagram and the holy water, it’s like – yeah, he’s sure he can control the demon. Doesn’t work out”[20].
Stephen Hawking: “In short, the rise of powerful AI will be either the best, or the worst thing, ever to happen to humanity. We do not yet know which”[21].
Bill Gates: “The power of artificial intelligence is “so incredible, it will change society in some very deep ways...” “...The world hasn’t had that many technologies that are both promising and dangerous — you know, we had nuclear energy and nuclear weapons”[22].
Närvivõrgu abil probleemide lahendamise etapid
Andmete kogumine õppimise jaoks
Esimene samm on loomulikult närvivõrgu abil lahendatava probleemi valik. Siis saate hakata andmeid koguma. Seda etappi võib pidada kõige keerulisemaks, sest tulemuse kvaliteet sõltub täielikult andmetest, millele võrk on õpitud. Närvivõrgu õpetamiseks on vaja palju andmeid ja mida rohkem, seda parem ja need peavad olema ‘’’esinduslikud’’’ (kuvama selgelt koolituse jaoks vajalikud elemendid) ja ‘’’järjepidevad’’’ (vastuolulised andmed halvendavad komplekti õppimise kvaliteeti).[23]
Andmete ettevalmistamine õppimiseks
Kogutud andmed tuleb enne õppimisele edastamist korrastada. Selleks võib kasutada kahte meetodit: ‘’’normaliseerimine’’’ ja ‘’’standardiseerimine’’’. ‘’’Normaliseerimise’’’ käigus muudetakse andmed nii, et need jäävad vahemikku 0 kuni 1. Seda meetodit saab kasutada, kui teil on täpne ettekujutus andmete maksimaalsest ja minimaalsest väärtusest. ‘’’Standardiseerimine’’’ hõlmab andmete väärtuste jaotuse muutmist nii, et andmete keskmine oleks 0 ja standardhälve 1.[24][25] Need andmed tuleb jagada ka mitmeks osaks: andmed ‘’’õppimise’’’, ‘’’kohandamise‘’’ ja ‘’’testimise‘’’ jaoks.(training, validation and test data). ‘’’Õppimise‘’’ jaoks on kõige suurem osa andmetest (umbes 80%), nii et närvivõrk saab õigesti õppida andmeside üldistamist. ‘’’Kohandamise‘’’ andmed on vaja võrgu parameetrite häälestamiseks, et parandada algoritmi jõudlust. ‘’’Testi‘’’ andmed kasutatakse pärast õppimise etappi parandatud võrgu algoritmi õige toimimise kontrollimiseks. Neid andmeid ‘’’ei tohiks‘’’ koolitusel kasutada.[26]
Võrgu tüübi valik
Võrgu õppimise tüübi valik sõltub antud ülesandest. ‘’’Juhendatud õpega‘’’ (supervised learning) võrkude puhul peavad sisendite kohta olema teada väljundi tulemused. Kui sisendandmete jaoks ei ole väljundandmed teada, siis sobib juhendamata õpe võrk. (unsupervised).[23]
Võrgu õppimine
Näiteks võib tuua ‘’’Mitmekihiline perceptron‘’’ (multilayer perceptron). Võrk koosneb mitmest neuronikihist, kus iga neuron sisaldab ‘’’aktiveerimisfunktsiooni‘’’ ja kaalu, millest sõltub sisendandmete olulisus. Sellises võrgus edastatakse signaale otse - sisendandmetest väljundandmeteni. Sisend- ja väljundkihid on alati ükshaaval ja nende elementide arv sõltub probleemi seisukorrast. Enne treeningprotsessi algust ei saa valida nendes õige vahekihtide ja elementide arvu, seega peaksite valima juhusliku arvu kihte ja elemente, mida saab seejärel muuta. Järgmine samm on leida võrgu kaalude ja künniste väärtused. ‘’’Õppimis algoritmid‘’’ aitavad selle eesmärgi saavutamisel. ‘’’Ennustus vigade‘’’ (prediction error) minimeerimiseks reguleerivad nad automaatselt võrgu kaalu ja künniseid. Võrgu konfiguratsiooni viga määratakse andmete käitlemise kaudu läbi võrgu ja tulemuste võrdlemise oodatavate tulemustega. Nendest erinevustest saadakse ‘’’kaotus funktsioon‘’’ (loss function), mille väärtus on ‘’’võrguviga‘’’. Kasutades ‘’’backpropagation algoritmi‘’’, levitatakse ekslikke andmeid väljundist läbi kõigi vahekihtide. Iga kihis olev neuron saab selle eksliku signaali osa, mille ta sisestas tulemuse kontole. Õppimise Algoritm lühikirjeldus[27]: Õppimis andmete edastamine võrgu kaudu väljundi genereerimiseks Saadud andmete võrdlus oodatava tulemusega Arvutage ennustus viga ja backpropageerige Saadud teabe abil muudab võrguvigade vähendamiseks võrgu parameetreid Korrake seda protsessi, kuni saate hea võrgumudeli.[23][27]
Võrgu korrektsuse kontrollimine
Nüüd tuleb tekkinud närvivõrku kontrollida, kui hästi see oma ülesannet täidab. Närvivõrkude levinud probleem on ümberõpe (overfitting). Õppimisandmete võrguviga muutub minimaalseks, kuid näitab testiandmetel täiesti valesid tulemusi. [23] Õppimiseks peaks valima ka õiged andmed, sest võrk õpib seda, mida on kõige lihtsam õppida. Näiteks kui õppimis toimub piltide kohta ja “õiged” pildid on tumedad ja “valed” heledad, õpib võrk pilte eraldama värvitooni, mitte soovitud tingimuste järgi. Ka “õiged” ja “valed” andmed peavad olema võrdses vahekorras. Kui mõned andmed on rohkem kui teised, siis on võrgu tulemused kallutatud vastavalt sellele, milliseid andmeid oli rohkem.[23]
- ↑ "Warren Sturgis McCulloch",Wikimedia Foundation, Inc., 23.11.2020
- ↑ "Aristotle", Wikimedia Foundation, Inc., 11.12.2020
- ↑ Jeremy M. Norman, "Ramon Lull Invents Basic Logical Machines for the Production of Knowledge", 12.12.2020
- ↑ N.A Eremeev, "МАГИСТЕРСКАЯ ДИССЕРТАЦИЯ", «СИБИРСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ», 06.2017
- ↑ "Mathematical induction", Wikimedia Foundation, Inc., 7.12.2020
- ↑ "Logical positivism", Wikimedia Foundation, Inc., 12.11.2020
- ↑ "Logical positivism", Wikimedia Foundation, Inc., 12.11.2020
- ↑ "Gottlob Frege", Wikimedia Foundation, Inc., 01.12.2020
- ↑ И.В. Степанов, "Теоремы Гёделя и проблема возможности создания искусственного интеллекта", Вологодский государственный педагогический университет, 2011
- ↑ Горбачовская Е.Н, Краснов С.С, "История развития нейронных сете", Унивеситет имени В.Н Татищева
- ↑ "История возникновения нейронных сетей", 28.01.2015
- ↑ "Stochastic neural analog reinforcement calculator", Wikimedia Foundation, Inc., 01.04.2020
- ↑ "История возникновения нейронных сетей", 28.01.2015
- ↑ Соколински Л.Б, "История нейронных сетей и глубокого обучения", 29.05.2020
- ↑ "История возникновения нейронных сетей", 28.01.2015
- ↑ author_name, "Backpropagation", Wikimedia Foundation, Inc, 02.12.2020
- ↑ "История возникновения нейронных сетей", 28.01.2015
- ↑ "Recurrent neural network", Wikimedia Foundation, Inc, 13.12.2020
- ↑ "Connectionism", Wikimedia Foundation, Inc., 06.12.2020
- ↑ Samuel Gibbs, "Elon Musk: artificial intelligence is our biggest existential threat", 27.10.2014
- ↑ Rory Cellan-Jones, "Stephen Hawking - will AI kill or save humankind?", 20.10.2016
- ↑ Catherine Clifford, "Bill Gates: A.I. is like nuclear energy — ‘both promising and dangerous", 26.05.2019
- ↑ 23.0 23.1 23.2 23.3 23.4 Учебник по статистике, 2012
- ↑ Jason Brownlee, “How to use Data Scaling Improve Deep Learning Model Stability and Performance”, 04.02.2019
- ↑ Aniruddha Bhandari, “Feature Scaling for Machine Learning”, 03.04.2020
- ↑ Tirmidzi Faizal Aflahi, Becoming Human, 19.06.2019
- ↑ 27.0 27.1 Jordi TORRES.AI, 21.04.2020