Programarea neuronală este folosită pentru a crea software care imită funcțiile de bază ale creierului. Este o componentă cheie a inteligenței artificiale (AI) și creează software care poate prezice necunoscute, cum ar fi vremea și tendințele bursiere, precum și jocuri în care adversarul cibernetic se îmbunătățește pe măsură ce câștigă experiență. Avantajul programării neuronale față de programarea tradițională este că software-ul său este capabil să învețe și să se adapteze la date noi.
În general, programarea neuronală folosește o arhitectură de calcul numită procesare neuronală, care utilizează neuroni artificiali sau noduri care sunt grupate în rețele pentru a îndeplini sarcini complexe. Fiecare neuron artificial este declanșat de o anumită valoare numerică, care determină când și unde va trimite un semnal următorului neuron. Un singur neuron este programat cu o regulă simplă dacă-atunci pentru o sarcină de bază. Dacă datele au o valoare de -1, atunci îndeplinește o funcție. Dacă valoarea datelor este 0, face altceva.
Programarea neuronală este un proces în două etape. Primul pas este să introduceți informații și reguli fundamentale de care o aplicație software are nevoie pentru a înțelege datele pe care le va primi. Acest software este de obicei programat cu biți de părtinire, dând mai multă credință anumitor tipuri de informații. De exemplu, programarea neuronală a software-ului bursier va include funcțiile de bază ale tranzacționării bursiere, cum ar fi premisa că cererea mai mare pentru un stoc îi crește valoarea. De asemenea, va include anumite părtiniri, cum ar fi modul în care software-ul ar trebui să acorde o atenție deosebită tendințelor din rapoartele trimestriale privind veniturile.
Al doilea pas în programarea neuronală se numește antrenament. Datele sunt folosite pentru a învăța software-ul anumite tendințe și posibilități; în general, cu cât software-ul preia mai multe date, cu atât devine mai bine la crearea de rezultate precise. De exemplu, datele ar putea învăța computerul că atunci când o anumită industrie are câștiguri puternice în al doilea trimestru, înseamnă, în general, că al patrulea trimestru este lent. Valorile stocurilor sunt legate de rapoartele de câștig, astfel încât software-ul ar putea prezice în cele din urmă că stocurile pentru acea industrie vor scădea după ce rapoartele din al patrulea trimestru sunt în momentul în care industria a avut un al doilea trimestru puternic. Producția software-ului ar putea sfătui în cele din urmă un comerciant să vândă înainte de apariția rapoartelor privind câștigurile din trimestrul patru.
De obicei, avantajul programării neuronale este că software-ul nu are nevoie de informații perfecte pentru a funcționa. Spre deosebire de programarea tradițională, care se oprește atunci când apar erori, programarea neuronală se poate adapta la intrările imperfecte folosind informații din trecut pentru a rezolva problema. Așa funcționează și creierul uman, deși este mult mai complex. De exemplu, un om ar putea fi capabil să recunoască un vechi prieten, chiar dacă acel prieten s-a îngrășat sau și-a crescut barbă; alte aspecte ale prietenului – structurile faciale, ochii, felul lui de a merge sau vocea – declanșează recunoașterea. Programatorii neuronali continuă să perfecționeze software-ul care nu numai că va imita creierul, dar, în unele cazuri, va fi mai rapid și chiar mai precis.