En un nivel amplio, uno puede categorizar algoritmos basados en la forma en que se proporcionan los datos para aprender. Las siguientes son las principales categorías de algoritmos de aprendizaje:
- Aprendizaje supervisado: en esta configuración, proporcionamos a un modelo un conjunto de datos de capacitación, que consta de los datos y las etiquetas verdaderas. Con estos datos, se aprende un modelo. Obviamente aquí, cuantos más datos, mejor será el rendimiento del modelo en ejemplos desconocidos. Los factores clave aquí son que el modelo debería generalizarse a ejemplos invisibles. La clasificación, la regresión y la clasificación caen dentro de este paradigma de aprendizaje.
- Aprendizaje no supervisado: en esta configuración, el modelo organiza automáticamente los datos sin ningún ejemplo etiquetado. Ejemplos de esto incluyen Agrupación de datos, resumen, etc. Los datos se organizan en función de la similitud de los elementos de datos.
- Aprendizaje semi supervisado: este es un híbrido entre no supervisado y supervisado, donde algunos de los datos están etiquetados, mientras que un gran conjunto de datos en realidad no está etiquetado. Los algoritmos aquí toman todos los datos etiquetados y usan de manera inteligente los datos no etiquetados para mejorar el rendimiento del modelo.
- Aprendizaje en línea / Aprendizaje activo: en este paradigma, los algoritmos siguen mejorando a sí mismos mediante el uso de la retroalimentación de un humano en el bucle.
Dentro de cada uno de estos paradigmas de aprendizaje, hay varias técnicas de modelado diferentes. Por supuesto, incluso antes de llegar al aspecto de modelado (es decir, qué modelo de aprendizaje automático usar, uno debe elegir el conjunto correcto de características. Esto se llama ingeniería de características, y esto a menudo juega un papel importante para obtener buenos resultados. Esto a menudo también requiere experiencia en el campo.
Dado el conjunto de características y el entorno de aprendizaje (ya sea supervisado, aprendizaje en línea, etc.), la siguiente pregunta es qué modelo de aprendizaje automático utilizar. La elección de esto depende del problema en cuestión. Lo segrego en tres tipos de modelos.
- ¿Por qué la criptografía moderna y la potencia informática no pueden descifrar el manuscrito Voynich?
- Cómo organizar una buena competencia relacionada con el aprendizaje automático o la ciencia de datos
- ¿El daño de un asesino USB es ópticamente visible en la placa base?
- ¿Existe una diferencia de preferencia de software entre estadística y aprendizaje automático?
- ¿Cómo se aplica el aprendizaje automático al chat bot?
- Aprendizaje profundo o redes neuronales multicapa: las redes neuronales profundas han encontrado una tremenda aplicabilidad, particularmente dada la gran cantidad de cómputo y los grandes conjuntos de datos que tenemos en estos días. Esto es útil en varios dominios problemáticos donde es muy difícil crear características, por ejemplo, clasificación de imágenes, reconocimiento de voz, reconocimiento facial, etc. Los modelos de aprendizaje profundo aprenden automáticamente la representación, o en otras palabras, realizan tanto la ingeniería de características como el modelado . Para ambos problemas, hay varias recetas muy comunes y plataformas de código abierto disponibles.
- Conjuntos y modelos basados en árboles de decisión: Esto incluye árboles de decisión, bosques aleatorios y árboles impulsados por gradientes. Estos modelos son útiles en varias tareas de predicción donde las características son más o menos evidentes (por ejemplo, predicción de la casa, predicción del comportamiento del cliente, predicción de abandono, etc.). Los árboles impulsados por gradientes, en particular, han encontrado mucho éxito en estos problemas.
- Modelos lineales: Estos incluyen modelos como regresión lineal, regresión logística, SVM, etc. Debido a su simplicidad, estos deberían ser los primeros en intentar un problema. Además, funcionan mejor en problemas en los que uno tiene grandes características categóricas (en la escala de varios millones o miles de millones de características de identificación). Estos modelos lineales no solo se adaptan muy bien a este tamaño de problemas, sino que también funcionan bien para incluir la dispersión, etc., es decir, seleccionar automáticamente solo un pequeño subconjunto de características para que no sea cero y establecer el resto en cero.
En general, existen varios paradigmas muy interesantes en el aprendizaje automático y tener una visión completa de 360 grados de las técnicas ayuda a comprender el conjunto de técnicas a utilizar para resolverlas de manera eficiente.