Diferencias entre Inteligencia Artificial, Aprendizaje Automático y Aprendizaje Profundo

A lo largo de esta publicación vamos intentar comprender las diferencias entre algunos de los términos de tecnología más de moda en la actualidad; y que se supone, serán el presente y futuro de todos los nuevos avances tecnológicos.

Quizás te interese: cómo aprender aprendizaje automático >> aprender inteligencia artificial >> guía de tensorflow >> mejores tutoriales de pnl, aprendizaje automático y python >> cómo aprender python >> aprender a programar

¿Qué es la inteligencia artificial?

La inteligencia artificial es el intento de acercarse a lograr generar capacidad cognitiva dentro una máquina. El punto de referencia para la inteligencia artificial es la inteligencia humana respecto al razonamiento, el habla y la visión. A día de hoy, aún se está bastante lejos de alcanzar algo semejante; por ahora, aún se debe seguir esperando a que la tecnología siga avanzando.

Si deseamos profundizar un poco más sobre el propio concepto de inteligencia artificial, podemos avanzar diciendo que se puede dividir en tres diferentes niveles bien diferenciados; y que cada uno de esos tres niveles se corresponde a un diferente grado de investigación:

  • Inteligencia Artificial Débil: Se dice que la inteligencia artificial es débil u estrecha, cuando la máquina puede realizar una tarea específica mejor que un ser humano. En la actualidad, la mayor parte de las investigaciones que se realizan se concentran a este nivel.
  • Inteligencia Artificial General: Se dice que la inteligencia artificial alcanza el estado general cuando alcanza a realizar cualquier tarea intelectual con el mismo nivel de precisión que un ser humano.
  • Inteligencia Artificial Activa: Se dirá que la inteligencia artificial ha llegado al estado de activa; cuando está, sea capaz de vencer y sobrepasar a la actividad de un ser humano respecto a muchas tareas.

?‍? Libros sobre Python ? Análisis, Estadísticas ? Datos ? Big Data y Más ?‍?

Publicada por Ciberninjas en Martes, 3 de marzo de 2020

¿Qué es el aprendizaje automático?

El aprendizaje automático es la mejor herramienta que se conoce para comprender, analizar e identificar un patrón formado por datos. Una de las ideas principales detrás del aprendizaje automático es que los ordenadores pueden ser entrenados para automatizar tareas exhaustivas e imposibles para un ser humano.

El aprendizaje automático puede tomar decisiones con una mínima intervención humana.

El aprendizaje automático utiliza los datos para alimentar un algoritmo capaz de comprender la relación entre la entrada y la salida; y una vez que la máquina termina de aprender; es capaz de predecir el valor final o nuevas clases de datos resultantes.

? Quizás te interese: cómo aprender aprendizaje automático >> aprender inteligencia artificial >> guía de tensorflow >> mejores tutoriales de pnl, aprendizaje automático y python >> cómo aprender python >> aprender a programar

¿Qué es el aprendizaje profundo?

El aprendizaje profundo es un software que imita una red neuronal del cerebro humano.

Es un subconjunto del aprendizaje automático y se le denomina aprendizaje profundo porque hace uso de una simulación de redes neuronales profundas, para; a través de las mismas ser capaz de ir aprendiendo datos durante varias capas sobre expuestas. La profundidad del modelo, depende del número de capas que utilice el modelo en cuestión.

El aprendizaje profundo vendría a ser similar, al arte humano pero generado por máquinas.

Gracias a todos los computos y algoritmos gracias que la propia máquina es capaz de aprender, manipular y conjugar por si misma; para, al unir los datos por si misma; ser capaz de crear “algo” que ofrece un sentido, semejanza y similitud con la vida real o con lo que se le halla querido “enseñar” a la máquina.

Anotación

A día de hoy. Se podría decir que este es el estado más alto al que ha llegado la inteligencia artificial dentro del campo de la computación; dejando aquí, una pequeña nota, sobre el ámbito de la cibernética / los cíborgs: campo que está más bien cubierto por la electrónica / robótica junto a la neurociencia. Más que por las propias ciencias informáticas.

Saber Más: Referencias sobre, ¿Qué es un cyborg?: Somos Cyborgs, Arte Cíborg, Fundación Cíborg, Antena Cíborg, Cíborg,

Cómo han crecido estas ramas tecnológicas

Análisis del crecimiento de las preguntas sobre AI, ML y DL en los últimos años dentro de Stackoverflow

