Tecnología | Noticias | 03 FEB 2020

¿Cuáles son los mejores lenguajes de programación para el desarrollo de la IA?

¿Qué lenguaje de programación debería elegir para su próximo proyecto de ‘machine learning’ o ‘deep learning’? Estas son las mejores opciones
programacion
Ian Pointer

La inteligencia artificial (IA) abre un mundo de posibilidades para los desarrolladores de aplicaciones. Al aprovechar las posibilidades de machine learning o deep learning, podría producir mejores perfiles de usuario, personalización y recomendaciones o incorporar una búsqueda más inteligente, una interfaz de voz o asistencia inteligente, o mejorar su aplicación de muchas otras maneras. Incluso podría crear aplicaciones que vean, escuchen y reaccionen ante situaciones que nunca había previsto.

¿Qué lenguaje de programación debería aprender para sondear las profundidades de la IA? Por supuesto, querrá un lenguaje con muchas y buenas bibliotecas de machine learning y deep learning. También debe tener un buen rendimiento en tiempo de ejecución, un buen soporte de herramientas, una gran comunidad de programadores y un ecosistema saludable de paquetes de soporte. Esa es una larga lista de requisitos, pero todavía hay muchas buenas opciones.
Así, a continuación se muestran los seis mejores lenguajes de programación a mi parecer, para el desarrollo de la IA, a los que añado dos menciones honoríficas. Algunos de estos lenguajes están en auge, mientras que otros están en declive. Solo necesita saber si está interesado en arquitecturas y aplicaciones históricas de deep learning. Veamos cómo discernir el más adecuado.

Python

El número uno sigue siendo Python. ¿Lo había dudado? Si bien hay cosas de Phyton que le pueden volver loco, si está llevando a cabo un trabajo de IA, es casi seguro que lo usará en algún momento. Y algunos de sus puntos más ásperos se han limado un poco.
A medida que nos acercamos a 2020, el problema de Python 2.x frente a Python 3.x se está volviendo discutible ya que casi todas las grandes bibliotecas admiten Python 3.x y dejarán de admitir Python 2.x tan pronto como sea posible. En otras palabras, por fin podrá aprovechar todas las nuevas características del lenguaje en serio.

C++

Es poco probable que C ++ sea su primera opción al desarrollar una aplicación de inteligencia artificial, pero cuando necesita exprimir hasta la última gota de rendimiento del sistema, algo cada vez más común a medida que deep learning llega al límite y necesita ejecutar sus modelos en sistemas con recursos limitados: es hora de regresar al aterrador mundo de los punteros una vez más.

Java y otros lenguajes JVM

La familia de lenguajes JVM (Java, Scala, Kotlin, Clojure, etc.) sigue siendo una gran opción para el desarrollo de aplicaciones de IA. Tiene una gran cantidad de bibliotecas disponibles para cualquier necesidad, ya sea procesamiento de lenguaje natural (CoreNLP), operaciones de tensor (ND4J) o una pila completa de deep learning acelerado por GPU (DL4J). Además, obtiene acceso fácil a plataformas de big data como Apache Spark y Apache Hadoop.

JavaScript

Es poco probable que aprenda JavaScript únicamente para escribir aplicaciones de inteligencia artificial, pero TensorFlow.js de Google continúa mejorando y ofrece una forma intrigante de implementar sus modelos Keras y TensorFlow en su navegador o mediante Node.js utilizando WebGL para cálculos acelerados por GPU.

Swift

En la versión del año pasado de este artículo, mencioné que Swift era un lenguaje para vigilar. Este año, se encuentra entre mis seis primeros. ¿Que ha pasado? Swift para TensorFlow. Una estupenda recopilación sin fallos de las últimas y mejores características de TensorFlow, y un poco de magia oscura que permite importar bibliotecas de Python como si estuviera usando Python en primer lugar.

Lenguaje R

R aparece al final de nuestra lista, y tiende a la baja. R es el lenguaje que aman los científicos de datos. Sin embargo, el resto de programadores a menudo encuentran a R un poco confuso, debido a su enfoque centrado en el dataframe. Si tiene un grupo dedicado de desarrolladores de R, podría tener sentido usar sus integraciones con TensorFlow, Keras o H2O para investigar, crear prototipos y experimentar, pero dudo en recomendar R para uso en producción o para desarrollos de nuevos campos, por el rendimiento y problemas operacionales. Aunque seguro que puede escribir código R capaz de implementarse en servidores en producción, lo más probable es que sea más fácil volver a codificarlo en Java o Python.

Puedes encontrar el reportaje completo aquí



Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios