Hace 6 años | Por Izaga a hardzone.es
Publicado hace 6 años por Izaga a hardzone.es

Intel acaba de presentar su primer chip neuromórfico Lohi, el cual se ha desarrollado para emplearse en el desarrollo y comprobación de algoritmos complejos de cálculo. Loihi contará con “sólo” 130.000 de "neuronas" y 130 millones de "sinapsis", a años luz del promedio de 84.000 millones de neuronas que se calcula que hay en un cerebro humano.

Comentarios

gonas

¿Como se programa esto?

Mateila

#1 A ostias.

s

#1 Se educan...

f

#1 Unos se entrenan (para aprendizaje supervisado) mientras que otros aprenden solos (aprendizaje no supervisado).

gonas

#14 estas describiendo como funciona una red neuronal, desarrollada con un perceptrón o un algoritmo similar. Pero no era eso lo que preguntan. Por lo que intuyo un chip neuromorfico, esta compuesto po algun tipo de neurona electronica. Y lo que no se es como se crean las redes ni los pesos de esas redes.

De todos modos, gracias por tu interés.

Acido

#16

"estas describiendo como funciona una red neuronal, desarrollada con un perceptrón o un algoritmo similar. "


Un perceptrón no es un algoritmo, es un modelo numérico inspirado en las neuronas biológicas... Básicamente un perceptrón es una neurona artificial, con varias entradas (análogo a las dentritas de las neuronas biológicas...) a las cuales corresponde unas "sinapsis" que se modelan con números llamados "pesos" y una salida (análogo al axón de cada neurona biológica).

Cuando dice " Loihi contará con “sólo” 130.000 de "neuronas" y 130 millones de "sinapsis" "
lo que imagino es que este chip tiene 130 registros de memoria configurables, cada uno para almacenar un valor númérico, que sería un "peso". Y esos números / registros pueden estar físicamente asociados a unidades configurables / "cableables" (conexiones cambiables para definir distintas estructuras de redes que se quieran).




"Pero no era eso lo que preguntan. "

¿Por qué dices lo que preguntan si has sido tú el que ha preguntado?
Dijiste "¿Como se programa esto?"

Y como te he dicho antes, esto no es un microprocesador de arquitectura tradicional con su ejecución de instrucciones secuencial... así que no tendrá un programa de los tradicionales...
Entendí que preguntabas cómo se usa, porque "programar" no es que se programe.

Aparte del algoritmo de entrenamiento que dije antes, otro proceso para usarlo sería definir la estructura de la red... especificando qué neuronas se conectan a otras y eso.


"Por lo que intuyo un chip neuromorfico, esta compuesto po algun tipo de neurona electronica. "


Sí, imagino que tiene perceptrones básicamente.


"Y lo que no se es como se crean las redes "

Para crear las redes imagino que hay que definir qué neuronas se conectan a cuáles...

Si tiene 130 000 neuronas... pues habrá desde la neurona 1 hasta la neurona 130 000
Más bien, como 130 000 está cerca de 128*1000 ó 128*1024 pues serán 17 bits.
Con 17 bits nos referimos a una neurona...
Se supone que el chip tendrá un protocolo para definir qué neuronas se conectan a cuáles.


"ni los pesos de esas redes."

Y esto ya dije antes cómo se hace.
El propio chip creo que hace el entrenamiento...
Por ejemplo, tendrá una patita que cuando le pongas un 1 será un modo de entrenamiento, y le vas metiendo entradas y salidas deseadas, de forma que vaya cambiando sus pesos. Lo que quiero decir es que ese cambio de pesos lo haría el propio chip, y no calcularlo desde otro ordenador y grabarlo después de calcularlo.
Y cuando no esté en modo entrenamiento, las entradas las usa para calcular la salida.... que debería ser similar a la salida deseada que se introdujo en el entrenamiento, si ese entrenamiento se consiguió finalizar con éxito.

gonas

#18 un modelo numérico inspirado ... eso es un algoritmo.