En la gráfica anterior se puede apreciar claramente el amplio crecimiento de interés, sobre todo en las ramas de ML y DL, en los dos años anteriores al 2018. Si analizamos los dos últimos años hasta la actualidad en la Encuesta anual de la propia web: Stackoverflow.

Porcentaje de los puestos de trabajo entre las personas que han votado dentro de la encuesta de stackoverflow de 2019
* Porcentaje de los puestos de trabajo entre las personas que han votado dentro de la encuesta de stackoverflow de 2019

Salarios de los puestos de trabajo entre las personas que han votado dentro de la encuesta de stackoverflow de 2019
* Salarios de los puestos de trabajo entre las personas que han votado dentro de la encuesta de stackoverflow de 2019

De las gráficas anteriores podemos comprobar cómo la profesión de científico de datos es una de las profesiones que más crecimiento ha tenido; y poco a poco, además, se va convirtiendo en una de los puestos de trabajo mejores pagadas entre las diferentes profesiones digitales existentes.

Cómo funcionan

A continuación, vamos a intentar hacernos una idea para conocer un poco más del cómo funcionan estos nuevos campos tecnológicos.

? Quizás te interese: cómo aprender aprendizaje automático >> aprender inteligencia artificial >> guía de tensorflow >> mejores tutoriales de pnl, aprendizaje automático y python >> cómo aprender python >> aprender a programar

El proceso del aprendizaje automático

Imagina que estás destinado a construir un programa que reconozca objetos. Para entrenar al modelo, usarás un “clasificador” Un clasificador usa las características de un objeto para intentar identificar la clase a la que pertenece.

En el ejemplo que verás representado más abajo, el clasificador será entrenado para detectar si la imagen es:

  • Una Bicicleta, Un Barco, Un Coche o Un Avión

Los cuatro objetos anteriores son la clase que el clasificador debe reconocer. Para construir un clasificador, se requiere tener algunos datos como entrada y asignarle una etiqueta. El algoritmo tomará estos datos, encontrará un patrón y luego lo clasificará en la clase correspondiente.

Esta tarea se llama aprendizaje supervisado. En el aprendizaje supervisado, los datos de capacitación que alimentan al algoritmo incluyen una etiqueta.

Este entrenamiento del algoritmo requiere seguir algunos pasos estándar, a saber:

  • Recopilar los datos
  • Entrenar al clasificador
  • Hacer predicciones

El primer paso es necesario, puesto que elegir los datos correctos hará que el algoritmo tenga éxito o falle. Los datos que eliges para entrenar al modelo se llaman características. En el ejemplo del objeto, las características son los píxeles de las imágenes.

Cada imagen es una fila de los datos, mientras que cada píxel es una columna. Si su imagen tiene un tamaño de 28×28, el conjunto de datos contiene 784 columnas (28×28). En la imagen a continuación, cada imagen se ha transformado en un vector de características. La etiqueta le dice a la computadora qué objeto está en la imagen.

Caso práctico del funcionamiento del aprendizaje automático

El objetivo es utilizar estos datos de entrenamiento para clasificar el tipo de objetos.

El primer paso consiste en crear las columnas de características. Luego, el segundo paso consiste en elegir un algoritmo para entrenar el modelo. Cuando finalice el entrenamiento, el modelo predecirá qué imagen corresponde a qué objeto.

Después de eso, es fácil usar el modelo para predecir nuevas imágenes.

Para cada nueva imagen que ingrese al modelo, la máquina predecirá la clase a la que pertenece. Por ejemplo, una imagen completamente nueva sin etiqueta está pasando por el modelo. Para un ser humano, es trivial visualizar la imagen como un automóvil. La máquina usa su conocimiento previo para predecir también que la imagen es un automóvil.

Saber Más: Cómo aprender Python 2021, ? ▷ Cómo aprender aprendizaje automático o machine learning 2021, ▷ Más de 200 de los mejores tutoriales de aprendizaje automático, PNL y Python

El proceso del aprendizaje profundo

En el aprendizaje profundo, la fase de aprendizaje se realiza a través de una red neuronal. Una red neuronal es una arquitectura donde las capas se apilan unas encima de otras.

Considere el mismo ejemplo de la imagen anterior, pero teniendo en cuenta de que ahora el conjunto de entrenamiento sería alimentado por una red neuronal

Cada entrada entra en una neurona y se multiplica por un peso.

