Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 100 reacties
Submitter: Jermak

Hardwarefabrikant IBM heeft een processor gebouwd die ongeveer zo functioneert als het brein. De neurale processor werkt fundamenteel anders dan huidige processors en is bij gespecialiseerde taken veel zuiniger dan huidige processors.

De neurale processor TrueNorth heeft 4096 kernen, gemaakt op Samsungs 28nm-procedé. In totaal heeft de processor 5,4 miljard transistors. Elke processorkern heeft meer dan 100.000 bits aan eigen geheugen om op te slaan wat zijn staat is en welke verbindingen hij kan leggen.

Het verschil met conventionele processors is dat de informatie niet komt uit het binair weergeven van het aan- of uitstaan van de transistors, maar uit spikes, waarbij de informatie zit in de timing en frequentie van deze spikes. Bovendien kunnen de 'neuronen' in de processor die spikes zenden naar en ontvangen van 256 andere 'neuronen'; bij conventionele processors is dat niet mogelijk.

Door die andere architectuur is de processor veel zuiniger bij het uitvoeren van bepaalde taken, zoals objectherkenning in videobeelden. De onderzoekers van IBM en Cornell University zeggen in het wetenschappelijke tijdschrift Science dat bij het analyseren van videobeelden van 240x400 pixels bij 30fps de chip 65mW verbruikt; huidige processors hebben daar veel meer energie voor nodig.

IBM houdt zich al jaren bezig met neurale processors. Het begon naar eigen zeggen zes jaar geleden en presenteerde vorig jaar al een software-ecosysteem voor deze processors, omdat huidige software er niet op werkt.

IBM TrueNorth

Moderatie-faq Wijzig weergave

Reacties (100)

Het is een mooie stap, begrijp ik nu goed data de chip zichzelf optimaliseerd voor de taken die het moet gaan doen? Op de website zie ik vooral dat het efficient is voor taken die vaak niks doen en soms heel veel.

Dit lijkt wel een beetje op de taken die een normale pc heeft, vaak idle maar soms ook heel druk als een spel wordt gespeeld. Dus dat je hiermee van je CPU een soort van GPU kan maken op de tijden dat je een spel speelt maar dat de GPU juist een CPU gaat worden als je Maple aan het draaien bent of aan het compileren bent?
Je hebt het artikel compleet verkeerd gelezen, ben ik bang.

Deze chip is een neuraal netwerk. Neurale netwerken kunnen efficient leren; je hoeft ze alleen een set voorbeelden met de goede antwoorden erbij te geven en ze kunnen vervolgens ook op nieuwe, vergelijkbare problemen het goede antwoord geven. Hoe ze dat intern doen hoef je niet te weten. Je kunt dus ook nooit het precieze neuron in de miljoen neuronen aanwijzen die een brokje informatie opslaat. Alle informatie is verspreid opgeslagen.

Dat is ook maar goed ook, want je hersens zijn ook een neuraal netwerk en er gaat wel eens een cel dood. Maar omdat alles verspreid is, ben je dan niet in 1 keer een stukje kritische informatie kwijt.

Het is een architectuurkeuze of je een hardwarematig neuraal netwerk kunt laden en saven naar file. Als dat kan, dan kun je makkelijk van de ene functie naar de andere switchen - kwestie van een paar seconden I/O. Als dat niet kan, dan moet je bij elke functiewijziging het netwerk opnieuw trainen en dat kan uren kosten.
Maar wat kun je nu praktisch gezien met deze chip (oftewel met dit aantal neuronen+verbindingen)?

Kun je er bijvoorbeeld een tafel of een stoel mee herkennen?
Kun je er personen mee identificeren?
Of kun je er letters mee herkennen?

En hoeveel van dit soort taken kun je tegelijk "op de chip zetten"?
Hoe snel kan een beeld worden ge-analyseerd?
Elke core individueel is ongeveer krachtig genoeg om een cijfer te herkennen. Dat valt mee omdat er meer 10 cijfers zijn. Personen idenitificeren is een stuk lastiger omdat die niet opzettelijk verschillend zijn, en je hebt er een paar miljard van in plaats van 10. Desondanks heb je waarschijnlijk geen groot probleem om gezichten te herkennen met de hele chip - pas als je veroudering mee moet nemen denk ik dat het lastig wordt.
Het lijkt er op dat het energieverbruik van de chip zijn belangrijkste feature is, omdat de taken die je noemt ook al makkelijk op een huis-tuin-en-keuken desktop computer uitgevoerd kunnen worden.

Of is er een ander voordeel (snelheid?)
Uiteraard kan zo'n simpele taak op een PC uitgevoerd worden. 256 neuronen simuleren is geen probleem voor een moderne CPU.
Met deze processors ben je in staat om
patronen te herkennen op basis van parameters waarvan je niet eens wist dat die invloed hebben op een uitkomst.

