{"id":326522,"date":"2021-12-08T21:20:00","date_gmt":"2021-12-08T18:20:00","guid":{"rendered":"https:\/\/inform.com.de\/?p=326522"},"modified":"2021-12-07T19:36:48","modified_gmt":"2021-12-07T16:36:48","slug":"med-enkla-ord-om-komplexet-vad-aer-neurala-naetverk-skriva-ett-feedforward-neuralt-naetverk-fraan-grunden","status":"publish","type":"post","link":"https:\/\/inform.com.de\/sv\/med-enkla-ord-om-komplexet-vad-aer-neurala-naetverk-skriva-ett-feedforward-neuralt-naetverk-fraan-grunden\/","title":{"rendered":"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden."},"content":{"rendered":"<h2>Vad \u00e4r ett neuralt n\u00e4tverk?<\/h2>\n<p>Som du vet \u00e4r v\u00e5r hj\u00e4rna en komplex sak. Koordineringen av dess arbete sker genom nervceller &#8211; nervceller med grenar som str\u00e4cker sig fr\u00e5n dem. Sammanfl\u00e4tade med varandra bildar neuroner ett neuralt n\u00e4tverk &#8211; en invecklad mekanism som best\u00e4mmer all m\u00e5ngfald i den m\u00e4nskliga psyken. Detta \u00e4r roten till v\u00e5r sj\u00e4lvmedvetenhet, k\u00e4nslan av oss som individer, styrda av v\u00e5ra inre \u00f6nskningar och ambitioner.<\/p>\n<p>Om en funktionsst\u00f6rning intr\u00e4ffar i neuronernas arbete \u00e4ndras personen utan att k\u00e4nna igen. Beroende p\u00e5 skadans sv\u00e5righetsgrad varierar f\u00f6r\u00e4ndringarna fr\u00e5n milda tecken p\u00e5 avvikande beteende till upph\u00f6rande av kroppens normala funktion. Hj\u00e4rnskador \u00e4r ofta d\u00f6dliga.<\/p>\n<p>Men idag kommer vi inte att prata om biologi, f\u00f6r inte bara hj\u00e4rnsystemet kallas neurala n\u00e4tverk utan ocks\u00e5 ett komplext datorprogram med liknande funktionsprinciper. Liksom gr\u00e5 substans \u00e4r den fraktal, det vill s\u00e4ga den best\u00e5r av m\u00e5nga enklare program som bildar ett slags symbios.<\/p>\n<p>Samtidigt som det neurala n\u00e4tverket fungerar l\u00e4r sig det, f\u00e5r erfarenhet och blir mer perfekt. S\u00e5ledes har vi att g\u00f6ra med en riktig digital organism, som f\u00f6rutsp\u00e5s en dag \u00f6vertr\u00e4ffa dess skapare.<\/p>\n<h2>Hur neurala n\u00e4tverk upptr\u00e4dde<\/h2>\n<p>Framv\u00e4xten av begreppet artificiella neurala n\u00e4tverk g\u00e5r tillbaka till 40-talet av f\u00f6reg\u00e5ende \u00e5rhundrade. I synnerhet \u00e4r det associerat med forskarna McCulloch och Pitts, som f\u00f6rs\u00f6kte simulera hj\u00e4rnans processer. De f\u00f6reslog ocks\u00e5 id\u00e9n att skapa ett sj\u00e4lvl\u00e4rande system som \u00e4r utformat f\u00f6r att utf\u00f6ra olika logiska operationer. Problemet var att den tekniken vid den tiden var l\u00e5ngt ifr\u00e5n den i dag, och uppfinnarna misslyckades med att fullt ut f\u00f6rverkliga sina id\u00e9er.<\/p>\n<p>(Warren McCulloch &#038; Walter Pitts)<\/p>\n<p>Deras arbete fortsatte av den kanadensiska fysiologen Donald Hebb, och 1949 presenterades den f\u00f6rsta algoritmen f\u00f6r ber\u00e4kning av ANN f\u00f6r v\u00e4rlden. Under de kommande tio \u00e5ren fungerade den som en bas f\u00f6r utvecklingen av andra forskare, tills slutligen 1958 skapade Frank Rosenblatt parceptronen, en teknik som efterliknar v\u00e5rt hj\u00e4rnans arbete. F\u00f6r sin tid var denna nyhet otrolig. Sovjetiska och amerikanska forskare gick med i arbetet, som ocks\u00e5 gjorde ett betydande bidrag till forskningen.<\/p>\n<p>I slutet av XX &#8211; tidigt XXI \u00e5rhundraden gjorde tekniken ett kraftigt steg, vilket fungerade som ett bra incitament f\u00f6r mer intensiv vetenskaplig aktivitet, och 2007 kom datavetenskapsmannen Jeffrey Hinton fram med en djupinl\u00e4rningsalgoritm f\u00f6r neurala n\u00e4tverk, som nu ofta anv\u00e4nds i sj\u00e4lvk\u00f6rande bilar.<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea3d9471a.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\"  title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea3d9471a.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>(Geoffrey Hinton)<\/p>\n<h3>Lite historia<\/h3>\n<p>F\u00f6r f\u00f6rsta g\u00e5ngen uppstod begreppet artificiella neurala n\u00e4tverk (ANN) n\u00e4r man f\u00f6rs\u00f6kte simulera hj\u00e4rnans processer. Det f\u00f6rsta stora genombrottet inom detta omr\u00e5de kan betraktas som skapandet av McCulloch-Pitts neurala n\u00e4tverksmodell 1943. Forskare utvecklade f\u00f6rst en modell av en artificiell neuron. De f\u00f6reslog ocks\u00e5 byggandet av ett n\u00e4tverk av dessa element f\u00f6r att utf\u00f6ra logiska operationer. Men viktigast av allt har forskare visat att ett s\u00e5dant n\u00e4tverk kan l\u00e4ra sig.<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea3e7c52e.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\"  title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea3e7c52e.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>N\u00e4sta viktiga steg var utvecklingen av Donald Hebb av den f\u00f6rsta algoritmen f\u00f6r ber\u00e4kning av ANN 1949, som blev grundl\u00e4ggande under de kommande decennierna. 1958 utvecklade Frank Rosenblatt parceptron, ett system som efterliknar hj\u00e4rnans processer. Vid en tidpunkt hade tekniken inga analoger och \u00e4r fortfarande grundl\u00e4ggande i neurala n\u00e4tverk. 1986, n\u00e4stan samtidigt, oberoende av varandra, f\u00f6rb\u00e4ttrade amerikanska och sovjetiska forskare avsev\u00e4rt den grundl\u00e4ggande metoden att l\u00e4ra ut <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9C%D0%BD%D0%BE%D0%B3%D0%BE%D1%81%D0%BB%D0%BE%D0%B9%D0%BD%D1%8B%D0%B9_%D0%BF%D0%B5%D1%80%D1%86%D0%B5%D0%BF%D1%82%D1%80%D0%BE%D0%BD_%D0%A0%D1%83%D0%BC%D0%B5%D0%BB%D1%8C%D1%85%D0%B0%D1%80%D1%82%D0%B0\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">flerskiktsperseptronen<\/a>. \u00c5r 2007 genomgick neurala n\u00e4tverk en \u00e5terf\u00f6delse. Brittisk datavetare <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A5%D0%B8%D0%BD%D1%82%D0%BE%D0%BD,_%D0%94%D0%B6%D0%B5%D1%84%D1%84%D1%80%D0%B8\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Jeffrey Hinton<\/a> utvecklade f\u00f6rst en djupinl\u00e4rningsalgoritm f\u00f6r multilayer neurala n\u00e4tverk, som nu till exempel anv\u00e4nds f\u00f6r att driva obemannade fordon.<\/p>\n<h3>Kort om det viktigaste<\/h3>\n<p>I ordets allm\u00e4nna bem\u00e4rkelse \u00e4r neurala n\u00e4tverk matematiska modeller som fungerar p\u00e5 principen om n\u00e4tverk av nervceller i en djurorganism. ANN kan implementeras i b\u00e5de programmerbara och h\u00e5rdvarul\u00f6sningar. F\u00f6r att underl\u00e4tta uppfattningen kan en neuron representeras som en viss cell, som har m\u00e5nga ing\u00e5ngsh\u00e5l och ett utg\u00e5ngsh\u00e5l. Hur m\u00e5nga inkommande signaler formas till utg\u00e5ende signaler best\u00e4mmer ber\u00e4kningsalgoritmen. Effektiva v\u00e4rden matas till varje neuroning\u00e5ng, som sedan f\u00f6r\u00f6kas l\u00e4ngs internuronala anslutningar (synopsis). Synapser har en parameter &#8211; vikt, beroende p\u00e5 vilken ing\u00e5ngsinformationen \u00e4ndras n\u00e4r man flyttar fr\u00e5n en neuron till en annan. Det enklaste s\u00e4ttet att f\u00f6rest\u00e4lla sig hur neurala n\u00e4tverk fungerar kan representeras av exemplet med f\u00e4rgblandning. De bl\u00e5, gr\u00f6na och r\u00f6da nervcellerna har olika vikter.<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea3f7db4e.png\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea3f7db4e.png\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Neurala n\u00e4tverket i sig \u00e4r ett system av m\u00e5nga s\u00e5dana neuroner (processorer). Individuellt \u00e4r dessa processorer ganska enkla (mycket enklare \u00e4n en persondatorprocessor), men n\u00e4r de \u00e4r anslutna till ett stort system kan neuroner utf\u00f6ra mycket komplexa uppgifter.<\/p>\n<p>Beroende p\u00e5 applikationsomr\u00e5de kan ett neuralt n\u00e4tverk tolkas p\u00e5 olika s\u00e4tt. Till exempel, ur maskininl\u00e4rningssynpunkt \u00e4r en ANN en m\u00f6nsterigenk\u00e4nningsmetod. Ur en matematisk synvinkel \u00e4r detta ett problem med flera parametrar. Ur cybernetics synvinkel \u00e4r det en modell f\u00f6r adaptiv kontroll av robotik. F\u00f6r artificiell intelligens \u00e4r ANN en grundl\u00e4ggande komponent f\u00f6r modellering av naturlig intelligens med hj\u00e4lp av ber\u00e4kningsalgoritmer.<\/p>\n<p>Den st\u00f6rsta f\u00f6rdelen med neurala n\u00e4tverk j\u00e4mf\u00f6rt med konventionella ber\u00e4kningsalgoritmer \u00e4r deras f\u00f6rm\u00e5ga att l\u00e4ra sig. I ordets allm\u00e4nna bem\u00e4rkelse best\u00e5r inl\u00e4rning i att hitta r\u00e4tt kopplingskoefficienter mellan nervceller, s\u00e5v\u00e4l som att generalisera data och identifiera komplexa beroenden mellan in- och utsignaler. Faktum \u00e4r att framg\u00e5ngsrik tr\u00e4ning av ett neuralt n\u00e4tverk inneb\u00e4r att systemet kommer att kunna identifiera r\u00e4tt resultat baserat p\u00e5 data som inte finns i tr\u00e4ningsupps\u00e4ttningen.<\/p>\n<h2>Till\u00e4mpning av neurala n\u00e4tverk<\/h2>\n<p>Anv\u00e4ndningsomr\u00e5det f\u00f6r neurala n\u00e4tverk \u00e4r otroligt stort och begr\u00e4nsas endast av v\u00e5r fantasi. L\u00e5t oss lista n\u00e5gra av dem:<\/p>\n<ul>\n<li>Automatiska transportsystem. Autopiloter.<\/li>\n<li>Internet. R\u00f6stassistenter, smarta webbl\u00e4sare, \u00f6vers\u00e4ttningsprogram.<\/li>\n<li>Ekonomi och aff\u00e4rer. Prognoser f\u00f6r v\u00e4xelkurser, moderna redovisningsprogram, handelsrobotar, riskbed\u00f6mningsprogram, hantering av produktionsmaskiner, kvalitetskontroll etc.<\/li>\n<li>Medicin. Moderna metoder f\u00f6r att diagnostisera, analysera effektiviteten av behandlingen, bearbeta medicinska bilder.<\/li>\n<li>Robotik. Ruttplanering, tal- och gestigenk\u00e4nning.<\/li>\n<li>S\u00e4kerhet. Video\u00f6vervakning och hantering av larmsystem.<\/li>\n<li>Datorspel och underh\u00e5llning. Smarta bots, analytiska program f\u00f6r schack och andra spel.<\/li>\n<li>Konst. Skapande av m\u00e5lningar, b\u00f6cker och andra kulturella artefakter.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4177889.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4177889.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<h3>Dagens situation<\/h3>\n<p>Oavsett hur lovande den h\u00e4r tekniken skulle vara, s\u00e5 l\u00e5ngt \u00e4r ANN fortfarande mycket l\u00e5ngt ifr\u00e5n den m\u00e4nskliga hj\u00e4rnans och t\u00e4nkandens f\u00f6rm\u00e5ga. \u00c4nd\u00e5 anv\u00e4nds neurala n\u00e4tverk redan inom m\u00e5nga omr\u00e5den av m\u00e4nsklig aktivitet. Hittills kan de inte fatta mycket intellektuella beslut, men de kan ers\u00e4tta en person d\u00e4r han tidigare beh\u00f6vdes. Bland de m\u00e5nga omr\u00e5dena i ANN-applikationen kan man notera: skapandet av sj\u00e4lvl\u00e4rande system f\u00f6r produktionsprocesser, obemannade fordon, bildigenk\u00e4nningssystem, intelligenta s\u00e4kerhetssystem, robotik, kvalitets\u00f6vervakningssystem, r\u00f6stinteraktionsgr\u00e4nssnitt, analyssystem och mycket mer. S\u00e5dan utbredd anv\u00e4ndning av neurala n\u00e4tverk, bland annat, beror p\u00e5 framv\u00e4xten av olika s\u00e4tt att p\u00e5skynda inl\u00e4rningen av ANN.<\/p>\n<p>Idag \u00e4r marknaden f\u00f6r neurala n\u00e4tverk enorm &#8211; det \u00e4r miljarder och miljarder dollar. Som praxis visar skiljer sig de flesta av neurologiska n\u00e4tverkens teknologier runt om i v\u00e4rlden lite fr\u00e5n varandra. Anv\u00e4ndningen av neurala n\u00e4tverk \u00e4r dock ett mycket dyrt \u00e5tagande, som i de flesta fall endast kan erbjudas av stora f\u00f6retag. F\u00f6r utveckling, utbildning och testning av neurala n\u00e4tverk kr\u00e4vs stor datorkraft, det \u00e4r uppenbart att stora akt\u00f6rer p\u00e5 IT-marknaden har tillr\u00e4ckligt med detta. Bland de st\u00f6rsta f\u00f6retagen som leder utvecklingen inom detta omr\u00e5de \u00e4r Google DeepMind, Microsoft Research, IBM, Facebook och Baidu.<\/p>\n<p>Naturligtvis \u00e4r allt detta bra: neurala n\u00e4tverk utvecklas, marknaden v\u00e4xer, men hittills har huvuduppgiften inte l\u00f6sts. M\u00e4nskligheten har misslyckats med att skapa en teknik som till och med ligger n\u00e4ra den m\u00e4nskliga hj\u00e4rnans kapacitet. L\u00e5t oss ta en titt p\u00e5 de viktigaste skillnaderna mellan den m\u00e4nskliga hj\u00e4rnan och artificiella neurala n\u00e4tverk.<\/p>\n<h3>Varf\u00f6r \u00e4r neurala n\u00e4tverk fortfarande l\u00e5ngt ifr\u00e5n m\u00e4nniskans hj\u00e4rna?<\/h3>\n<p>Den viktigaste skillnaden, som i grunden f\u00f6r\u00e4ndrar systemets princip och effektivitet, \u00e4r den olika signal\u00f6verf\u00f6ringen i artificiella neurala n\u00e4tverk och i det biologiska n\u00e4tverket av neuroner. Faktum \u00e4r att i ANN \u00f6verf\u00f6r neuroner v\u00e4rden som \u00e4r verkliga v\u00e4rden, det vill s\u00e4ga siffror. I den m\u00e4nskliga hj\u00e4rnan \u00f6verf\u00f6rs impulser med en fast amplitud, och dessa impulser \u00e4r n\u00e4stan omedelbara. D\u00e4rf\u00f6r finns det ett antal f\u00f6rdelar med det m\u00e4nskliga n\u00e4tverket av neuroner.<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea437f470.png\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea437f470.png\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>F\u00f6r det f\u00f6rsta \u00e4r kommunikationslinjer i hj\u00e4rnan mycket mer effektiva och ekonomiska \u00e4n i ANN. F\u00f6r det andra s\u00e4kerst\u00e4ller impulskretsen enkelheten i teknikimplementeringen: det r\u00e4cker att anv\u00e4nda analoga kretsar ist\u00e4llet f\u00f6r komplexa ber\u00e4kningsmekanismer. I slut\u00e4ndan \u00e4r impulsen\u00e4tverk skyddade fr\u00e5n akustisk st\u00f6rning. Effektiva siffror uts\u00e4tts f\u00f6r buller, vilket \u00f6kar sannolikheten f\u00f6r fel.<\/p>\n<h2>Utsikter f\u00f6r neurala n\u00e4tverk<\/h2>\n<p>Luddite-r\u00f6relsen b\u00f6rjade i b\u00f6rjan av 1800-talet. Detta ord anv\u00e4ndes f\u00f6r att beskriva m\u00e4nniskor som deltar i protester mot urbanisering. Med industrialiseringen av samh\u00e4llet, n\u00e4r verktygsmaskiner gradvis b\u00f6rjade ers\u00e4tta arbetare, l\u00e4mnades m\u00e5nga m\u00e4nniskor utan arbete och var extremt missn\u00f6jda med sin situation. T\u00e4nk dig vilken chock de skulle ha upplevt om de fick veta att maskinerna om n\u00e5gra hundra \u00e5r kommer att kunna prata och till och med r\u00f6ra sig sj\u00e4lvst\u00e4ndigt!<\/p>\n<p>Under tiden har dessa tider kommit, och idag finns det ocks\u00e5 retrograder som fruktar att robotik och utveckling av teknik i allm\u00e4nhet kan spela ett grymt sk\u00e4mt med m\u00e4nniskor. N\u00e4r allt kommer omkring, om maskiner redan kan utf\u00f6ra s\u00e5 m\u00e5nga uppgifter idag, kommer de i framtiden att ta alla jobb och g\u00f6ra m\u00e4nniskor on\u00f6diga. Och denna st\u00e5ndpunkt bekr\u00e4ftas endast av bed\u00f6mningar av experter som d\u00e5 och d\u00e5 f\u00f6rutsp\u00e5r det f\u00f6rest\u00e5ende f\u00f6rsvinnandet av ett visst yrke.<\/p>\n<p>Denna position har r\u00e4tt att existera, men den \u00e4r inte helt korrekt, eftersom \u00f6ver tiden f\u00f6rsvinner inte bara gamla yrken utan ocks\u00e5 nya. Ja, det finns en storleksordning mindre herdar och j\u00e4gare \u00e4n tidigare, men programmerare och marknadsf\u00f6rare har dykt upp. Vid v\u00e4ndpunkter i historien omorienterar ekonomin sig sj\u00e4lv, rensar bort de on\u00f6diga och gener\u00f6st ger dem som \u00e4r efterfr\u00e5gade.<\/p>\n<p>Det v\u00e4xande inflytandet fr\u00e5n artificiella neurala n\u00e4tverk \u00e4r uppenbart och det \u00e4r troligt att de snart kommer bokstavligen \u00f6verallt, men att vara r\u00e4dd f\u00f6r detta inneb\u00e4r att man avvisar den m\u00e4nskliga naturen, som best\u00e5r i \u00f6nskan om uppt\u00e4ckt och prestation.<\/p>\n<h2>Skapande av neurala block<\/h2>\n<p>F\u00f6rst m\u00e5ste du best\u00e4mma vad grundkomponenterna i ett neuralt n\u00e4tverk &#8211; <strong>neuroner<\/strong> &#8211; \u00e4r. Neuronen tar inmatade data, utf\u00f6r vissa <strong>matematiska operationer med den<\/strong> och matar sedan ut resultatet. En neuron med tv\u00e5 ing\u00e5ngar ser ut s\u00e5 h\u00e4r:<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/12\/fed4726d9a0d92019fee18550c1d79a0-1.png\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/12\/fed4726d9a0d92019fee18550c1d79a0-1.png\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Tre saker h\u00e4nder h\u00e4r. F\u00f6rst multipliceras varje ing\u00e5ng med vikten (i diagrammet \u00e4r det markerat med <strong>r\u00f6tt<\/strong> ):<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea460c31b.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea460c31b.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Sedan l\u00e4ggs alla viktade ing\u00e5ngar till tillsammans med f\u00f6rskjutningen <code>b<\/code>(anges i <strong>gr\u00f6nt<\/strong> i diagrammet ):<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea46be05a.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea46be05a.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Slutligen \u00f6verf\u00f6rs beloppet via aktiveringsfunktionen (markerad med <strong>gult<\/strong> i diagrammet ):<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea477ea32.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea477ea32.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Aktiveringsfunktionen anv\u00e4nds f\u00f6r att ansluta orelaterade ing\u00e5ngar till en utg\u00e5ng som har en enkel och f\u00f6ruts\u00e4gbar form. Som regel tas <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A1%D0%B8%D0%B3%D0%BC%D0%BE%D0%B8%D0%B4%D0%B0\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">sigmoidfunktionen<\/a> som aktiveringsfunktionen som anv\u00e4nds :<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4848293.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4848293.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p><strong>Sigmoid-funktionen<\/strong> matar bara ut siffror i ett intervall <code>(0, 1)<\/code>. Du kan t\u00e4nka p\u00e5 det som att komprimera fr\u00e5n <code>(\u2212\u221e, +\u221e)<\/code>till <code>(0, 1)<\/code>. Stora negativa tal blir <code>~0<\/code>, och stora positiva siffror blir <code>~1<\/code>.<\/p>\n<h2>Ett enkelt exempel p\u00e5 att arbeta med nervceller i Python<\/h2>\n<p>Antag att vi har en <strong>neuron med tv\u00e5 ing\u00e5ngar<\/strong> som anv\u00e4nder <strong>sigmoid-aktiveringsfunktion<\/strong> och har f\u00f6ljande parametrar:<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea491789f.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea491789f.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p><code>w = [0,1]<\/code>\u00c4r bara ett s\u00e4tt att skriva <code>w1 = 0, w2 = 1<\/code>i vektorform. L\u00e5t oss tilldela neuron en ing\u00e5ng med ett v\u00e4rde <code>x = [2, 3]<\/code>. F\u00f6r en mer kompakt representation kommer <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A1%D0%BA%D0%B0%D0%BB%D1%8F%D1%80%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B8%D0%B7%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">dot-produkten<\/a> att anv\u00e4ndas .<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea49c304f.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea49c304f.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Med tanke p\u00e5 att ing\u00e5ngen var <code>x = [2, 3]<\/code>kommer utg\u00e5ngen att vara lika <code>0.999<\/code>. Det \u00e4r allt. Denna process f\u00f6r att <strong>skicka indata<\/strong> till mottagning av utdata kallas feedforward.<\/p>\n<h2>Bygga en neuron fr\u00e5n grunden i Python<\/h2>\n<p>L\u00e5t oss b\u00f6rja implementera neuronen. Detta kr\u00e4ver anv\u00e4ndning av NumPy. Det \u00e4r ett kraftfullt ber\u00e4knings Python-bibliotek som anv\u00e4nder matematiska operationer:<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<div>\n<p><span><span>ett<\/span><\/span><\/p>\n<p><span><span>2<\/span><\/span><\/p>\n<p><span><span>3<\/span><\/span><\/p>\n<p><span><span>fyra<\/span><\/span><\/p>\n<p><span><span>fem<\/span><\/span><\/p>\n<p><span><span>6<\/span><\/span><\/p>\n<p><span><span>7<\/span><\/span><\/p>\n<p><span><span>\u00e5tta<\/span><\/span><\/p>\n<p><span><span>nio<\/span><\/span><\/p>\n<p><span><span>10<\/span><\/span><\/p>\n<p><span><span>elva<\/span><\/span><\/p>\n<p><span><span>12<\/span><\/span><\/p>\n<p><span><span>13<\/span><\/span><\/p>\n<p><span><span>fjorton<\/span><\/span><\/p>\n<p><span><span>femton<\/span><\/span><\/p>\n<p><span><span>sexton<\/span><\/span><\/p>\n<p><span><span>17<\/span><\/span><\/p>\n<p><span><span>arton<\/span><\/span><\/p>\n<p><span><span>nitton<\/span><\/span><\/p>\n<p><span><span>tjugo<\/span><\/span><\/p>\n<p><span><span>21<\/span><\/span><\/p>\n<p><span><span>22<\/span><\/span><\/p>\n<p><span><span>23<\/span><\/span><\/p>\n<p><span><span>24<\/span><\/span><\/p>\n<p><span><span>25<\/span><\/span><\/p>\n<p><span><span>26<\/span><\/span><\/p>\n<p><span><span>27<\/span><\/span><\/p>\n<\/div>\n<\/td>\n<td>\n<div>\n<p><span><span><span>importera <\/span><\/span><\/span><span><span><span>numpy <\/span><\/span><span><span>som <\/span><\/span><span><span>np<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><\/p>\n<p><span><span><span>def <\/span><\/span><\/span><span><span><span>sigmoid <\/span><\/span><span><span>( <\/span><\/span><span><span>x <\/span><\/span><span><span>) <\/span><\/span><span><span>:<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><\/p>\n<p><span><\/span><span><span><span># V\u00e5r aktiveringsfunktion: f (x) = 1 \/ (1 + e ^ (- x))<\/span><\/span><\/span><\/p>\n<p><span><\/span><span><span><span>returnera <\/span><\/span><\/span><span><span><span>1 <\/span><\/span><span><span>\/ <\/span><\/span><span><span>( <\/span><\/span><span><span>1 <\/span><\/span><span><span>+ <\/span><\/span><span><span>np <\/span><\/span><span><span>. <\/span><\/span><span><span>exp <\/span><\/span><span><span>( <\/span><\/span><span><span>&#8211; <\/span><\/span><span><span>x <\/span><\/span><span><span>) <\/span><\/span><span><span>)<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><\/p>\n<p><span><span><span>klass <\/span><\/span><\/span><span><span><span>Neuron <\/span><\/span><span><span>:<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><\/p>\n<p><span><\/span><span><span><span>def <\/span><\/span><\/span><span><span><span>__init__ <\/span><\/span><span><span>( <\/span><\/span><span><span>sj\u00e4lv <\/span><\/span><span><span>, <\/span><\/span><span><span>vikter <\/span><\/span><span><span>, <\/span><\/span><span><span>bias <\/span><\/span><span><span>) <\/span><\/span><span><span>:<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><\/p>\n<p><span><\/span><span><span><span>sj\u00e4lv <\/span><\/span><\/span><span><span><span>. <\/span><\/span><\/span><span><span><span>vikter <\/span><\/span><\/span><span><span><span>= <\/span><\/span><span><span>vikter<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><\/p>\n<p><span><\/span><span><span><span>sj\u00e4lv <\/span><\/span><\/span><span><span><span>. <\/span><\/span><\/span><span><span><span>bias <\/span><\/span><\/span><span><span><span>= <\/span><\/span><span><span>bias<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><\/p>\n<p><span><\/span><span><span><span>def <\/span><\/span><\/span><span><span><span>feedforward <\/span><\/span><span><span>( <\/span><\/span><span><span>sj\u00e4lv <\/span><\/span><span><span>, <\/span><\/span><span><span>ing\u00e5ngar <\/span><\/span><span><span>) <\/span><\/span><span><span>:<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><\/p>\n<p><span><\/span><span><span><span># Inmatningsviktdata, l\u00e4gg till offset<\/span><\/span><\/span><\/p>\n<p><span><\/span><span><span><span># och efterf\u00f6ljande anv\u00e4ndning av aktiveringsfunktionen<\/span><\/span><\/span><\/p>\n<p><span><\/span><span><span><span>totalt <\/span><\/span><\/span><span><span><span>= <\/span><\/span><span><span>np <\/span><\/span><span><span>. <\/span><\/span><span><span>dot <\/span><\/span><span><span>( <\/span><\/span><span><span>sj\u00e4lv <\/span><\/span><span><span>. <\/span><\/span><span><span>vikter <\/span><\/span><span><span>, <\/span><\/span><span><span>ing\u00e5ngar <\/span><\/span><span><span>) <\/span><\/span><span><span>+ <\/span><\/span><span><span>sj\u00e4lv <\/span><\/span><span><span>. <\/span><\/span><span><span>partiskhet<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><\/p>\n<p><span><\/span><span><span><span>retur <\/span><\/span><\/span><span><span><span>sigmoid <\/span><\/span><span><span>( <\/span><\/span><span><span>totalt <\/span><\/span><span><span>)<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><\/p>\n<p><span><span><span>vikter <\/span><\/span><\/span><span><span><span>= <\/span><\/span><span><span>np <\/span><\/span><span><span>. <\/span><\/span><span><span>array <\/span><\/span><span><span>( <\/span><\/span><span><span>[ <\/span><\/span><span><span>0 <\/span><\/span><span><span>, <\/span><\/span><span><span>1 <\/span><\/span><span><span>] <\/span><\/span><span><span>) <\/span><\/span><span><span># w1 = 0, w2 = 1<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><\/p>\n<p><span><span><span>bias <\/span><\/span><\/span><span><span><span>= <\/span><\/span><span><span>4 <\/span><\/span><span><span># b = 4<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><\/p>\n<p><span><span><span>n <\/span><\/span><\/span><span><span><span>= <\/span><\/span><span><span>Neuron <\/span><\/span><span><span>( <\/span><\/span><span><span>vikter <\/span><\/span><span><span>, <\/span><\/span><span><span>bias <\/span><\/span><span><span>)<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><\/p>\n<p><span><span><span>x <\/span><\/span><\/span><span><span><span>= <\/span><\/span><span><span>np <\/span><\/span><span><span>. <\/span><\/span><span><span>array <\/span><\/span><span><span>( <\/span><\/span><span><span>[ <\/span><\/span><span><span>2 <\/span><\/span><span><span>, <\/span><\/span><span><span>3 <\/span><\/span><span><span>] <\/span><\/span><span><span>) <\/span><\/span><span><span># x1 = 2, x2 = 3<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><span><\/span><\/span><span><\/span><span><span><\/span><\/span><\/p>\n<p><span><span><span>skriva ut <\/span><\/span><\/span><span><span><span>( <\/span><\/span><\/span><span><span><span>n <\/span><\/span><\/span><span><span><span>. <\/span><\/span><\/span><span><span><span>feedforward <\/span><\/span><\/span><span><span><span>( <\/span><\/span><\/span><span><span><span>x <\/span><\/span><\/span><span><span><span>) <\/span><\/span><\/span><span><span><span>) <\/span><\/span><\/span><span><span><span># 0.9990889488055994<\/span><\/span><\/span><span><\/span><span><span><\/span><\/span><\/p>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>K\u00e4nner du igen siffrorna? Detta \u00e4r samma exempel som diskuterats tidigare. Svaret som erh\u00f6lls denna g\u00e5ng \u00e4r ocks\u00e5 lika <code>0.999<\/code>.<\/p>\n<h2>Ett exempel p\u00e5 att samla neuroner i ett neuralt n\u00e4tverk<\/h2>\n<p><strong>Ett neuralt n\u00e4tverk<\/strong> \u00e4r i huvudsak en grupp av <strong>sammankopplade nervceller<\/strong>. Ett enkelt neuralt n\u00e4tverk ser ut s\u00e5 h\u00e4r:<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/12\/0e2c31c441e9cdc4eb35c1c746dc5651-1.png\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/12\/0e2c31c441e9cdc4eb35c1c746dc5651-1.png\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>P\u00e5 det inledande skiktet i n\u00e4tverket finns det tv\u00e5 ing\u00e5ngar &#8211; <code>x1<\/code>och <code>x2<\/code>. Det finns tv\u00e5 neutroner p\u00e5 det dolda lagret &#8211; <code>h1<\/code>och <code>h2<\/code>. Det finns en neuron i utg\u00e5ngsskiktet &#8211; <code>\u043e1<\/code>. Observera att ing\u00e5ngarna f\u00f6r <code>\u043e1<\/code>\u00e4r resultat <code>h1<\/code>och <code>h2<\/code>. S\u00e5 h\u00e4r <strong>\u00e4r det neurala n\u00e4tverket uppbyggt<\/strong>.<\/p>\n<blockquote>\n<p><strong>Ett dolt lager<\/strong> \u00e4r vilket skikt som helst mellan ing\u00e5ngsskiktet och utskiktet, vilket \u00e4r det f\u00f6rsta respektive det sista lagret. Det kan finnas flera dolda lager.<\/p>\n<\/blockquote>\n<h2>Neural n\u00e4tverksutbildning<\/h2>\n<p>Utg\u00e5ng <strong>\u0177 fr\u00e5n ett<\/strong> enkelt tv\u00e5skiktsneuralt n\u00e4tverk:<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4b5814e.png\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4b5814e.png\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>I ovanst\u00e5ende ekvation \u00e4r vikterna W och f\u00f6rsp\u00e4nningarna b de enda variablerna som p\u00e5verkar utg\u00e5ngen \u0177.<\/p>\n<p>Naturligtvis best\u00e4mmer de korrekta v\u00e4rdena f\u00f6r vikterna och f\u00f6rsp\u00e4nningarna f\u00f6ruts\u00e4gelserna. Processen f\u00f6r finjustering av vikter och f\u00f6rsp\u00e4nningar fr\u00e5n inmatad data \u00e4r k\u00e4nd som neuralt n\u00e4tverksutbildning.<\/p>\n<p>Varje iteration av tr\u00e4ningsprocessen best\u00e5r av f\u00f6ljande steg<\/p>\n<ul>\n<li>ber\u00e4kning av den f\u00f6rutsagda utg\u00e5ngen \u0177 kallad fram\u00e5tutbredning<\/li>\n<li>uppdatera vikter och f\u00f6rdomar som kallas backpropagation<\/li>\n<\/ul>\n<p>Den sekventiella grafen nedan illustrerar processen:<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4c1cc09.png\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4c1cc09.png\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<h3>Direkt distribution<\/h3>\n<p>Som vi s\u00e5g i diagrammet ovan \u00e4r fram\u00e5tutbredning bara en enkel ber\u00e4kning, och f\u00f6r ett grundl\u00e4ggande 2-skiktsneuralt n\u00e4tverk ges resultatet fr\u00e5n det neurala n\u00e4tverket av:<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4b5814e.png\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4b5814e.png\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>L\u00e5t oss l\u00e4gga till fl\u00f6de till v\u00e5r Python-kod f\u00f6r att g\u00f6ra detta. Observera att f\u00f6r enkelhetens skull har vi antagit att f\u00f6rskjutningarna \u00e4r 0.<\/p>\n<p>Vi beh\u00f6ver dock ett s\u00e4tt att bed\u00f6ma &#8221;godheten&#8221; i v\u00e5ra prognoser, det vill s\u00e4ga hur l\u00e5ngt v\u00e5ra prognoser \u00e4r). <strong>F\u00f6rlustfunktionen<\/strong> g\u00f6r att vi kan g\u00f6ra just det.<\/p>\n<h3>F\u00f6rlustfunktion<\/h3>\n<p>Det finns m\u00e5nga f\u00f6rlustfunktioner tillg\u00e4ngliga, och karakt\u00e4ren av v\u00e5rt problem b\u00f6r diktera v\u00e5rt val av f\u00f6rlustfunktion. I denna uppsats kommer vi att anv\u00e4nda <strong>summan av kvadraten f\u00f6r felen<\/strong> som f\u00f6rlustfunktionen.<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4dd5677.png\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4dd5677.png\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Summan av kvadratfel \u00e4r genomsnittet av skillnaden mellan varje f\u00f6rutsagt v\u00e4rde och det verkliga v\u00e4rdet.<\/p>\n<p><strong>M\u00e5let med tr\u00e4ningen \u00e4r att hitta en upps\u00e4ttning vikter och f\u00f6rsp\u00e4nningar som minimerar f\u00f6rlustfunktionen.<\/strong><\/p>\n<h3>Tillbaka f\u00f6r\u00f6kning<\/h3>\n<p>Nu n\u00e4r vi har m\u00e4tt v\u00e5rt prognosfel (f\u00f6rluster) m\u00e5ste vi hitta ett s\u00e4tt att <strong>sprida felet tillbaka<\/strong> och uppdatera v\u00e5ra vikter och f\u00f6rdomar.<\/p>\n<p>F\u00f6r att ta reda p\u00e5 l\u00e4mplig m\u00e4ngd att korrigera f\u00f6r vikter och f\u00f6rsp\u00e4nningar m\u00e5ste vi k\u00e4nna till f\u00f6rlustfunktionens derivat med avseende p\u00e5 vikter och f\u00f6rsp\u00e4nningar.<\/p>\n<p>Kom ih\u00e5g fr\u00e5n analysen att <strong>derivatet av en funktion \u00e4r tangenten f\u00f6r funktionens lutning.<\/strong><\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4e9fbda.png\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4e9fbda.png\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Om vi \u200b\u200bhar ett derivat kan vi helt enkelt uppdatera vikterna och f\u00f6rsp\u00e4nningarna genom att \u00f6ka \/ minska dem (se diagram ovan). Detta kallas <strong>gradientnedstigning<\/strong>.<\/p>\n<p>Vi kan dock inte direkt ber\u00e4kna f\u00f6rlustfunktionens derivat med avseende p\u00e5 vikter och f\u00f6rsp\u00e4nningar, eftersom ekvationen f\u00f6r f\u00f6rlustfunktionen inte inneh\u00e5ller vikter och f\u00f6rsp\u00e4nningar. D\u00e4rf\u00f6r beh\u00f6ver vi en kedjeregel f\u00f6r att underl\u00e4tta ber\u00e4kningen.<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4fe692d.png\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea4fe692d.png\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Fuh! Det var besv\u00e4rligt, men det till\u00e4t oss att f\u00e5 vad vi beh\u00f6ver &#8211; derivatet (lutningen) av f\u00f6rlustfunktionen med avseende p\u00e5 vikterna. Vi kan nu justera vikterna d\u00e4refter.<\/p>\n<p>L\u00e5t oss l\u00e4gga till backpropagation-funktionen i v\u00e5r Python-kod:<\/p>\n<h2>Partiella derivat<\/h2>\n<p>Delderivat kan ber\u00e4knas, s\u00e5 det \u00e4r k\u00e4nt vad som var bidraget till felet f\u00f6r varje vikt. Behovet av derivat \u00e4r uppenbart. F\u00f6rest\u00e4ll dig ett neuralt n\u00e4tverk som f\u00f6rs\u00f6ker hitta den optimala hastigheten f\u00f6r ett autonomt fordon. Om bilen uppt\u00e4cker att den g\u00e5r snabbare eller l\u00e5ngsammare \u00e4n den erforderliga hastigheten, kommer neuronn\u00e4tverket att \u00e4ndra hastigheten, accelerera eller retardera bilen. Vad accelererar \/ bromsar samtidigt? Hastighetsderivat.<\/p>\n<p>L\u00e5t oss titta p\u00e5 behovet av partiella derivat med hj\u00e4lp av ett exempel.<\/p>\n<p>Antag att barnen ombeds att kasta en pil p\u00e5 ett m\u00e5l medan de siktar mot mitten. H\u00e4r \u00e4r resultaten:<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea51122d6.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea51122d6.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Nu, om vi hittar ett allm\u00e4nt fel och helt enkelt subtraherar det fr\u00e5n alla vikter, kommer vi att sammanfatta misstag som g\u00f6rs av var och en. S\u00e5 l\u00e5t oss s\u00e4ga att barnet tr\u00e4ffade f\u00f6r l\u00e5gt, men vi ber alla barn att str\u00e4va efter att tr\u00e4ffa m\u00e5let, d\u00e5 kommer detta att leda till f\u00f6ljande bild:<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea51cbdd8.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea51cbdd8.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Felet hos flera barn kan minska, men det totala felet \u00f6kar fortfarande.<\/p>\n<p>Efter att ha hittat delderivaten f\u00e5r vi reda p\u00e5 de fel som motsvarar varje vikt separat. Om du selektivt korrigerar vikterna kan du f\u00e5 f\u00f6ljande:<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea528fe3a.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea528fe3a.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<h2>Hyperparametrar<\/h2>\n<p>Ett neuralt n\u00e4tverk anv\u00e4nds f\u00f6r att automatisera funktionsval, men vissa parametrar konfigureras manuellt.<\/p>\n<h3>Inl\u00e4rningshastighet<\/h3>\n<p>Inl\u00e4rningshastighet \u00e4r en mycket viktig hyperparameter. Om inl\u00e4rningshastigheten \u00e4r f\u00f6r l\u00e5g, kommer det att vara l\u00e5ngt ifr\u00e5n optimala resultat \u00e4ven efter att ha tr\u00e4nat neuralt n\u00e4tverk under l\u00e5ng tid. Resultaten kommer att se ut s\u00e5 h\u00e4r:<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea534e6eb.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea534e6eb.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>\u00c5 andra sidan, om inl\u00e4rningshastigheten \u00e4r f\u00f6r h\u00f6g, kommer n\u00e4tverket att svara mycket snabbt. Resultatet \u00e4r f\u00f6ljande:<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea540f66b.jpg\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea540f66b.jpg\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<h2>Djupa neurala n\u00e4tverk<\/h2>\n<p>Deep learning \u00e4r en klass av maskininl\u00e4rningsalgoritmer som l\u00e4r sig att f\u00f6rst\u00e5 data djupare (mer abstrakt). Popul\u00e4ra algoritmer f\u00f6r djupinl\u00e4rande neurala n\u00e4tverk presenteras i diagrammet nedan.<\/p>\n<p><a href=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea55368b9.png\" data-rel=\"lightbox-image-bGlnaHRib3g=\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.com.de\/wp-content\/uploads\/2021\/04\/post-190136-607bea55368b9.png\" alt=\"Med enkla ord om komplexet: vad \u00e4r neurala n\u00e4tverk? Skriva ett feedforward neuralt n\u00e4tverk fr\u00e5n grunden.\" ><\/a><\/p>\n<p>Popul\u00e4ra neurala n\u00e4tverksalgoritmer (<a href=\"http:\/\/www.asimovinstitute.org\/neural-network-zoo\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">http:\/\/www.asimovinstitute.org\/neural-network-zoo<\/a> )<\/p>\n<p>Mer formellt i djupinl\u00e4rning:<\/p>\n<ul>\n<li>En kaskad (pipeline, som en sekventiellt \u00f6verf\u00f6rd str\u00f6m) av ett flertal bearbetningsskikt (icke-linj\u00e4r) anv\u00e4nds f\u00f6r att extrahera och transformera funktioner;<\/li>\n<li>Baserat p\u00e5 studien av funktioner (presentation av information) i data utan \u00f6vervakat l\u00e4rande. Funktionerna p\u00e5 h\u00f6gre niv\u00e5 (som finns i de sista skikten) erh\u00e5lls fr\u00e5n de l\u00e4gre niv\u00e5funktionerna (som finns i de f\u00f6rsta skiktens lager);<\/li>\n<li>Utforskar skiktade vyer som motsvarar olika abstraktionsniv\u00e5er; niv\u00e5er bildar en presentationshierarki.<\/li>\n<\/ul>\n<h2>Tr\u00e4na det neurala n\u00e4tverket med XOR-funktioner<\/h2>\n<p>Varf\u00f6r \u00e4r XOR-funktionen s\u00e5 intressant? Helt enkelt f\u00f6r att den inte kan erh\u00e5llas av en neuron: 0 ^ 0 = 0, 0 ^ 1 = 1, 1 ^ 0 = 1, 1 ^ 1 = 0. Det erh\u00e5lls dock enkelt genom att \u00f6ka antalet neuroner. Vi kommer att f\u00f6rs\u00f6ka tr\u00e4na ett n\u00e4tverk med 3 nervceller i det dolda lagret och en utg\u00e5ng (eftersom vi bara har en utg\u00e5ng). F\u00f6r att g\u00f6ra detta m\u00e5ste vi skapa en upps\u00e4ttning X- och Y-vektorer med tr\u00e4ningsdata och det neurala n\u00e4tverket:<\/p>\n<pre><code>\/\/ \u043c\u0430\u0441\u0441\u0438\u0432 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0445 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 Vector[] X = { new Vector(0, 0), new Vector(0, 1), new Vector(1, 0), new Vector(1, 1) }; \/\/ \u043c\u0430\u0441\u0441\u0438\u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0445 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 Vector[] Y = { new Vector(0.0), \/\/ 0 ^ 0 = 0 new Vector(1.0), \/\/ 0 ^ 1 = 1 new Vector(1.0), \/\/ 1 ^ 0 = 1 new Vector(0.0) \/\/ 1 ^ 1 = 0 }; Network network = new Network(new int[]{2, 3, 1}); \/\/ \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u0441\u0435\u0442\u044c \u0441 \u0434\u0432\u0443\u043c\u044f \u0432\u0445\u043e\u0434\u0430\u043c\u0438, \u0442\u0440\u0435\u043c\u044f \u043d\u0435\u0439\u0440\u043e\u043d\u0430\u043c\u0438 \u0432 \u0441\u043a\u0440\u044b\u0442\u043e\u043c \u0441\u043b\u043e\u0435 \u0438 \u043e\u0434\u043d\u0438\u043c \u0432\u044b\u0445\u043e\u0434\u043e\u043c <\/code><\/pre>\n<p>Sedan b\u00f6rjar vi tr\u00e4na med f\u00f6ljande parametrar: inl\u00e4rningshastighet &#8211; 0,5, antal epoker &#8211; 100000, felv\u00e4rde &#8211; 1e-7:<\/p>\n<pre><code>network.Train(X, Y, 0.5, 1e-7, 100000); \/\/ \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0435\u0442\u0438 <\/code><\/pre>\n<p>Efter tr\u00e4ning, l\u00e5t oss titta p\u00e5 resultaten genom att utf\u00f6ra ett direktkort f\u00f6r alla element:<\/p>\n<pre><code>for (int i = 0; i <\/code><\/pre>\n<div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Inspelningsk\u00e4lla:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/lastici.ru\" class=\"external external_icon\">lastici.ru<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Vi pratar om neurala n\u00e4tverk: enkel presentation av komplex information s\u00e5 att \u00e4ven ett barn kan f\u00f6rst\u00e5. Vi studerar grunden och gr\u00e4ver in i \u00e4mnet fr\u00e5n grunden.<\/p>\n","protected":false},"author":1,"featured_media":413743,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[434,255,325,335,368,170,291],"tags":[],"class_list":["post-326522","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dator","category-diverse","category-for-kvinnor","category-for-man","category-foretag","category-forskning","category-teknik"],"_links":{"self":[{"href":"https:\/\/inform.com.de\/sv\/wp-json\/wp\/v2\/posts\/326522","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/inform.com.de\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/inform.com.de\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/inform.com.de\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/inform.com.de\/sv\/wp-json\/wp\/v2\/comments?post=326522"}],"version-history":[{"count":0,"href":"https:\/\/inform.com.de\/sv\/wp-json\/wp\/v2\/posts\/326522\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/inform.com.de\/sv\/wp-json\/wp\/v2\/media\/413743"}],"wp:attachment":[{"href":"https:\/\/inform.com.de\/sv\/wp-json\/wp\/v2\/media?parent=326522"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/inform.com.de\/sv\/wp-json\/wp\/v2\/categories?post=326522"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/inform.com.de\/sv\/wp-json\/wp\/v2\/tags?post=326522"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}