El resultado de la multiplicación fluye a la siguiente capa y se convierte en la entrada. Este proceso se repite para cada capa de la red. La capa final se denomina capa de salida; proporciona un valor real para la tarea de regresión y una probabilidad de cada clase para la tarea de clasificación.

Caso práctico del funcionamiento del aprendizaje automático

La red neuronal utiliza un algoritmo matemático para actualizar los pesos de todas las neuronas.

La red neuronal está completamente entrenada cuando el valor de los pesos proporciona una salida cercana a la realidad.

Por ejemplo, una red neuronal bien entrenada puede reconocer el objeto en una imagen con mayor precisión que la red neuronal tradicional.

?‍? Libros sobre Python ? Análisis, Estadísticas ? Datos ? Big Data y Más ?‍?

Publicada por Ciberninjas en Martes, 3 de marzo de 2020

Automatizar la extracción de características con DL

Un conjunto de datos puede contener de una docena a cientos de características. El sistema aprenderá de la relevancia de estas características.

Sin embargo, no todas las características son significativas para el algoritmo. Una parte crucial del aprendizaje automático es encontrar un conjunto relevante de características para que el sistema aprenda algo.

Una forma de realizar esta parte en el aprendizaje automático es utilizar la extracción de características.

La extracción de características combina características existentes para crear un conjunto de características más relevante. Se puede hacer con PCA, T-SNE o cualquier otro algoritmo de reducción de dimensionalidad.

Por ejemplo, en un procesamiento de imágenes, el profesional necesita extraer la función manualmente en la imagen, como los ojos, la nariz, los labios, etc. Esas características extraídas, van posteriormente, a alimentar el modelo de clasificación.

El aprendizaje profundo resuelve este problema, especialmente para una red neuronal convolucional. La primera capa de una red neuronal aprenderá pequeños detalles de la imagen; las siguientes capas combinarán el conocimiento previo para crear información más compleja.

En la red neuronal convolucional, la extracción de características se realiza con el uso del filtro. La red aplica un filtro a la imagen para ver si hay una coincidencia, es decir, la forma de la característica es idéntica a una parte de la imagen.

Si hay una coincidencia, la red usará este filtro. Por lo tanto, el proceso de extracción de características se realiza automáticamente.

? Quizás te interese: cómo aprender aprendizaje automático >> aprender inteligencia artificial >> guía de tensorflow >> mejores tutoriales de pnl, aprendizaje automático y python >> cómo aprender python >> aprender a programar

Diferencias entre aprendizaje automático y aprendizaje profundo

Aprendizaje automático Aprendizaje profundo
Dependencias de datos Excelentes rendimientos en un conjunto de datos pequeño / mediano Excelente rendimiento en un gran conjunto de datos
Dependencias de hardware Trabajar en una máquina de gama baja. Requiere una máquina potente, con frecuencia con GPU: DL realiza una cantidad significativa de multiplicación de matrices
Ingeniería de características Necesita comprender las características que representan los datos. No es necesario comprender la mejor característica que representa los datos.
Tiempo de ejecución De pocos minutos a horas Hasta semanas. La neuronal roja necesita calcular un número significativo de pesos
Interpretabilidad Algunos algoritmos son fáciles de interpretar (logística, árbol de decisión), algunos son casi imposibles (SVM, XGBoost) Difícil a imposible

?‍? Libros sobre Python ? Análisis, Estadísticas ? Datos ? Big Data y Más ?‍?

Publicada por Ciberninjas en Martes, 3 de marzo de 2020

¿Cuándo usar Machine Learning o Deep Learning?

En la tabla siguiente, se resumen, las diferencias entre el aprendizaje automático y el aprendizaje profundo.

Aprendizaje automático Aprendizaje profundo
Conjunto de datos de entrenamiento Pequeño Grande
Elige características Si No
Número de algoritmos Muchos Pocos
Tiempo de entrenamiento Corto Largo

Con el aprendizaje automático, se necesitan menos datos para entrenar al algoritmo que en el caso del aprendizaje profundo.

El aprendizaje profundo requiere un conjunto más amplio y diverso de datos para llegar a identificar la estructura subyacente. Además, el aprendizaje automático proporciona un modelo entrenado más rápido.

La arquitectura del aprendizaje profundo más avanzada puede llevar de días a una semana para entrenar. La ventaja del aprendizaje profundo sobre el aprendizaje automático es que es altamente preciso.