Iedereen kan voorspellen als je trapt op de trappers van je fiets dat je vooruit gaat. Maar hoe beinvloed de stand van de maan en de windrichting het verloop van een aandeel. Mocht er een causaal verband bestaan, het neurale netwerk gebruikt het.
Nee. In de praktijk kan dat niet omdat je die parameters niet eens meegeeft aan het neurale netwerk. Ook in theorie kan het niet, omdat de invloed van ruis in de belangrijke parameters de kleine secundaire effecten overschaduwt.
Nog steller data minen dus mbv neurale netwerken. Vooral in een wereld waar veel data wordt geanalyseerd zullen deze processoren worden ingezet. De NSA, de GOOGLE's etc. zullen wel de afnemers worden.
Neurale netwerken kunnen efficient leren; je hoeft ze alleen een set voorbeelden met de goede antwoorden erbij te geven en ze kunnen vervolgens ook op nieuwe, vergelijkbare problemen het goede antwoord geven.
Dat kunnen ze alleen als iemand ze correct instelt en het leerprocess begeleidt.
Hoe ze dat intern doen hoef je niet te weten.
Jawel dus, je zult zo'n netwerk voor een bepaald probleem moeten tunen voordat het enigziins kan leren.
Een los neuraal netwerk doet niet zoveel. Je zult het moeten 'cultiveren' om het een bepaald leergedrag op bepaalde input te laten uitvoeren.
Wat je dan niet meer weet (of waar je je niet meer mee bezig houdt) is hoe de individuele verbindingen bijdragen aan het oplossen van het probleem. Maar je zult je wel intensief moeten bezighouden met het leerproces en hoe dat voor het oplossen van een bepaald type probleem het beste kan verlopen.
Het is een architectuurkeuze of je een hardwarematig neuraal netwerk kunt laden en saven naar file. Als dat kan, dan kun je makkelijk van de ene functie naar de andere switchen - kwestie van een paar seconden I/O.
Ik geloof dat ze hierin voorzien hadden bij IBM.
Ik las een tijd terug al iets over deze (of soortggelijke) processor en ze konden inderdaad neurale netwerken uitwisselen.

[Reactie gewijzigd door koelpasta op 10 augustus 2014 11:48]

"Correct instellen"? Je weet dat het gebruikelijk is om een Neuraal Netwerk met random waardes te initialiseren ? Juist omdat initialisaties met een vaste waarde het aantal effectieve neuronen verminderd?

En een los neuraal netwerk kun je direct trainen. Input aanbeiden, correcte output aanbieden, en het backpropagation algoritme van het netwerk laten draaien. Veel ingewikkelder dan dat is het niet.
Ik meende dat je de manier van organiseren, de manier van backpropagation, etc, moet aanpassen aan het soort van probleem dat je probeert op te lossen.
Volgens mij werkt niet elke structuur (verbindings-strata?) en elke manier van trainen op een willekeurige set inputs even goed.
Zo werkt het in ieder geval wel in hersenen. Daar zijn veel gespecialiseerde structuren te vinden die specifiek een bepaald iets kunnen.
En ook in software zie ik veel verschillende manieren waarop neuronen gekoppeld worden en manieren om leren te bevorderen met allemaal hun voor en nadelen.
Ben benieuwd of die limiet van 256 ook inhoudt dat je maximaal een fully connected neural net kan maken met 256 nodes in een gegeven layer. Dat is wel redelijk beperkend met hoog-dimensionele data.
Uiteraard. Maar waarom zou je een *fully* connected netwerk willen hebben met zoveel neuronen? Het IBM artikel meldt 1 miljoen neuronen, met 4096 cores. Dat wil dus zeggen dat elke core 256 neuronen bevat - ongetwijfeld is elke core intern wel fully connected.
Precies, dat is ook wat ik in dit artikel lees, de "CPU" heeft 4096 cores, welke bestaan uit 256 "neuronen".

Als je, zoals struikrover volgens mij doet, dit in een datacenter zet en veel systemen aan elkaar knoopt krijg je een flink netwerk met heel veel "neuronen".
IBM heeft ook plaatjes laten zien van 4x4 matrices van deze chips, met dus 16 miljoen neuronen. Maar je mist het "fully connected" puntje - in zo'n netwerk is elke neuron direct met elk ander neuron verbonden. Met 1 miljoen neuronen heb je dan 1 biljoen verbindingen. En om die allemaal te trainen heb je ook zo'n 1 biljoen trainingssamples nodig. En dát betekent weer dat je training eeuwen duurt.

Dus nee, ik snap niet waarom struikrover een beperking ziet in minder dan een biljoen neuronen.
Behalve dat je een goed punt hebt, volgens mij een klein foutje:
Om alle 1 miljoen neuronen volledig te connecten, heb je bijna een half biljoen verbindingen nodig (499.999.500.000).
Dat hangt enigzins van je architectuur af.

In een feed-forward netwerk zijn de outputs van neuronen uit laag L voorverbonden met de inputs in laag L+1, maar niet andersom. Als je dan N neuronen per laag hebt, dan heb je N*N verbindingen tussen 2 lagen.

Stel nu dus dat ik de miljoen neuronen in een 500.000 laags fully-connected feed-forward netwerk configureer, dan heb ik dus 2 neuronen per laag, 4 connecties tussen elke laag, en maar 4 * 499.999 connecties in totaal (2 miljoen)

Maar als ik géén feed-forward netwerk heb, dan mag ik de output van neuron 1 aan de input van neuron 2 koppelen, en (met een andere wegingsfactor) de output van 2 aan de input van 1. En omdat de gewichten anders zijn móet je 'm in hardware ook dubbel uitvoeren. En dan heb je dus 1.000.000 * 999.999 verbindingen. (Ik vermoed overigens dat ze 4096 cores x 256 neuronen hebben, dus 1.048.576 neuronen)
Dat één node maar maximaal met 256 andere nodes kan verbinden wil niet zeggen dat één node-netwerk uit 256 nodes bestaat..... Als Node 1 verbind met node 2-256 hoeft het niet zo te zijn dat Node 2 met 1+3-256 verbind. Het kan goed zijn dat Node 2 verbind met node 230-486.

