La inteligencia artificial o aprendizaje automático ha experimentado un enorme auge en los últimos diez años. Muchas industrias ahora están invirtiendo fuertemente en soluciones basadas en aprendizaje automático. La demanda de especialistas calificados también se ha disparado.
Varias universidades de todo el mundo ofrecen títulos con un enfoque en ciencia de datos o inteligencia artificial, y este contenido también está ganando importancia en las universidades alemanas. Si bien las universidades tienden a centrarse en los conceptos matemáticos y teóricos, las habilidades y los conocimientos necesarios para entrenar modelos de aprendizaje automático en problemas del mundo real pueden ser bastante diferentes.
Disponibilidad de los datos necesarios
En la mayoría de los casos, la disponibilidad de datos determina si el aprendizaje automático se puede utilizar o no para resolver un problema determinado. Antes de comenzar un nuevo proyecto, surge la pregunta: ¿un modelo entrenado en estos datos brindará las respuestas correctas la mayor parte del tiempo?
Esta pregunta se aplica independientemente del modelo, la biblioteca o el idioma elegido para el experimento de ML. Y hay otros criterios cruciales. Un modelo es tan bueno como los datos con los que se alimenta. Por lo tanto, es importante aclarar:
- ¿Hay suficientes datos para entrenar un buen modelo? Mientras no exceda el presupuesto de hardware, casi siempre es correcto usar más datos.
- ¿Son fiables las previsiones en un proceso de aprendizaje supervisado? ¿El modelo recibe la información correcta?
- ¿Son estos datos una representación precisa de la distribución real? ¿Hay suficiente variación en las muestras para cubrir el área del problema?
- ¿Hay acceso constante a un flujo constante de nuevos datos para actualizar el modelo y mantenerlo actualizado?
ensamblando los datos
Los datos necesarios para crear un conjunto de datos para una solución de ML a menudo se distribuyen entre múltiples fuentes. Las diferentes partes de una muestra se recopilan en diferentes productos y son administradas por diferentes equipos en diferentes plataformas. Por lo tanto, el próximo paso en el proceso suele ser consolidar todos estos datos en un solo formato y almacenarlos de una manera que sea fácilmente accesible.
Más desafíos y una maldición
Con los datos recopilados y agregados, pensaría que el nuevo y fabuloso algoritmo ML estaría listo para funcionar. Pero aún son necesarios más pasos, porque inevitablemente todavía habrá una serie de desafíos que superar:
Datos perdidos
A veces, los valores válidos pueden no estar disponibles para todas las observaciones. Es posible que los datos se hayan dañado durante la recopilación, el almacenamiento o la transmisión y es importante encontrar estos puntos de datos faltantes y, si es necesario, eliminarlos del conjunto de datos.
datos duplicados
Si bien este no es un problema particularmente alarmante en términos de rendimiento del modelo, los datos duplicados deben eliminarse del almacén de datos para que el proceso de entrenamiento del modelo sea más eficiente y potencialmente evitar el sobreajuste.
Varios esquemas de normalización.
Ligeras diferencias en la forma en que se procesan y almacenan los datos pueden causar grandes dolores de cabeza al entrenar un modelo. Por ejemplo, diferentes productos pueden recortar el mismo campo de texto libre a diferentes longitudes o anonimizar los datos de manera diferente, lo que genera inconsistencias en los datos. Si una de estas fuentes contiene principalmente malware y otra fuente contiene patrones benignos, el modelo ML puede aprender a identificarlos, por ejemplo, en función de la longitud de truncamiento.
datos de campo de texto libre
Esto en realidad merece una categoría por sí solo porque puede ser muy difícil de manejar. Los campos de texto libre son la pesadilla del ingeniero de datos, ya que tiene que lidiar con errores tipográficos, jerga, casi duplicados, variaciones en mayúsculas, espacios, puntuación y muchas otras inconsistencias.
Actualización constante
Finalmente, la deriva de datos es un problema importante que se debe abordar al diseñar un sistema de ML. Una vez que se entrena un modelo, se vuelve cada vez más inexacto con el tiempo a medida que cambia la distribución de los nuevos datos entrantes. Por lo tanto, se debe programar una actualización periódica del modelo para garantizar que el rendimiento continúe dentro de los límites esperados.
Por ejemplo, en el espacio de la seguridad, estamos viendo mucha volatilidad a medida que los actores de amenazas cambian sus exploits y su comportamiento con el tiempo, y las vulnerabilidades se descubren y remedian. Este fue un breve resumen de los pasos típicos que se deben seguir para seleccionar, recopilar y limpiar datos para una solución de ML. Si todo esto se ha hecho, probablemente se disponga de un conjunto de datos limpio. El experimento puede comenzar.
[ID de starbox = 15]