William Arevalo Data Scientist & Full-Stack Developer

About Me Projects Blog


Terminologia de ml

Machine LearningApril 20, 2018

Si quieres comenzar en el grandioso mundo del Machine Learning o aprendizaje automático debes tener muy en cuenta estos términos que se utilizan en el campo.

Estos terminos estan dados por google en su curso de AA(Apredizaje Automatico) que dejare en este link para quien interese, sin mas esta es la terminologia:

¿Qué es el aprendizaje automático (supervisado)? A continuación, se incluye una definición concisa:

  • Los sistemas de AA aprenden cómo combinar entradas para producir predicciones útiles sobre datos nunca antes vistos.

Exploremos la terminología básica del aprendizaje automático.

Etiquetas

Una etiqueta es el valor que estamos prediciendo, es decir, la variable y en la regresión lineal simple. La etiqueta podría ser el precio futuro del trigo, el tipo de animal que se muestra en una imagen, el significado de un clip de audio o simplemente cualquier cosa.

Atributos

Un atributo es una variable de entrada, es decir, la variable x en la regresión lineal simple. Un proyecto de aprendizaje automático simple podría usar un solo atributo, mientras que otro más sofisticado podría usar millones de atributos, especificados como:

{x1,x2,…xN}

En el ejemplo del detector de spam, los atributos podrían incluir los siguientes:

  • palabras en el texto del correo electrónico
  • dirección del remitente
  • hora del día a la que se envió
  • presencia de la frase “un truco increíble” en el correo electrónico

Ejemplos

Un ejemplo es una instancia de datos en particular, x. (La x se coloca en negrita para indicar que es un vector). Los ejemplos se dividen en dos categorías:

  • ejemplos etiquetados
  • ejemplos sin etiqueta

Un ejemplo etiquetado incluye tanto atributos como la etiqueta. Esto significa lo siguiente:

  labeled examples: {features, label}: (x, y)

Los ejemplos etiquetados se usan para entrenar el modelo. En nuestro ejemplo del detector de spam, los ejemplos etiquetados serían los correos electrónicos individuales que los usuarios marcaron explícitamente como “es spam” o “no es spam”.

Por ejemplo, en la siguiente tabla se muestran 5 ejemplos etiquetados de un conjunto de datos que contiene información sobre los precios de vivienda en California:

Un ejemplo sin etiqueta contiene atributos, pero no la etiqueta. Esto significa lo siguiente:

  unlabeled examples: {features, ?}: (x, ?)

Una vez que el modelo se entrena con ejemplos etiquetados, ese modelo se usa para predecir la etiqueta en ejemplos sin etiqueta. En el detector de spam, los ejemplos sin etiqueta son correos electrónicos nuevos que las personas todavía no han etiquetado.

Modelos

Un modelo define la relación entre los atributos y la etiqueta. Por ejemplo, un modelo de detección de spam podría asociar de manera muy definida determinados atributos con “es spam”. Destaquemos dos fases en el ciclo de un modelo:

  • Entrenamiento significa crear o aprender el modelo. Es decir, le muestras ejemplos etiquetados al modelo y permites que este aprenda gradualmente las relaciones entre los atributos y la etiqueta.
  • Inferencia significa aplicar el modelo entrenado a ejemplos sin etiqueta. Es decir, usas el modelo entrenado para realizar predicciones útiles (y'). Por ejemplo, durante la inferencia, puedes predecir medianHouseValue para nuevos ejemplos sin etiqueta.

Regresión frente a clasificación

Un modelo de regresión predice valores continuos. Por ejemplo, los modelos de regresión hacen predicciones que responden a preguntas como las siguientes:

  • ¿Cuál es el valor de una casa en California?
  • ¿Cuál es la probabilidad de que un usuario haga clic en este anuncio?

Un modelo de clasificación predice valores discretos. Por ejemplo, los modelos de clasificación hacen predicciones que responden a preguntas como las siguientes:

  • ¿Un mensaje de correo electrónico determinado es spam o no es spam?
  • ¿Esta imagen es de un perro, un gato o un hámster?


photo

William Arevalo

Data Scientist • Bogotá, CO • willarevalo.developer@gmail.com

Passionate Data Scientist | Scrum amateur | Pentester | Services Admin | Calisthenics devotee

I always keep in constant learning and evolution
I don't stop.