Dus nee, de limiet van 256 per node zegt niets over het neurale netwerk.
Sleutelwoord: fully connected.
In een fully connected configuratie zal die limiet wel degelijk bepalen dat er maar 257 nodes (node x + 256 verbindingen naar andere nodes) samen fully connected kunnen zijn.
Klopt, maar een neuraal netwerk is nou juist niet fully connected. Elk neuron staat maar met een beperkt aantal andere in verbinding. Dat kunnen er in een echt brein wel tienduizenden zijn, dus 256 is nog wel wat beperkt.
Wat ik me ook afvraag is of deze chip kan leren, of dat deze chip alleen met voorgeprogrammeerde netwerken overweg kan (wat natuurlijk op zich ook al zinvol is).
Ik vraag me af hoeveel load dit zou kunnen afhalen van de reguliere processor voor dit soort taken in de hedendaagse pc mochten deze 2 gecombineerd worden.

Dit zou namelijk een compleet ander algoritme voor "AI" spelers kunnen betekenen wat het spel misschien wel veel realistischer maakt.
Ik zit ook te denken aan de combinatie van traditionele processorkracht en deze neurale technologie. Voor het snel uitrekenen van sommetjes en pi tot een miljoen cijfers achter de komma is de traditionele processortechniek al behoorlijk prima (stukken sneller dan het menselijk brein uiteraard) maar in bijv. het herkennen van wat een stoel of een bank is in een foto of video, of het omgaan met menselijke spraak, zou deze neurale aanpak uiteindelijk dikke winst kunnen opleveren. Door ze beide te combineren, kan het uiteindelijk een mens-achtige AI opleveren, die ook nog 's de typische computertaken vele malen sneller doet dan een mens. Het gevolg / gevaar is wel dat machines ons dan gaan overtreffen, maar toch is het erg interessant :)

[Reactie gewijzigd door geert1 op 8 augustus 2014 13:16]

"Machines ons gaan overtreffen" Moet je geen schrik van hebben, in mijn mening zijn singularity theorieën niet veel verschillend van de theorieën rond "we gaan allemaal dood in 2012" .
Vergelijk even met het gemiddelde brein: 100 miljard neuronen waarbij elk neuron een 7000 tal verbindingen heeft. IBM is op weg, maar 1 miljoen neuronen is wel nog maar 1/100 000ste van wat het menselijk brein heeft.

Om nog maar te zwijgen over het energiebehoefteverschil. :D

Edit: bron toegevoegd.

[Reactie gewijzigd door Thunderhawk0024 op 8 augustus 2014 14:48]

Je omschrijft hier star trek karakter : 'data'

En ik sluit zeker niet uit dat er 'machines' zullen komen die kunnen wat mensen kunnen.
Sneller en beter misschien (error-loos lijkt me niet kunnen, dat lijkt wel een natuurwet!)
Maar ja, geen 'ziel', en allemaal klonen, dus niet zo divers als ouders en dus kinderen daaruit.
Neurale netwerken staan er bekend om dat ze alles behalve foutloos zijn. Simpele spraakherkenning bijvoorbeeld (cijfers) werkt beter dan 99%, maar dan nog heb je een paar fouten op elke duizend gesproken cijfers.
"mens-achtige" AI zie ik nog niet heel snel gebeuren.

Het emuleren simuleren van een hele simpele worm is op dit moment al een hele opgave: http://en.wikipedia.org/wiki/OpenWorm

[Reactie gewijzigd door SkyStreaker op 8 augustus 2014 14:02]

Iets wat deze processors heel goed kunnen is inschatten. Ze schatten op basis van een patroon dat iets een bepaalde waarde moet zijn. Denk aan een route, een object in een foto, het prijsverloop van aandelen.

Een normale processor kan dit niet, die kan alleen simpele rekensommetjes uitvoeren. Wil je dit toch bereiken, dan moet je software gaan programmeren die dit gedrag kan nabootsen. Dit is dan ook precies de reden waarom een normale cpu hier veel meer moeite mee heeft.
This is your last chance. After this, there is no turning back. You take the blue pill - the story ends, you wake up in your bed and believe whatever you want to believe. You take the red pill - you stay in Wonderland and I show you how deep the rabbit-hole goes.
Dit klinkt echt ongelovelijk gaaf! Zou dit ook veel toevoegen aan het uitzoeken hoe we een echt AI kunnen maken?
Als je AI definieert als "denken als een mens", dan ja. Maar het is natuurlijk helemaal niet gezegd dat denken als een mens de enige, de beste, of de makkelijkste manier is om een AI te maken.

Het lijkt er vooral op dat een dergelijke architectuur veel efficienter is in "cognitieve processen", zoals objectherkenning. In dat opzich zal een dergelijke chip bijvoorbeeld erg helpen in roboticatoepassingen; niet per se om de AI, maar omdat het veel efficienter is in het repliceren van zintuigen.

Overigens kun je nog niet zoveel met dit ding als je zou denken. Het is vooral spannend dat er nu hardware wordt gemaakt die niet gebaseerd is op het Von Neumann-model.
Denken als een mens... Nu je dat zegt rijst bij mij de vraag:

Kunnen wij mensen wel een AI maken die beter denkt dan een mens? Sneller: ja, maar efficiënter? Dat is: minder vermogen, meer informatie extraheren uit omgeving, etc. We kunnen als mens nou eenmaal slechts denken als een mens. Dan kun je toch haast geen betere AI maken? Hoogstens een meer productieve, maar niet een betere.

Wel goed dat IBM afstapt van het conventionele. Als we dit soort onderzoeken niet toejuichen, dan zitten we over een paar jaar aan een limiet. Ik denk dat dit soort op de toepassing gerichte processors nog een heel stuk verder kunnen evolueren. Nu zitten je apparaten vol met enkele processors, die een zekere taak hebben, maar niet zeer gespecialiseerd zijn. Denk aan een PC: CPU, GPU, wat andere chips op het mobo. Als je deze vervangt door veel meer maar ook veel sterker gespecialiseerde processors, dan kun je misschien veel efficiënter specifieke taken doen. Een PC moet doorgaans echter een allrounder zijn: soms wat zwaar rekenwerk, soms veel data lezen/schrijven, etc. Weinig specifieke taken die altijd hetzelfde zijn.

