En mi post del pasado mes de junio, hablaba de las diferentes tipologías de machine learning que existen y en éste voy a tratar de los 3 componentes principales que necesitan todas y cada una de ellas.
Intentando, como siempre, simplificar al máximo, podemos decir que el único objetivo del machine learning es predecir resultados en base a datos introducidos. Si la tarea en cuestión no se puede representar de esta manera, no se trata de Machine Learning.
Evidentemente cuanto más grande sea el nº de muestras que se tenga, más sencillo será encontrar patrones relevantes que nos permitan predecir con fiabilidad el resultado.
Básicamente, necesitamos tres componentes para enseñar al modelo:
Datos:
Cuanto más diversos sean los datos, mejor será el resultado.
Existen dos formas de obtener datos: manual y automática. Los datos recopilados manualmente contienen muchos menos errores, pero su recopilación lleva más tiempo, lo que los hace más costosos por lo general.
La recogida automática es más económica pero a cambio, se produce un mayor número de errores en la misma.
Es reseñable que compañías como Google, se aprovechan de sus propios clientes para ir clasificando datos de forma gratuita. Esto lo hacen mediante los ReCaptcha que nos obligan a seleccionar, por ejemplo, todas las imágenes en las que aparece un autobús. Con este proceso están obteniendo mano de obra gratuita, abaratando los costes que supondría pagar esta clasificación manual si se contratara personal para ello. ¿Lícito? Esto da para otro post, precisamente porque no se informa al usuario de la finalidad real de este proceso cada vez más habitual.
Tener y disponer de una buena colección de datos es extremadamente costoso y complicado, llegando al extremo de que las compañías pueden compartir los diferentes algoritmos que se desarrollan pero jamás (o muy pocas veces) se comparten conjuntos de datos.
Parámetros o variables:
Se refieren a los factores que debe tener en cuenta un modelo. Por ejemplo: la procedencia geográfica de un usuario, su género, su edad, etc.
Cuando hablamos de datos que pueden recogerse en una tabla, es más sencillo de entender: las variables son los nombres que ponemos a las columnas.
En otros casos, por ejemplo si tenemos fotos de animales, y tenemos que clasificarlas, no podemos considerar una variable a cada mínimo componente de la imagen (píxel). Debido a esto, seleccionar las variables correctas es lo que, generalmente, lleva más tiempo dentro de un trabajo de machine learning. También suele ser la principal fuente de errores.
Algoritmos:
Es la parte más obvia. Cualquier problema se puede solucionar de varias formas distintas. En el mundo del machine learning, el método que se elija afecta directamente a la precisión, el rendimiento y el tamaño del modelo final.
Es muy importante entender que, como decíamos antes, si los datos no son buenos, el mejor de los algoritmos, no valdrá para nada. Por esto es muy importante antes de poner nuestra atención en el % de precisión, intentar obtener el mayor volumen de datos, clasificados de la mejor manera posible.Si te ha parecido interesante el post y te gustaría seguir informándote sobre esta temática, estate atento a nuestro blog donde seguiremos publicando contenido rel