El propio chip creo que hace el entrenamiento... lo interesante en la IA son los algoritmos de aprendizaje. Si no se pueden modificar no valdrían para nada.

Acido

#19

"un modelo numérico inspirado ... eso es un algoritmo."

Bueno, yo no lo llamaría así pero puede que tengas razón.

Algoritmo: "Conjunto ordenado de operaciones sistemáticas que permite hacer un cálculo y hallar la solución de un tipo de problemas."
En otras palabras, un algoritmo viene a ser una forma de hacer algo... Por ejemplo, una receta, si quieres hacer una tortilla de patatas el algoritmo o receta dirá: Sean unas patatas, unos huevos, cebolla, aceite, sal... Paso1: pelar y cortar las patatas, Paso 2: pelar y cortar la cebolla, Paso3: echar el aceite, Paso4: poner a fuego medio o bajo, Paso5: echar las patatas, .... etc

La neurona biológica tiene elementos como dendritas, axón, unas partículas / moléculas con carga, unas sinapsis que regulan cierta circulación de cargas o iones ... y se generan unas corrientes.
Un modelo matemático de eso consiste de decir que las sinapsis se modelan con un número (ej: número real entre 0 y 1... que puede valer cosas como 0.0001 ó 0.9834), que las dendritas y las cargas que circulan por ellas las llamo entradas y las modelo con un número...
Lo único que tiene similar a un algoritmo es la fórmula que calcula la salida. Pero esa fórmula no es lo único que define al perceptrón. Aunque, bueno, puede tener cierta similitud a lo de la receta de la tortilla... porque es como decir: sea un vector de pesos w_i, sea un vector de entradas e_i, sea un umbral y sea una función de activación Fac de R a R... la salida es igual al resultado de la Fac( umbral + sumatorio desde i =1 hasta i=n de w_i * e_i )




"El propio chip creo que hace el entrenamiento... lo interesante en la IA son los algoritmos de aprendizaje. Si no se pueden modificar no valdrían para nada."



El artículo dice esto:

"Cada uno de estos núcleos neuromórficos incluye un “motor de aprendizaje”, que permite que los parámetros de aprendizaje del núcleo cambien al vuelo según las necesidades particulares de una carga de trabajo dada, a través de supervisados, sin supervisión, refuerzo y otros paradigmas de aprendizaje."

Y con eso que dice entiendo que tienes ya en el chip cosas que te permitan ejecutar algunos algoritmos de aprendizaje muy comunes, como el Back-Propagation (Retropropagación)... lo cual no quita que a lo mejor puedas hacer otro entrenamiento como te de la gana, en un ordenador fuera de ese chip, y una vez acabado ese entrenamiento fuera puedas grabar los pesos para que funcione la red neuronal que resuelva un determinado problema.

A mi modo de ver la ventaja de hacer el entrenamiento en el propio chip neuromórfico es la velocidad.... Si tienes 130 millones de sinapsis, tienes que calcular 130 millones de valores (números) pero con un solo procesador puedes tardar un buen rato, porque solamente puedes hacer una operación cada vez. Sin embargo, con un entrenamiento en el chip unas operaciones se pueden hacer en paralelo con otras... por ejemplo, los 10000 pesos de cada neurona se podrían calcular a la vez, y no uno detrás de otro... lo que permitiría hacerlo al menos 10 000 veces más rápido. Si en el otro caso tarda un día = 24 horas = 24*60 minutos = 86400 segundos... pues con esto se podría hacer en 8.6 segundos.
Pero eso de 10 000 son los pesos de una neurona... y se podrían actualizar a la vez todas las neuronas de una misma capa, quizá 10 000 neuronas a la vez, unos 100 millones de pesos a la vez... lo que podría resultar en 100 millones más rápido que un ordenador tradicional sin tarjeta gráfica de GPUs. O quizá 100 veces o 1000 veces más rápido que uno con GPUs.
El caso es que esos 8.6 segundos que dije antes podrían ser 0.86 milisegundos... y eso puede suponer un entrenamiento en tiempo real, que la red aprenda sobre la marcha de lo que está ocurriendo en el "mundo" y esto es una diferencia sustancial frente al caso de antes que acumulas más datos que los que eres capaz de aprender y no eres capaz de procesar todo a tiempo.