De meest voor de hand liggende toepassingen lijken me voor nu dan ook: robotica, productieprocessen en militair. In die gebieden heb je veel processen die zeer repetitief zijn, maar ook zeer gespecialiseerd en omgevingsafhankelijk. Een dergelijke processor zou hier misschien wel erg geschikt voor zijn. Ze kunnen variaties in de processen en de omgeving misschien wel sneller oppikken en hierop reageren.

Wanneer dit soort processors beter ontwikkeld zijn en "echt" dingen kunnen interpreteren, dan kom je in de buurt van een "menselijke AI". Dus: zintuigen, maar ook cognitie en misschien zelfs psychologie nabootsen. Dan worden medische toepassingen interessant, waarin de patiënt het te onderzoeken subject is met al zijn variabiliteit.

Het benieuwt me zeer wat dit soort andere architecturen gaan opleveren.

[Reactie gewijzigd door erikieperikie op 8 augustus 2014 15:04]

Dat is zelfs noodzakelijk zo.

Het menselijk brein is weliswaar een van de meest complexe en "ingenieuze" dingen die natuurlijke selectie teweeg heeft gebracht, maar het is wel een product van evolutie. Omdat evolutie een ongericht, geleidelijk proces is, kan het niet zomaar terug naar de tekentafel om iets efficienter te maken. Als je als programmeur leest over de neurowetenschappen en hoe stukken van de hersenen werken, dan krijg je ook wel behoorlijk het idee dat de software in je hoofd een stuk ernstige spaghetticode is. Spagehetticode die weliswaar behoorlijk gedebugd is door natuurlijke selectie, maar alsnog spaghetti.

Maar een mens kan wél terug naar de tekentafel. Een mens kan ervoor zorgen dat bijvoorbeeld de spaghetticode kan verdwijnen (als dat tot voordelen leidt). Een mens kan er voor zorgen dat neuronen efficienter werken (deze machine aapt menselijke neuronen na, maar er zijn nu al toepassingen die efficienter werken op "getweakte" neuronen). En een mens kan ervoor zorgen dat het allemaal bijvoorbeeld kan interfacen met een échte Von Neumann-computer die wél snel berekeningen kan uitvoeren of (nog esotherischer) een quantum-computer die razendsnel moeilijke problemen op kan lossen.

Het potentieel van een "ontworpen" intelligentie ligt vele malen hoger dan die van een geevolueerde intelligentie. Hoewel we nog lang niet daar in de buurt zijn, is dat wel een logisch gevolg als de vooruitgang van de mens zich doorzet.
Het potentieel van een "ontworpen" intelligentie ligt vele malen hoger dan die van een geevolueerde intelligentie. Hoewel we nog lang niet daar in de buurt zijn, is dat wel een logisch gevolg als de vooruitgang van de mens zich doorzet.
Ben ik het niet helemaal mee eens :)
Een kunstmatge intelligentie ontwerpen volgens het neuraal netwerk principe is net zoiets als een hologram maken door individuele krasjes te maken op een substraat. Je kunt amper voorspellen hoe een enkel krasje de projectie van het hologram gaat beinvloeden.

Ontwerpen is ook niet persee de beste methode om onbekende problemen mee aan te pakken.
Evolutie kan miljoenen individuele veranderingen testen op uitkomst en kan niches (verbanden) vinden die je niet tegenkomt als je efficient designt volgens de menselijke methode.
Het zijn bij evolutie welliswaar random veranderingen, maar je hoeft daarbij niet te weten voor welke omgeving de veranderingen moeten werken. Je maakt er gewoon heel veel en kijkt of het werkt is een dusdanige omgeving. Die flexibiliteit hebben wij nog in geen enkel menselijk design laten zien (op het gebied van inteligentie dan).

Met designen moet je eerst weten wat je wilt bereiken en daarnaast moet de situatie dan niet anders worden omdat je dan weer terug mag naar die tekentafel.
Een wiel (design) is leuk, maar als je geen weg hebt dan kun je beter de benewagen (evolutie) nemen.
Daarmee is in potentie de benenwagen beter. Als je dan een zeer specifieke synthetische omgeving hebt gecreeerd waar wielen tot hun recht komen (wegennet) dan kun je iets doen met wielen. Maar dat maakt wielen niet persee de beste oplossing. Het is slechts de beste oplossing die wij kennen voor de situatie waar er wegen zijn. Zonder die situatie kan je het idee van wielen weggooien.

In potentie is evolutie een veel krachtigere methodiek om systemen te ontwikkelen die met de echte wereld om moeten gaan.

En dit geldt dubbel voor complexe neurale netwerken. Er zit intelligentie in de samenhang van het geheel en niet alleen in de functie van de individuele neuronen. Die samenhang kunnen wij niet designen en de vraag is of het wel goed te designen valt. Je hebt kans dat dat soort intelligentie alleen als een emergent fenomeen kan bestaan. En dan wens ik je veel success aan de tekentafel., :Y)
Je hebt hier een te nauwe definitie van "ontwerpen". Ontwerpen kan inderdaad één groot ding maken zijn dat wel of niet slaagt een goede AI te zijn. Maar je kunt ook iteratief ontwerpen, met meerder prototypes die wel of niet slagen in het halen van een bepaalde metriek. Dat is hetzelfde als evolutie, maar dan sneller en met de mogelijkheid om terug te gaan naar de tekentafel als de ingeslagen weg fundamenteel inefficient blijkt te zijn.

