Nvidia domina las redes neuronales
Nvidia domina las redes neuronales
Vamos a intentar que este artículo sea inicialmente más explicativo de una industria en general y no tanto de compañías concretas como hemos podido hacer en artículos anteriores, aunque sí que al final hablaremos algo de Nvidia.
Es verdad, que numerosas veces hemos utilizado el término genérico del “algoritmo” para referirnos a muchos de los motores que mueven sistemas como YouTube, Facebook o la página de recomendaciones de Netflix. Esto no es algo que únicamente hayamos hecho nosotros, sino que realmente es una práctica generalizada de la industria con la finalidad de hacer el entendimiento más sencillo.
El problema, es que, de aquí a un tiempo llevamos notando cierta desvirtuación del término o falta de comprensión generalizada por parte del público. Y realmente estamos entrando en un punto absurdo donde se habla del peligro de los algoritmos o como la IA (inteligencia artificial) va a suponer una revolución increíble en distintos campos que atacará al empleo y acabará con industrias. Cuando la realidad no es del todo tan cierta, o por lo menos no tan inminente.
En primer lugar, la pagina de recomendaciones de YouTube, es decir, lo que cada usuario observa al “logearse” dentro de la aplicación, no lo mueve en absoluto un algoritmo. Sino redes neuronales, que constantemente se mantienen en evolución para optimizar las sugerencias y que el usuario dedique más tiempo dentro de la aplicación (esto es lo que se conoce como el “engagement” del que muchas veces hemos hablado). Con Facebook es realmente lo mismo, no es un algoritmo como tal, son un conjunto de redes neuronales. Y prácticamente cualquier sistema de recomendaciones basado en los gustos del usuario, o cualquier sistema que mueva una cantidad masiva de datos en evolución. De hecho, la inteligencia artificial como tal son redes neuronales. Y sólo dentro de estas redes se encuentran los algoritmos que las optimizan. Pero vayamos más lentos.
¿Cómo funcionan estas redes? Bueno, en su origen la idea viene de imitar a las neuronas cerebrales. De hecho, lo divertido de las redes neuronales que ahora mueven todos estos negocios, es que es algo que lleva existiendo desde los años 80. Básicamente la red, que tan compleja suena, no es mas que una serie de cálculos matemáticos optimizados utilizando un sistema de prueba error. Por ejemplo, tenemos nuestro coche autónomo que debe ver al peatón cruzar el paso de cebra. Pensemos por un momento que la imagen es estática, para facilitar el proceso y que esto sea justo lo que debe ver nuestro coche:
Pues bien, la red lo que hace es probar aleatoriamente a ver cosas hasta que lo que ve se empieza a parecer a un peatón. Es como decirle, es el número 7 y prueba con el 1 el 3 el 8 el 6. De modo que conforme más descarta cosas y prueba nuevas, más se aproxima al resultado final. Con el peatón es lo mismo, cada neurona, a la que llamamos perceptrón se centra en un elemento concreto, por ejemplo, en un pixel de la imagen. E intenta predecir que hay exactamente en él a través de ese sistema de acierto fallo. Los imputs que tendría nuestro perceptrón serían los colores y formas del pixel, a los cuales les adjudicamos un peso, optimizados a través de un algoritmo para que intente dar con la imagen resultante. Sumados todos los píxeles tendríamos a nuestro peatón cruzando. Es verdad que esto es ligeramente más complejo, puesto que las neuronas suelen funcionar por capas, de manera que habría neuronas que miran los colores, mientras otras miran las formas. Pero bueno, la idea es esa. También es verdad que hay distintos tipos de redes, y hasta de neuronas.
Aun así, la realidad es que la red neuronal no entiende que son esas formas. Simplemente las detecta. Para hacernos mejor una idea como como nuestra IA formada por redes neuronales vería el mundo, sería algo parecido a esto:
No es tan complejo como suena. Pero, sobre todo, lo que queremos que se aprecie es que esto no son más que cálculos de prueba-error masivos para dar con el resultado correcto. Cálculos que se intentan optimizar con algoritmos para que la carga de datos no sea tan monstruosa. No es más que pura matemática a cañonazos.
No hay realmente nada inteligente en este sistema. El problema es que, en un mundo abundado por la desinformación, clickbaits y necesidad de llamar la atención, las cosas se desvirtúan y tenemos titulares de noticias del tipo: “maquina de inteligencia artificial aprende la física desde 0”. Cosa que no es tal y como suena. Se pueden crear redes neuronales con los imputs básicos de física y de ahí que la propia IA vaya probando cosas de modo que descubra las propias leyes. Igual que a AlphaGo de Google se le enseñan los imputs básicos, que son los movimientos en el juego de Go, para que a base de mucho practicar domine la técnica.
Por otro lado, más arriba, hablamos de como estas redes llevan existiendo desde los años 80. Y es cierto. El problema es que, aunque la idea estaba diseñada, la cantidad de nivel de procesamiento en cuestión de datos era tan alto que nuestra tecnología no era capaz. Como el origen de IBM cuando el ordenador suponía una sala entera de oficinas.
Estas redes neuronales beben mucho de las tarjetas gráficas, ya que estas a diferencia de los procesadores, realizan muy buen trabajo en cálculos en paralelo. Y como se puede apreciar, estas redes no son más que cálculos en paralelo. Por eso mismo, no ha sido hasta hace unos 5 años que todas estas redes han cogido tanta fuerza. Si que es verdad que YouTube empezó como un algoritmo, pero poco a poco las redes lo fueron sustituyendo. Y si tenemos en cuenta que prácticamente hasta el año 2000 no apareció ninguna tarjeta gráfica en el mundo con potencia para empezar a hacer cosas interesantes, entenderemos el porqué esta industria es tan joven.
La gran pregunta que suele surgir llegados a este punto y en relación a Nvidia, que es la gran fabricante de tarjetas gráficas en el mundo, es la siguiente: si el negocio de las tarjetas gráficas se encuentra en un mercado en tanto crecimiento, ¿Por qué no hay más competencia?
Realmente la hay, pero es pésima. Nvidia y AMD constituyen un oligopolio en el mundo de gráficas, sencillamente, porque tienen las patentes exclusivamente ellos. Punto. No hay más historia. Pero es que encima, para beneficio de Nvidia, AMD que siempre ha sido un competidor titubeante, sacó su ultimo modelo de gráficas llamadas Vega con unos problemas horrorosos. Sobre todo, en el aspecto de temperaturas. Lo que al final provoca que Nvidia sea el único suministrados de tarjetas gráficas de calidad en el mundo.
Intel, que sí que hace las suyas llamadas Intel grafics, no son más que una versión burda de las Nvidia y AMD. El motivo, es que debe ser siempre una de estas dos compañías las que por acuerdo decida ceder las licencias a Intel para poder fabricarlas. Problema de esto, pues que da igual si es Nvidia o AMD la que firma el acuerdo, porque nunca le van a permitir a Intel producir gráficas de mayor calidad, ya que supondrían competencia directa para ellos mismo. Así que, en estos acuerdos de licencia, lo único que se mete es la posibilidad de hacer gráficas de rendimiento muy bajo. Y por eso mismo Intel es imposible que sea un gran competidor.
Sin embargo, hay un matiz en esta historia. Estas tarjetas surgieron originalmente para gráficos, como bien dice el nombre. Y por tanto las licencias se encuentran ahí. Sin embargo, en el mundo de la nube, inteligencia artificial, coche autónomo y demás, sí que pueden surgir nuevos competidores. El problema es la falta de pericia y conocimiento de compañías para poder hacer las gráficas y por ello mismo Nvidia sigue dominando el mercado.
Pero ya hay cositas. TPU de google, Amazon algo se ha filtrado acerca de estar probando sus propios chips (posiblemente CPUs y GPUs) e Intel anunciando el diseño de gráficas para estos segmentos.
<Try, Think, Learn>
Disclaimer: este artículo es únicamente de opinión y no supone ninguna recomendación de compra o venta. De vez en cuando escribiremos acerca de compañías que se encuentren en nuestro portfolio, pero las expresiones aquí expuestas no suponen un modelo de valoración.