anxosan

Igualar a un cerebro humano con esos chips sería solo cuestión de escala, necesitamos:
- 646154 chips Loihi
- Un programador genial y más inteligente que todos esos chips juntos.

squanchy

#7 No necesitan programador, si no entrenamiento.

R

#8 Para ser buen nadador necesitas entrenamiento, pero si entrenas en pistas de atletismo.... que el sistema se entrene no quiere decir que no deba diseñarse antes, Primero se programa y luego se entrena solo

squanchy

#24 La red neuronal no hay que programarla, porque ya está montada por hardware. Sólo hay que entrenarla para que memorice los pesos de cada neurona.

R

#25 La red neuronal se programa/diseña, debes decidir el número de capas, neuronas por capa, distintas fases de adaptación de la entrada, incluso que los resultados de una red sean entrada para otra, numero de entradas y su tipo, numero de salidas y su significado, etc... si el chip fuese algo fijo y solo varia los pesos de cada neurona mejor que lo vayan tirando ya.

Cada red neuronal es diferente por su configuración, no solo por los pesos de cada neurona, sino la misma red neuronal que usamos para entender el lenguaje natural nos serviría también para clasificar imágenes, solamente entrenándola para esa tarea, y no es así.

R

Bueno ya le llega para ser Presidente.

Sofrito

No creo que todas las neuronas estén involucradas en el "pensamiento consciente". La corteza cerebral, responsable de nuestro intelecto, cuenta con al rededor de 10 000 millones de neuronas:
https://es.wikipedia.org/wiki/Corteza_cerebral

La verdad es que da un poco de miedo. Cada vez estamos más cerca de Matrix.

areska

Mejor, porque de la inteligencia analógica queda poco ya.

Yo soy una conciencia.
La conciencia es un fenómeno natural que emerge de un cerebro.
Cada persona sólo puede demostrarse empíricamente a sí misma.
Las demás conciencias se infieren lógicamente.
Es imposible inferir lógicamente la existencia de conciencia en materia inorgánica o en un software: http://xurl.es/qyf1w

E

#12 ¿Cómo dices que has descartado ser parte de una simulación artificial? Si lo fueses ¿no sería acaso tu forma de "inferir" otras consciencias un modo de inferir, sin querer, consciencia en materia inorgánica?

Me temo que una persona no puede demostrarse empíricamente, nunca podrás demostrar que tus recuerdos o identidad son válidos cuando estas cuestionando precisamente todo lo que procesas (es decir, tu propio ser abstracto).

Puede que seas una simulación de 5 segundos para ver desde unos conceptos base a que conclusión llegas. Éste mensaje podría ser parte de la prueba.

D

Toooodo el mundo hablando de Google, y sin embargo todos sabemos que ni Intel ni AMD están precisamente quietos...

l

129.999 más que yo. Pasote

c

se me hace muy raro que rule con solo 70 milivoltios... será una errata.
El artículo no comenta una de las principales diferencias entre una neurona y un procesador, y que el procesador trabaja con 0 y 1 la neurona también pero es que aparte una neurona también trabaja con la intensidad de la señal y eso no lo están teniendo en cuenta.
Aún así esas "raspberries" me parecen la poya 😀 no he visto cuanto valian...

sifou

#11 Milivatios, lo cual podría cuadrar

Y es alimentado todos los que tienen con sólo 70 milivatios de potencia. O alrededor de 1/10000 la densidad de potencia de los microprocesadores convencionales.


Lo que no me cuadra es lo de 1/10000: 70*10000=700000mW=700W. No conozco ningún procesador comercial de 700W, supongo que habrá dejado un cero de más.

c

#13 tienes razón, igual es por neurona ^^