No necesita comprender qué características son la mejor representación de los datos; la red neuronal aprendió a seleccionar características críticas. En el aprendizaje automático, se deben elegir qué características incluir en el modelo.

? Quizás te interese: cómo aprender aprendizaje automático >> aprender inteligencia artificial >> guía de tensorflow >> mejores tutoriales de pnl, aprendizaje automático y python >> cómo aprender python >> aprender a programar

Resumen

La inteligencia artificial consiste en llegar a recrear una capacidad cognitiva sobre una máquina. Los primeros sistemas de Inteligencia Artificial utilizaron patrones de coincidencias.

La idea base del aprendizaje automático es que la máquina puede aprender sin la necesidad de la intervención humana. La máquina, por si sola, busca construir y encontrar su propia fórmula de aprender cómo resolver una tarea específica posteriormente a agregarle cierta cantidad de información.

El aprendizaje profundo, es el mayor avance dentro del campo de la inteligencia artificial. Ocurre exclusivamente cuando existe una cantidad elevada de datos como para llegar a poder entrenar a la máquina. Con el aprendizaje profundo se pueden llegar a alcanzar resultados impresionantes, especialmente ante el reconocimiento de imágenes, la construcción de canciones, la traducción de textos, etc.

Relacionado

❌ React Native, crear aplicación como Netflix con Mario Díez

[no_toc] [expand title="Índice del Vídeotutorial"] 1. FlatList Horizontal 2. Componente Swiper 3. Menú Animado y Header 4. FlatList Grid 5. Más Flexbox, Tabs y Linear gradiantes 6. Reproductor de Vídeo 7. Share API 8. Animatable Header y NativeEvents 9. React Navigation 10. Header Múltiple con Animated 11. Modal con React Navigation 12. React Navigation con Redux 13. Servidor NodeJS con MongoDB para React Native 14. Conectando ¡SEGUIR LEYENDO!

❌ React Native con Mario Díez

[no_toc] [expand title="Índice del Vídeotutorial"] 1. Instalación 2. Introducción 3. Props y State 4. Fetch Data 5. ListView 6. Fech Data 2 7. Navigator IOS 8. Navigator 9. Flexbox 10. PropTypes 11. TabBarIOS 12. Formularios 13. AsyncStorage 14. Recorriendo Arrays con Map 15. Notificaciones Push 16. Notificaciones Push desde NodeJS 17. Barra de Búsqueda en ListView 18. Utilización de CameraRoll 19. Children o Props 20. Diferenciar ¡SEGUIR LEYENDO!

❌ React Native con Iván B. Trujillo

[no_toc] [expand title="Índice del Vídeotutorial"] 1. Primeros Pasos 2. Componentes, Botones y Alertas 3. Pantalla de Login, Navegador y Vistas 4. Navegación por Pestañas 5. Peticiones a API y ListView 6. Vista Detalles y Paso de Propiedades a Componente Hijo [/expand] [yotuwp type="playlist" id="PLuzQ5Ac_9_cI-ukaElfIFKXyhLsADBiJe" ] [expand title="Creador"] Editor del blog de Medium: Canarias JS [/expand]

❌ Javascript con Píldoras Informáticas

[no_toc] [expand title="Índice del Vídeotutorial"] 1. Presentación. Vídeo 1 2. Introducción. Vídeo 2 3. Sintaxis Básica I. Ubicación del código. Vídeo 3 4. Sintaxis Básica II. Estructuras Básicas. Vídeo 4 5. Sintaxis Básica III. Operadores Básicos. Vídeo 5 6. Sintaxis Básica IV. Operadores y prompt. Vídeo 6 7. Sintaxis Básica V Arrays, Matrices, Arreglos. Vídeo 7 8. Sintaxis Básica V. Arrays, Matrices, Arreglos II. Vídeo 8 ¡SEGUIR LEYENDO!

❌ Javascript con Falcon Masters

[no_toc] [expand title="Índice del Vídeotutorial"] 1. Introducción 2. Variables 3. Tipos de Dato 4. Arreglos 5. Metodos y propiedades para los Arreglos 6. Condicionales 7. Ciclo Fo 8. Ciclo While 9. Funciones 10. Ejercicio con Funciones y Formularios 11. Scope de Javascript (ámbito de las variables) 12. Metodos y propiedades para Cadenas de Texto 13. Introducción al DOM (Document Object Model) 14. Creando Nodos del DOM ¡SEGUIR LEYENDO!