¿Cuántas neuronas simples puede simular una computadora portátil?

Las redes neuronales artificiales son bastante fáciles de construir.

La cantidad de almacenamiento por neurona suele ser igual a la cantidad de conexiones entrantes que tiene.

En el cerebro, estas interconexiones se llaman “sinapsis”.

Para cada sinapsis, necesitamos el número de identificación de la neurona de la que proviene y un “peso”. El número de bytes en la entrada depende del número de neuronas en la red. Un byte sería suficiente para solo 256 neuronas. Dos bytes para 65536, tres bytes para alrededor de 16 millones y cuatro bytes para alrededor de 4 mil millones.

Probablemente sea seguro decir que podría simular más de 16 millones de neuronas, por lo que iremos con un número de 4 bytes para “qué neurona se conecta aquí”.

Luego, necesitamos un “peso” – cuán importante es esta entrada – generalmente será una cantidad con signo – es difícil decir qué tan precisa debe ser – así que seré optimista y diré que 1 byte firmado es suficiente.

Finalmente, necesitamos un valor para decir si la neurona alcanzó su potencial para disparar … eso es solo un poco en su sistema.

Entonces, el almacenamiento total necesario es de 5 bytes multiplicado por el número de sinapsis más un bit por neurona para el bit “¿se disparó?”.

En un cerebro humano, hay alrededor de 7,000 sinapsis para cada neurona … por lo que el requisito de almacenamiento por neurona se ve reducido por el costo por sinapsis.

Una laptop Win10 típica tiene entre 4 y 16 Gbytes … supongamos que es una laptop de gama alta.

Entonces, con 5 bytes cada uno, podríamos almacenar entre aproximadamente mil millones y alrededor de 3 mil millones de sinapsis, lo que nos da entre 140,000 y 420,000 neuronas.

El tiempo de cálculo para evaluar esta red sería un poco grande.

Ingenuamente, para cada incremento de tiempo y para cada sinapsis, necesitaría hacer una búsqueda de memoria aleatoria para obtener el estado de la neurona de entrada, luego un condicional booleano, luego agregar el peso al total de la neurona de salida si se disparó … luego una prueba condicional por neurona para ver si se disparó la TI y almacenar el resultado.

140,000 a 420,000 recuperaciones de memoria aleatorias serían MUY malas para la memoria caché: este programa estaría limitado por el rendimiento de la memoria con un 100% de seguridad … casi cada paso sería una falta de memoria caché.

Calcula alrededor de 100ns por sinapsis para leer los datos; el resto probablemente sea insignificante … por lo que nuestra computadora portátil de memoria grande podrá realizar un ciclo con un paso de tiempo de aproximadamente 0.4 segundos … ¡lo que realmente apesta!

En realidad, sería mejor usar la GPU en lugar de la CPU, pero aun así, los patrones de acceso a la memoria matarían el rendimiento.

Un cerebro humano real tiene un billón de sinapsis, por lo que es aproximadamente 2 millones de veces más complejo que nuestra simulación de computadora portátil. Cada neurona puede dispararse un par de veces por segundo, que es sobre lo que puede hacer nuestra simulación.

Estos cálculos son MUY ingenuos, y hay mucho más sutileza en lo que está sucediendo aquí. Donde me he equivocado, ha sido del lado optimista.

Está bastante claro que una computadora portátil no es rival para un cerebro humano.

OpenCL permite 256 operaciones simultáneas en MacBook. En el pronóstico optimista de baja frecuencia es 256000 cálculos simples por segundo. Si aplasta las partes de la red de alimentación, puede emular miles de neuronas. Eso es suficiente para aplicaciones de usuario simples con redes neuronales precompiladas.

Dependería de la computadora portátil y de la implementación de la neurona, por lo que no puedo dar una estimación directa, pero la mejor manera sería implementar y ejecutar la simulación. Sugeriría comenzar con una gran cantidad de neuronas en paralelo y luego seguir bajando hasta que se ejecute.

More Interesting

¿Qué cualidades debería tener una computadora portátil si la compro solo para editar videos?

¿Cuál es la diferencia entre una laptop y una notebook?

La computadora portátil de mi amigo explotó mientras la cargaba. ¿Cuál es la posible causa y cómo puedo evitar que el mío tenga el mismo destino?

¿Es normal que una batería de computadora portátil reparada se cargue solo al 99% y no al 100%?

¿Cuál es una buena solución de GPU externa para permitir que mi computadora portátil (HP Specter 360X) ejecute Destiny 2?

¿Qué opciones de financiación están disponibles para que un estudiante de fuera de la UE en Alemania compre una computadora portátil?

En términos de firmware y controladores, ¿qué fabricantes de computadoras portátiles son más compatibles con Debian Linux?

¿Debo instalar Ubuntu en mi portátil débil?

¿Cuál es la mejor tableta para Microsoft OneNote?

¿Tendrán garantía las computadoras portátiles importadas cuando se vendan a los consumidores en India?

¿Cuál es la mejor computadora portátil con menos de 70k INR para un programador y jugador pesado con 8GB o más de RAM, un procesador i7 y una tarjeta gráfica de 2GB?

Cómo construir una batería para alimentar una computadora portátil

¿Cuál es el mejor fabricante de computadoras portátiles?

¿Cuál es el mejor modelo de computadora portátil para comprar en la India?

¿Por qué mi computadora portátil se apaga repentinamente a pesar de que todavía tengo más del 50% de la capacidad de la batería?