Evolutie is hetzelfde als iteratief ontwerpen, afgezien van dat evolutie niet terugkan naar de tekentafel.
Je hebt hier een te nauwe definitie van "ontwerpen".
Ontwerpen heeft ook een vrij nauwe definitie.
Ontwerpen kan inderdaad één groot ding maken zijn dat wel of niet slaagt een goede AI te zijn. Maar je kunt ook iteratief ontwerpen, met meerder prototypes die wel of niet slagen in het halen van een bepaalde metriek.
Maar een emergent systeem heeft een onbekende set van metrieken. Wij weten niet waarom wij bijvoorbeeld bewustzijn bezitten. Of waarom sommigen van ons koffie lekker vinden. Of wat lekker vinden eigenlijk is en hoe dat in de hersenen wordt gegenereerd en verwerkt.
We weten wel wat, maar weten niet hoe het allemaal samenwerkt om ons op onze manier intelligent te maken.
Wij hebben intelligentie dus nog niet kunnen parametriseren en kunnen dus niet via 'guided evolution' tot iets komen dat net zo'n intelligentie heeft als wij.
Dat is hetzelfde als evolutie, maar dan sneller en met de mogelijkheid om terug te gaan naar de tekentafel als de ingeslagen weg fundamenteel inefficient blijkt te zijn.
Ik weet niet of het sneller is hoor. De natuur heeft dan wel veel latency maar ook bakken met bandbreedte. Zo lopen er momenteel een paar miljard 'mensen' experimentjes. Doe dat maar eens na met een computer. Hoeveel computers heb je nodig om 1 paar mensenhersenen te simuleren? Weten we niet, want we kunnen het nog niet. Maar het zullen er zoveel zijn dat niemand nu nog de rekenkracht bij elkaar heeft staan in 1 systeem. Nou, de natuur doet dus nu op dit moment miljarden van dit soort experimenten. En dat zijn dan nog de 'mensen' experimenten. De rest van het leven komt daar ook nog bij.
Wij kunnen dit dus nog lang niet sneller dan de natuur dat kan en die doet het ook al een stuk langer.
Buiten dat kunnen wij dus niet makkelijk bepalen of een ingeslagen weg in de toekomst, na wat verdere evolutie, nut kan hebben. Sterker nog, we weten niet of een ingeslagen weg nut heeft voor op korte termijn.
Stel je kiest een weg omdat er een bepaalde neuronverbinding opeens bijdraagt aan de totale inteligentie. Je weet dan niet of dat design later vast gaat lopen omdat dat ene neuon dan in de weg gaat zitten. Dat kan namelijk. Het kan dus zomaar zijn dat als je te selectief te werk gaat dat je dingen opbouwt waar je later mee zit (en je dus erg ver terug moet). De natuur komt dan sneller tot resultaat want die evolueert parallel daaraan een hele hoop dingen dier nu nog kansloos uitzien maar die in de toekomst potentie hebben. Wij kunnen dat allemaal niet overzien voor zo'n complex gebeuren als een stel hersenen. Maar dat is wel een vereiste voor de 'gerichte' methode. Je moet weten wat je doet.

We weten dus niet welke wegen tot resultaat zullen leiden. De natuur daarintegen doet het op een ongelovelijke schaal en denkt helemaal niet na over parametrisering. De werkelijkheid stelt de parameters en de organismen vullen het gat op. Volledig zelfstandig nog wel.

Ik denk dat voor complexe situaties de natuur gaat winnen.
Evolutie is NIET iteratief ontwerp. Iteratief ontwerp suggereert een doel en dat heeft evolutie niet. En het blijkt dus behoorlijk lastig om iets dat zonder een designdoel is ontstaan na te maken met een design methodiek. Gaat volgens mij niet werken, al is het alleen dat wij niet in staat zijn de implicaties van ons eigen 'design' te snappen. We kunnen dus nooit de juiste criteria stellen om het zelf te doen.
En evolutie gaat regelmatig terug naar de tekentafel. Dan is er weer een grote hoeveelheid organismes die niet tegen lava kunnen, of zuurstof ofzo. Maar dan is er (blijkbaar!) ergens een paar beestjes die dan wel overleven en zich vervolgens beter kunnen reproduceren.

Een ander belangerijk punt, al heb ik niet zo veel zin om verder te schrijven ( :) ) is het feit dat wat wij 'intelligentie' noemen eigenlijk een zeer specifieke set van gedragingen is bedoelt om met de gangbare set van problemen om te gaan. Intelligentie is dus in eerste instantie specifiek! Iets dat zich in een andere omgeving heeft ontwikkeld dan de onze kan zich onmogelijk op dezelfde manier hebben ontwikkeld als wij.
Als je in het lab synthetische problemen creeert dan zal hetgeen je ontwikkeld daar intelligenite voor ontwikkelen. Het is dan de vraag of dat goed mapt naar real-life problemen.
Hoe ga je een selectie maken van best presterende AI's zonder ze te laten interacteren met de echte wereld?
Overigens wint de natuur hier weer. Die heeft altijd de werkelijkheid als proefwerk.

Om even terug te komen op je spaghetticode verhaal, de hamvraag is of je zoiets als (menselijke) intelligentie kunt krijgen zonder spaghetticode (dus processen die op een onvoorspelbare manier van elkaar afhankelijk zijn).
Ik denk dat je als programmeur meer zou moeten lezen over de afhankelijkheden in biologische processen en de manier waaarop dat gereguleerd wordt in een gemiddeld organisme. Pas dan ga je snappen (dat was iig bij mij het geval) hoe complex die spaghetticode is. En dan ga je hopelijk ook snappen dat er door die complexiteit nieuwe, onkwantiseerbare combinatiemogelijkheden 'emergen' die heel moeilijk zijn, zo niet onmogelijk zijn om bewust te ontwerpen.

