Ir al contenido principal

Procesadores Neuronales

Muchas veces se escucha sobre temas de procesadores, pero en la mayoría de los casos es referente a el numero de núcleos, la frecuencia o la arquitectura, ya sea RISC o CISC, pero rara vez escuchamos los llamados procesadores neuronales, a continuación, se explica un poco que son estos procesadores.

Los procesadores neuronales funcionan (se supone) como la red neuronal del cerebro humano, según IBM su procesador neuronal posee tantas neuronas como el cerebro de un ratón, estos procesadores funcionan muy diferentes de los tradicionales que ejecutan instrucciones, los neuronales poseen una serie de ‘neuronas artificiales’ conectadas entre sí que buscan predecir los resultados mediante una serie de parámetros establecidos para un problema.

Estos procesadores buscan mayor velocidad y eficiencia, imitando el funcionamiento del cerebro el cual es fantástico, de esta manera implementar algo muy deseado en la computadoras que es la capacidad para aprender, pero para esto falta bastante tiempo, ya que el procesador neuronal de IBM mencionado anteriormente posee un tamaño descomunal en comparación con los procesadores convencionales y solo tiene la capacidad de un ratón, aunque existen otros ,como el desarrollado por las universidades de Zhejiang y Hangzhou Dianzi de china, que fue desarrollado en un chip de 180nm, aunque este tiene solamente 2048 neuronas por los 48 millones del de IBM.
Procesador Neuronal de IBM - Fuente

El tamaño del procesador de IBM y de las universidades de china es muy evidente, así como su capacidad y cantidad de neuronas, el de IBM que es el que posee la mayor cantidad, posee 48 millones de neuronas, si lo comparamos con el cerebro, el cual es el principal objetivo de estos procesadores, posee 100000 millones de neuronas y como es evidente se está todavía lejos de dicho objetivo.


Estos procesadores presentan una alternativa a los procesadores tradicionales sumamente interesante, utilizando como base la fascinante computadora que es el cerebro humano, pero la cual todavía se está muy lejos de que sean lo suficiente funcionales como para ser un estándar en la computación a nivel mundial, pero se tendrá que esperar para saber cómo evolucionara, ya que tiene un potencial muy alto.

Referencias:
González, J. (2015). El procesador basado en redes neuronales de IBM crece, ya tiene 48 millones de neuronas digitales. [online] Xataka.com. Disponible en: https://www.xataka.com/investigacion/el-procesador-basado-en-redes-neuronales-de-ibm-crece-y-ya-se-parece-al-cerebro-de-una-rata [Consultado 30 Oct. 2017].
Julián, G. (2016). Las redes neuronales: qué son y por qué están volviendo. [online] Xataka.com. Disponible en: https://www.xataka.com/robotica-e-ia/las-redes-neuronales-que-son-y-por-que-estan-volviendo [Consultado 30 Oct. 2017].
ComputerHoy. (2015). Darwin, un procesador que funciona como un cerebro humano. [online] Disponible en: http://computerhoy.com/noticias/hardware/darwin-procesador-que-funciona-como-cerebro-humano-38503 [Consultado 30 Oct. 2017].

Comentarios

Entradas populares de este blog

Ciclo Fetch Decode Execute

El encargado de ejecutar un programa en una computadora u otro sistema computacional es el CPU, lo realiza siguiendo el llamado ciclo Fetch Decode Execute, con este ciclo se ejecutan todas las tareas que una computadora puede realizar. Este ciclo tiene algunas variantes y conforme ha avanzado el tiempo y la tecnología ha sufrido algunos cambios, pero el ciclo básico se conforma de las siguientes etapas: Traer la instrucción: Se obtiene la instrucción desde memoria y se almacena en el registro del CPU para instrucciones. Decodificar la instrucción: Se identifica el modo de direccionamiento de la instrucción y la ubicación de los datos a tratar, ya sea de memoria, registro o instrucción directamente. Carga de Parámetros: Se ejecuta la lectura, cargando todos los datos identificados en el paso anterior. Ejecutar: Se ejecuta la instrucción ya configurada, realiza la tarea indicada, ya sea una suma, resta, almacenar información, extraer información etc. Almacenar: Se almacen...

Importancia de los Sistemas Numéricos en la Computación

Un sistema de numeración se define como un conjunto de símbolos y reglas que permiten representar datos numéricos. Además, los sistemas numéricos modernos se caracterizan por ser posicionales, ya que un símbolo tiene un peso según en la posición que se encuentre en la cifra numérica. Existen distintos sistemas numéricos modernos, los más comunes son: ·          Sistema Decimal : 0-1-2-3-4-5-6-7-8-9, (Diez símbolos) ·          Sistema Binario : 0-1, (Dos símbolos) ·          Sistema Octal : 0-1-2-3-4-5-6-7, (Ocho símbolos) ·          Sistema Hexadecimal : 0-1-2-3-4-5-6-7-8-9-A-B-C-D-E-F, (Dieciséis Símbolos) Todos los sistemas mencionados anteriormente tienen reglas y relaciones que permiten la realización de las operaciones básica que conocemos como la suma, resta, multiplicación, división. L...

Estructuras de Control en Ensamblador

En los lenguajes de alto nivel disponemos de estructuras de control como “if” o “else” que nos permiten dar sentido a nuestro código , pero estas estructuras no están presentes en un lenguaje de bajo nivel como el ensamblador o no de la misma forma, como se detalla a continuación. Estructuras Condicionales: Estos tipos son los if, if-else, elif, switch, los más comunes en los lenguajes de alto nivel y los más utilizados. Estas estructuras no están del todo ausentes en lenguaje ensamblador, ya que al fin y al cabo estas instrucciones se convierten a ensamblador, en ensamblador se cuenta con instrucciones como CMP o TEST(Para comparar o evaluar) en el caso de ARM y sus equivalentes en las demás arquitecturas de procesadores. Para poder crear los condicionales se debe utilizar una combinación de estas (CMP, TEST, ...) junto con las instrucciones de Branch, Jump, etc según corresponda. Ejemplos If Else: If Else en Lenguaje C If Else en Lenguaje Ensamblador Estructuras...