Ir al contenido principal

Data Science, Machine Learning, Deep Learning, Inteligencia Artificial

Es bastante común leer o escuchar estos términos, tanto en español, como en inglés. El objetivo de este post es aprender a diferenciarlos, sabiendo que hay expertos que tienden a extender el ámbito de las definiciones, y por tanto existen puntos en común y de solapamiento entre ellos.



¿Puede darse que seamos un científico de los datos (data scientist) y que nosotros mismos no seamos conscientes de ello?

Actualmente, hay varios campos dentro de la ciencia de los datos (data science) que se solapan, como por ejemplo, machine learning, inteligencia artificial, deep learning, IoT (Internet de las Cosas),... ya que la ciencia de los datos es un concepto bastante vasto y que cubre varias disciplinas, y que además toma prestadas técnicas y herramientas de otras ciencias relacionadas.

Los grandes expertos en la materia dicen que hay dos tipos de científicos de datos:
1. Analista. Suele codificar soluciones, aunque no sea un experto en ello, y sí en modelado, inferencia estadística... en las empresas suelen ser llamados, estadísticos, ingenieros de soporte a la toma de decisiones, analistas cuantitativos, e incluso científicos de datos.
2. Constructor. Tienen algo de formación estadística, pero realmente son expertos desarrollando. Principalmente está interesado en explotar datos en Producción.

La ciencia de los datos es multidisciplinar.



Machine Learning vs Deep Learning

Se puede decir que machine learning o aprendizaje automático es un conjunto de algoritmos que se entrenan con un conjunto de datos para hacer predicciones o realizar acciones con el fin de optimizar algunos sistemas.

Un ejemplo de esto son los algoritmos de clasificación supervisados, que ​​se utilizan para clasificar a los candidatos potenciales según sus buenas perspectivas en base a información histórica. Las técnicas involucradas, para una tarea dada (por ejemplo, agrupación supervisada), son variadas: Bayes, SVM, redes neuronales (RNA), mapas auto-organizados (SOM) reglas de asociación, árboles de decisión (por ejemplo algoritmo ID3), regresión logística o métodos combinados de aprendizaje (por ejemplo agregación bootstrap o  boosting). Un ejemplo de este tipo de algoritmos es k vecinos más cercanos (k-NN Nearest Neighbour).

Otro ejemplo son los algoritmos de clasificación no supervisados, son aquellos en los que no disponemos de una batería de ejemplos previamente clasificados, sino que únicamente a partir de las propiedades de los ejemplos intentamos dar una agrupación (clasificación, clustering) de los ejemplos según su similitud. Un ejemplo de este tipo de algoritmos es k-medias.

Todo esto es un subconjunto de la ciencia de los datos. Cuando estos algoritmos son automatizados, se llama inteligencia artificial (IA), y más específicamente, Deep Learning. Si los datos recogidos provienen de sensores y si se transmiten a través de Internet, entonces es machine learning o ciencia de los datos o deep learning aplicado a IoT (Internet de las Cosas).

Algunas definiciones para deep learning consideran que son redes neuronales (una técnica de machine learning) con una capa más profunda.

La inteligencia artificial es un subcampo de la informática, que fue creado en la década de los 60s, y que trataba de resolver tareas que son fáciles para los seres humanos, pero difíciles para las computadoras. En particular, una llamada IA ​​fuerte sería un sistema que puede hacer cualquier cosa que un ser humano pueda realizar. Esto es bastante genérico e incluye todo tipo de tareas, como planificar, moverse por el mundo, reconocer objetos y sonidos, hablar, traducir, realizar transacciones sociales o comerciales, trabajo creativo (hacer arte o poesía),... PNL (Procesamiento del lenguaje natural) es simplemente la parte de la IA que tiene que ver con el lenguaje (generalmente escrito).

El machine learning, en términos matemáticos, es una función: a partir de una entrada, se desea que se produzca la salida correcta, por lo que todo el problema "se reduce" construir un modelo de esta función matemática de alguna manera automática. Para establecer una distinción con IA, si puedo escribir un programa muy inteligente que tenga un comportamiento similar al de un ser humano, puede ser IA, pero a menos que sus parámetros sean aprendidos automáticamente de los datos, no es machine learning. La IA clásica aporta estrategias de búsqueda (no informadas, informadas o locales, como por ejemplo el algoritmo templado simulado), satisfacción de restricciones...

El concepto de deep learning es un tipo de aprendizaje automático que es muy popular en la actualidad. Se trata de un tipo particular de modelo matemático que puede ser pensado como una composición de bloques simples (composición de la función) de cierto tipo, y donde algunos de estos bloques se pueden ajustar para predecir mejor el resultado final.

Data Sciences vs Machine Learning