[Reactie gewijzigd door koelpasta op 10 augustus 2014 11:29]

Het is meer een filosofische vraag maar je wilt eigenlijk geen betere mens maken. Je wilt een gehoorzame 'slaaf' maken die beter is in het uitvoeren van menselijke taken. Je wilt geen AI met een IQ van 500 maken. Betere AI ongecontroleerd laten bijleren en beslissingen nemen is al genoeg gedemonstreerd in diverse films).

"Bescherm mensen" -> hmm, als ik ze allemaal in coma breng dan kunnen ze elkaar niet vermoorden...
De enige reden dat AI zoveel uit de hand loopt in films ligt niet aan AI zelf, maar omdat in films altijd dingen uit de hand lopen. Of die films echt iets met de werkelijkheid te maken hebben valt nog te betwijfelen.

Er is geen enkele reden om aan te nemen dat een voldoende slimme AI noodzakelijk een psychopaat zou zijn. Een machine die intelligenter is dan een mens kan ook prima een veel beter besef hebben van moraliteit en ethiek; misschien is dat zelfs een logisch gevolg.

Zie bijvoorbeeld wat je zegt:
"Bescherm mensen" -> hmm, als ik ze allemaal in coma breng dan kunnen ze elkaar niet vermoorden...
Welk daadwerkelijk intelligente rationele machine beschouwt nu daadwerkelijk ieder mens als mogelijke moordenaar?

[Reactie gewijzigd door DCK op 8 augustus 2014 17:37]

Welk daadwerkelijk intelligente rationele machine beschouwt nu daadwerkelijk ieder mens als mogelijke moordenaar?
Als je werkelijk rationeel gaat kijken dan komt de mensheid er in zn algemeenheid nogal slecht vanaf hoor.
Het zal niet veel intelligentie kosten om te beseffen dat de mensheid een plaag is die andere organismes uit het ecosysteem drukt en zonder na te denken een hele planeet naar de maan helpt.

Een werkelijk inteligente rationele machiene zou de mens per direct uit de omgeving verwijderen...

Het is alleen zo dat wij mensen niet rationeel zijn maar gedreven door irrationele ingvingen die we onder andere nog meeslepen uit de evolutie.
Bijna alles dat we doen en denken is gedreven of beinvloed door irationele gedachtes. Er is dus ook niks perfects aan de mens. We zijn enorm beperkt in ons denken en doen (vergeleken met wat er werkelijk mogelijk is). We kunnen het gewoon niet bevatten omdat we helemaal nooit zijn geevolueerd om bepaalde dingen te bevatten. Stom voorbeeld, niemand begrijpt kwantummechanika, ondanks dat we het al 100 jaar geleden hebben ontdekt. We zijn er simpelweg niet voor ingericht.
Het is dus ook nog eens waarschijnlijk dat wij een werkelijk rationele actie die bijvoorbeeld door een rationele AI zou worden genomen, helemaal niet kunnen begrijpen.

dus nogmaals terug naar je vraag:
Welk daadwerkelijk intelligente rationele machine beschouwt nu daadwerkelijk ieder mens als mogelijke moordenaar?
Dit weten we niet omdat we zelf verre van rationeel zijn.
Een machine die intelligenter is dan een mens kan ook prima een veel beter besef hebben van moraliteit en ethiek;
Volgens mij ligt het anders. Moraliteit en ethiek zijn functies van de hersenen.
Als je dus een 'vanilla' AI maakt dan zit daar geen spatje moraliteit of ethiek in. Dat zullen we dus zelf nog moeten inbouwen op de een of andere manier.
De vraag is ook hoe goed we zoiets kunnen en of dat fout kan gaan.

Voor moord heb je moreel besef nodig, maar om iemand te doden niet. Dat gebrek aan ethiek is denk ik wat er in films wordt voorgesteld.
"Bescherm mensen" -> hmm, als ik ze allemaal in coma breng dan kunnen ze elkaar niet vermoorden...
En bedankt, Bunga. Nu kan AI deze oplossing vinden. Je wordt vriendelijk bedankt names de comateuze mensheid van de toekomst. Bedankt!
Als mens hebben we ook geen sonar, maar dat hebben we ook 'uitgevonden'; dus ik denk dat het wel kan ja :)
De mens kan ook niet vliegen, maar heeft wel vliegtuigen.

De mens heeft röntgenfoto's waarmee hij dingen ziet die anders onzichtbaar waren.

De mens heeft gereedschappen die zijn functioneren ondersteunen en versterken, maar dat is niet wat ik bedoel.

Ik bedoel juist dat de mens enkel kan bedenken en opmerken wat hij kan met zijn brein. Ik denk niet dat de mens daarom in staat is iets te maken dat de mensheid echt overtreft.
Definieer echt overtreft. Je noemt het ene voorbeeld na het andere waarbij we dingen hebben ontwikkeld die beter zijn dan onszelf.

Waarom zou het niet kunnen trouwens? Iets dat 'beter' denkt dan wij. Wij zitten vast aan onze evolutionaire legacyprocessen en kunnen dus bv. niet ineens een siliciumprocessor evolueren. In die zin, lijkt het me eerder waarschijnlijk want we zijn niet gebonden aan dezelfde limieten als de evolutie (lees: Elke generatie ontwerp moet goed functioneren. Stel je voor dat je van propellorvliegtuigen moet evolueren naar jet-engines, waarbij elke tussenstap moet kunnen vliegen).
Hoezo hebben we als mens geen sonar? Werkt best. Er zijn meerdere blinden die het zichzelf hebben aangeleerd. Klakken met je tong en naar de reflectie luisteren.

Dat geeft overigens maar weer aan hoe ontzettend flexibel het neurale netwerk in je hoofd is. Het 3D deel van je brein kan zichzelf herprogrammeren van licht naar geluid.
Hoezo herprogrameren?
Ik hoor nu ook prima 3D geluid en ik ben niet blind. In geluid zitten onder normale omstandigheden behoorlijk wat ruimtelijke elementen waaruit je de ruimte uit kan reconstrueren.
Het grote punt is dat mensen te druk zijn met visuele input te verwerken om dit goed te merken. Al je een tijdje je ogen dichtdoet en gaat luisteren dan hoor je een heel stuk meer details. En ja, klikgeluiden werken goed om vormen mee te bemonsteren. Maar ook hier hoef je niet blind voor te zijn om het te kunnen ervaren.

Je hersenen hoeven dus helemaal geen nieuwe functie te leren, ze moeten een bestaande functie beter trainen.
Ik bedoel echt sonar zoals vleermuizen - dat kunnen de meeste mensen niet. Jij kunt niet met je ogen dicht een deur vinden op geluid.
Jij kunt niet met je ogen dicht een deur vinden op geluid.
In veel gevallen wel. Maar ik hou me ook bezig met sounddesign dus ik ben het gewend om naar minuscuule verschillen in geluid te luisteren.
Je gehoorsysteem haalt op meerdere manieren ruimtelijke informatie uit geluid. Een deel daarvan wordt (standaard!) door je visuele cortex afgehandelt.
Als jij iets achter je hoort dan wordt dat geluid al in je besef van ruimte geprojecteerd. Het is dan al een simpele vorm van sonar.
Erger nog, veel mensen kunnen geluid zelfs met 1 oor goed lokaliseren. Daarbij gaat het normaalgesproken over een duidelijk geluid.
Als je klikjes maakt dan heb je niet 1 duidelijk geluid maar een hele serie. Maar grappig genoeg kunnen wij dat ook redelijk decoderen. Alleen we trainen dat meestal niet omdat we ook nog visuele ques van de omgeving hebben. Maar het zit er wel in de achtergrond, levert constant extra informatie op en kan, bij gebrek aan visuele cues, prima getraind worden om een effectiefe 'sonar' te maken.

Vleermuizen zijn dan weer super goed in dit truukje. Bij hun is dat systeem gewoon een stuk verder geevolueerd en gespecialiseerd. Bij ons is het vooral een aanvulling op de visuele input.

Maar hoe dan ook verwerkt ieder mens een deel van het geluid in zn visuele cortex. Als dit er niet was dan konden we dat niet gewoon zomaar eventjes aanleren. Het wordt gefaciliteerd door reeds geevolueerde systemen. De flexibiliteit die jij denkt te zien bestaat feitelijk niet. Je kunt niet eventjes op commando geluid door je visuele cortex laten gaan. Dat pad moet voorbereid zijn. Het is eigenlijk niet anders dan je spieren trainen o.i.d. Je hebt al spieren en door ze veel te gebruiken worden ze sterker.
Moeilijke van je stelling vind ik het woord "beter"; er is tussen mensen al zo'n groot verschil in denken dat je moeilijk kunt zeggen de één denkt "beter" dan de ander.

De vraag die ik herleid uit jouw stuk komt eigenlijk neer op: zouden we een computer kunnen maken die zelfstandig uitvindingen kan doen?
M.a.w. kan een computer sneller en efficiënter met nieuwe oplossingen komen ten opzichte van een mens?

Nog altijd zijn wij de drijvende kracht achter de innovaties, zo lang dat het geval is, kun je wat mij betreft niet stellen dat het "beter" is.

Vooralsnog heeft een computer (robot) toegang tot meer parate kennis. Het zou mooi zijn als hij ook iets met die kennis kan, maar nog altijd is het kennis die door iemand paraat is gezet.
Pas op het moment dat een computer in staat is om zelfstandig nodige kennis te verzamelen en te combineren en zo op eigen wijze tot vernieuwing te komen, kom je zeer dichtbij een cognitief bewustzijn.

[Reactie gewijzigd door dwarfangel op 8 augustus 2014 17:14]