El aprendizaje automático y las estadísticas forman parte de la ciencia de los datos. La palabra aprendizaje en aprendizaje automático significa que los algoritmos dependen de algunos datos, usados ​​como un conjunto de entrenamiento, para afinar algunos parámetros del modelo o algoritmo. Esto abarca muchas técnicas tales como la regresión, Bayes, clustering supervisado. Pero no todas las técnicas caben en esta categoría. Por ejemplo, el clustering no supervisado - una técnica estadística y de ciencias de los datos - tiene como objetivo detectar clusters y estructuras de clúster sin ningún conocimiento a priori o conjunto de entrenamiento para ayudar al algoritmo de clasificación. Hace falta una intervención humana que categorice y etiquete estos clusters. Algunas técnicas son híbridas, como la clasificación semi-supervisada.  También encajan en esta categoría las técnicas de detección de patrones o estimación de densidad.

La ciencia de los datos abarca más que el aprendizaje automático. Los datos, en ciencias de los datos, pueden o no provenir de una máquina o de un proceso mecánico (los datos de la encuesta pueden recopilarse manualmente, los ensayos clínicos implican un tipo específico de datos pequeños) y podría no tener nada que ver con el aprendizaje. Pero la principal diferencia es que la ciencia de los datos abarca todo el espectro del procesamiento de datos, no sólo los aspectos algorítmicos o estadísticos. En particular, la ciencia de los datos cubre:

  • Integración de datos
  • Arquitectura distribuida
  • Automatización del aprendizaje de máquinas
  • Visualización de datos
  • Cuadros de mando y business intelligence (BI)
  • Ingeniería de datos
  • Despliegue en producción
  • Decisiones automatizadas basadas en datos

Por supuesto, en muchas organizaciones, los científicos de datos se centran en sólo una parte de este proceso.

Comentarios

Entradas populares de este blog

Métrica v3 vs Metodologías Ágiles

Métrica v3: Metodología de Planificación, Desarrollo y Mantenimiento de sistemas de información que propone el Ministerio de Administraciones Públicas.

Cualquier defensor de la técnicas, metodologías y herramienta ágiles sostendrá que Métrica v3 es un sistema demasiado pesado, tanto en su implementación, como en sus procesos de mantenimiento. Yo lo corroboraría, pero sin demonizarla.

Estoy acostumbrado a que en este mundo de la informática se creen auténticos "dogmas de fe", que acarrean sus propias "guerras religiosas". Algunos ejemplos podrían ser: Software privativo vs Software libre, Windows vs Linux, Web Services vs Rest, Oracle vs MySQL, Explorer vs Firefox, Apache vs IIS, Eclipse vs Netbeans, y así podríamos seguir con un largo etcétera. En vez de buscar la mejor solución, o soluciones universales, yo propongo realizar un intenso análisis, y respondernos ciertas preguntas. Por regla general, no hay una solución que valga "para todo". La pregunta que …

¿Por qué Yii Framework?

En Soltel presumimos de tener una actitud innovadora, que nos obliga a probar las distintas tecnologías que van llegando al mercado, y que ajustándose a nuestro stack, puedan mejorar en algo nuestros desarrollos.

Una vez analizado el framework o librería, lo probamos en proyectos internos que nos permitan conocer con más detalle sus características. En este trabajo de campo es donde realmente se decide si es interesante o no añadir el framework a nuestro stack, y con ello ofrecerlo en los desarrollos que realizamos para nuestros clientes.

En este proceso, llevábamos bastante tiempo buscando un framework PHP que realmente aportara valor y se adecuara en tiempos de desarrollo, rendimiento y arquitectura a lo que necesitamos ofrecer en nuestros proyectos. Ya habíamos descartado frameworks como Prado, por ser bastante pesado y tener una arquitectura demasiado compleja.

Con Yii, sin embargo, nos hemos llevado una agradable sorpresa. Yii es un framework PHP, libre (licencia BSD), basado en pr…

Gestor documental Alfresco vs sistema de archivos

En muchas ocasiones, antes incluso de tener que justificar por qué implantar Alfresco y no otro gestor documental, debemos argumentar a nuestros clientes qué ventajas les aporta usar Alfresco sobre su habitual forma de trabajo, que es, casi siempre, utilizar carpetas en el sistema de archivos de un servidor.

Estos son los argumentos que solemos dar en Soltel:

- Facilidad de explotar la documentación desde otras aplicaciones. Alfresco tiene una API potente a través de la cuál podemos sacar el máximo partido de éste cuando lo integramos con otras aplicaciones.
- Acceso a la información desde cualquier lugar, a cualquier hora y desde múltiples dispositivos (PC, Dispositivos móviles, Tablets, etc.). Toda la información que necesitamos se encuentra en la red y debidamente protegida. Solo necesitamos una conexión a internet. Ya no hacen falta ni VPNs, ni escritorios remotos.
– No es necesario el acceso al sistema operativo anfitrión, evitando que usuarios puedan visualizar aplicativos o informa…