Het woord 'denken' impliceert een onderliggend bewustzijn. Hoe goed je een AI ook het menselijke denken en haar interactie kan laten nabootsen door middel van programmering ('self-learning ability' moet immers ook in beginsel door een bewust iemand geprogrammeerd worden), het blijft een programma zonder bewustzijn. Het woord is imo dan ook niet van toepassing op computers en programmering, maar dat zal op deze site wel als vloeken in de tweakers-kerk worden opgevat.
Is er een reden dat "bewustzijn" alleen op een machine in een menselijk hoofd kan drAaien, en niet op een van koper en silicaat? Een brein is ook slechts een machine die geavancerd op stimuli reageert.
Nice :)
In de toekomst misschien naast een CPU en GPU ook nog dit soort processor in de computer. :)
Hoe zou die genoemd gaan worden; HPU (Human Processing Unit), BPU (brain procssing Unit,...?
OPU (Opinionated Processing Unit)
Mwho, big blue "heeft ook een mening", over schaken..

In de biologie en psychologie en aanverwant ontdekt men juist dat we steeds meer eigenlijk een bloed-robot zijn. Dat we vaak keuzes denken te maken die onderbewust al bij het in de winkel lopen en naar een stelling kijken, gemaakt waren.
Dat chemie in je bloed/hersenen al belachelijk veel responses kunnen voorspellen.

Bij de AI moet dus nog een behoorlijke batterij sensoren om mee te beginnen.
En een echt goede ai computer, is dat pas, zo zal dan blijken, na 3, 5, 8 (of noem maar getallen) JAAR.
"Gee Brain, what do you wanna do tonight?" "The same thing we do every night, Pinky! Try to take over the world!!"
Dit is een hardware uitvoering van een Neural Network, dus NNU is een goede kanshebber.
HPU (Human Processing Unit), BPU (brain procssing Unit,...?
Met mensen of hersenen heeft deze chip nog erg weinig te maken.
Ik stel voor om het NPU te noemen, Neural Processing Unit.
:)
Ik mis in het artikel wat voor natuurlijk brein het mee te vergelijken was, als ik me niet vergis was de vorige chip namelijk nog 'dommer dan' het brein van een bij, waar zijn ze nu dan?

En, hoewel het natuurlijk een heleboel ethische vragen met zich mee brengt, waarom doen ze niet meer met echte natuurlijke breinen? er zijn ondertussen meerdere onderzoeken die bijv een kakkerlak of muis een robot laten besturen door gebruik te maken van wat we op dit moment weten over hersenen, kan ik me goed voorstellen dat ze met simpelere wezens (o.a. i.v.m. minder ethische bezwaren) best een processor zouden kunnen maken?
Een bij heeft circa 1 miljoen neuronen, wat waarschijnlijk de reden is dat bijen als maat gebruikt worden. Deze chip heeft 256 neuronen per core, 1 miljoen in totaal, en zit dus ruwweg op het nivo van een bij.

[edit]
De gemiddele neuron in een bij heeft 1000 verbindingen, deze chip heeft er maar 256/neuron. Dat scheelt nog een factor 4. En de echte informatie-opslag zit in de verschillende verbindingssterktes van het netwerk

[Reactie gewijzigd door MSalters op 8 augustus 2014 14:53]

Er van uitgaande dat de wet van Moore ook hier toepasbaar is duurt het dan nog maar zon 15 jaar voordat de kracht van een menselijk brein op een chip staat.
Ze maken geen brein dus het heeft geen zin om het met een brein te vergelijken, er zijn een aantal zaken fundamenteel verschillend met hoe een brein functioneert, dus die vergelijken zal hoe dan ook mank lopen.
Heel interessant! Hoe goed de huidige processors tegenwoordig ook mogen zijn, de mogelijkheden en efficiëntie van het menselijk brein blijven fascinerend. Hopelijk kunnen we nog een hoop leren van het imiteren daarvan.
Waarom zou je je beperken tot het imiteren van de mogelijkheden en efficiency van het menselijk brein? Misschien kan het nog wel veel slimmer/efficiënter. Zie bijvoorbeeld het door mensen uitgevonden wiel - zo efficiënt is de natuur niet eens! Dat zou ook het doel bij AI moeten zijn.
Ow jawel hoor.. waarschijnlijk had de natuur zeker wel tot een resultaat kunnen komen wat erg veel weg heeft van een wiel, echter had de natuur geen mooie geasfalteerde wegen tot haar beschikking om het wiel nuttig te maken. Benen zijn namelijk veel efficienter op natuurlijk terrein . Sterker nog, de natuur heeft zelfs de meest simpele beesten uitgerust met zulke efficiente benen dat zelfs na jaren van ontwikkeling en onderzoek het de mens (nog) niet is gelukt om een machine te maken die inzetbaar is op natuurlijk terrein.

Daarnaast heeft de mestkever al miljoenen jaren voor de mens het wiel uitgevonden..
Think again. Een bolletje rollen is nog geen wiel. Het belangrijkste van het wiel is de as die op zijn plaats blijft tov het voertuig. Niets in de natuur werkt met zo'n draaiende as.
Op cellulair niveau werkt ATP-synthetase met een draaiende as, net als flagellen van sommige bacteria en protisten (beide gebruiken een rotor-statorprincipe).

[Reactie gewijzigd door Silmarunya op 8 augustus 2014 14:40]

Het is dus een processor die een bepaalde eigenschap heeft die overeenkomt met een van het brein. Het is nog lang geen brein, hoe graag ze dat ook zouden willen.

FF de sfeer van het artikel een beetje onderuit halen, voor de eerste pro-futo-maar-eng reakties komen ;)
Dat beloven ze ook niet. Het enige dat IBM belooft is dat deze processor werkt volgens een methode die lijkt op een (klein deel van) een brein en bijgevolg ook bepaalde sterktes en zwaktes van een dierlijk brein heeft.

Een 'brein' is nog wel enige decennia veraf, als het er ooit zal komen.
Dat is exact wat ik schreef ;)

De titel van het artikel klinkt alsof ze een brein gemaakt hebben. Veel mensen zouden deze zo gaan interpreteren iig.

[Reactie gewijzigd door Engineer op 8 augustus 2014 13:32]

Maar perfect kan het niet worden, het menselijk brein heeft zowat zijn gebreken hé.
Of druk ik mij nog te zacht uit, ben trouwens benieuwd wat het uiteindelijk gaat worden.
Nou een gezond brein eigenlijk niet.
Wel de software die het aanstuurt, en dito de chemische processen er onder (voeding, ingewanden, aangevoerde plasma chemie e.d.)
In theorie is het (gezonde, pure) brein wel 'een Gods wonder'.

Daarom zijn er ook neureowetenschappers e.d. die willen tweaken, autisme, maar sociaal en cognitief, savant, maar ook normaal, kortom uber intelligent EN sociaal,
"IQ-EQ brein."

[Reactie gewijzigd door notsonewbie op 8 augustus 2014 13:47]

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True