0% encontró este documento útil (0 votos)
3 vistas38 páginas

Lectura 1 (L1)

El módulo introduce el machine learning como una subcategoría de la inteligencia artificial, explicando sus aplicaciones en la vida cotidiana y diferenciando entre aprendizaje supervisado y no supervisado. Se presenta la historia del machine learning, desde el teorema de Bayes hasta su uso actual en diversas industrias, y se discuten ejemplos de algoritmos y aplicaciones prácticas. Además, se abordan las consideraciones y desventajas de ambos tipos de aprendizaje, destacando la importancia de la correcta etiquetación de datos en el aprendizaje supervisado.

Cargado por

lfragueda
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
3 vistas38 páginas

Lectura 1 (L1)

El módulo introduce el machine learning como una subcategoría de la inteligencia artificial, explicando sus aplicaciones en la vida cotidiana y diferenciando entre aprendizaje supervisado y no supervisado. Se presenta la historia del machine learning, desde el teorema de Bayes hasta su uso actual en diversas industrias, y se discuten ejemplos de algoritmos y aplicaciones prácticas. Además, se abordan las consideraciones y desventajas de ambos tipos de aprendizaje, destacando la importancia de la correcta etiquetación de datos en el aprendizaje supervisado.

Cargado por

lfragueda
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Módulo 1.

Machine learning y
sus aplicaciones

Introducción

En este módulo, nos adentraremos en los conceptos iniciales


relacionados al machine learning como disciplina y sus diversos usos
en la vida cotidiana, que relacionan, incluso, nuestro día a día con el
aprendizaje de máquinas.

Junto con ello, lograremos entender y diferenciar los tipos de


aprendizaje: supervisado y no supervisado, para, posteriormente,
aplicar procesamientos de set de datos bien preparados y ajustados
para operar sobre diversos algoritmos de machine learning.

Video de inmersión
Unidad 1: Machine learning y sus
aplicaciones

Tema 1.¿Qué es machine learning?

El machine learning, también conocido como aprendizaje automático,


es una subcategoría inserta dentro de lo que es la inteligencia
artificial. Permite que las computadoras o máquinas aprendan
patrones o conductas sin la necesidad de programar,
obligatoriamente, paso a paso para obtener resultados y
predicciones de un problema.

Figura 1. Machine learning

Fuente: [Imagen sin título sobre machine learning]. (s. f.). [Link]

En palabras de José Luís Espinoza, data scientist de BBVA México,


el machine learning puede ser considerado como: “un maestro del
reconocimiento de patrones. Es capaz de convertir una muestra de
datos en un programa informático capaz de extraer inferencias de
nuevos conjuntos de datos para los que no ha sido entrenado
previamente” (BBVA, 8 de noviembre de 2019,
[Link]
funciona/).

Desde una mirada más interconectada, también es interesante la


definición de Drew Conway, citado en Machine learning para todos,
quien define al machine learning como “la unión de habilidades con
ordenadores y las matemáticas y estadística” (2018,
[Link]
automatico-o-machine-learning/). El diagrama anterior nos permite
entender en qué ubicación podemos encontrar el machine learning y
su cruce con la ciencia de datos.

Este conocimiento de conductas se vuelve una habilidad


indispensable para solucionar problemas de la vida cotidiana que
tengan como resultado clasificar personas, gustos, estilos de música,
problemas de salud, etc.

Historia del machine learning

Antes de comenzar con esta historia, debemos tener muy en claro


que el machine learning no es un tema de futuro, debido a que gran
parte de las decisiones basadas en grandes volúmenes de datos se
realizan mediante diversas técnicas de aprendizaje automático que
son, prácticamente, una obligación empresarial hoy en día.

Demos un vistazo a distintas piezas de un puzzle que han ayudado a


que el aprendizaje de máquinas sea tan fundamental:

1812 - Teorema de Bayes:


Definición de probabilidades de que ocurra un evento basándose en
el conocimiento de un hito anterior relacionado con el evento que ya
ocurrió. Por ejemplo, la probabilidad de que llueva un jueves, dadas
las características de una lluvia ocurrida el día anterior.

1940 - Bases de la programación informática:

Se establecen las bases de máquinas que permiten seguir una serie


de acciones secuenciadas en un computador.
Sobre estos descubrimientos, 10 años más tarde, Alan Turing,
matemático considerado como uno de los padres de la ciencia de la
computación y la informática moderna, se cuestionó la posibilidad de
que las máquinas puedan pensar mediante inteligencia artificial y
que puedan tener la capacidad de resolver tareas humanas, como
escribir o reconocer imágenes a diferentes volúmenes y escalas.

1950 – Primeras investigaciones de máquinas inteligentes


en relación con redes neuronales:

Se crean las primeras neuronas artificiales basadas en computación,


que tienen como finalidad transmitir información entre ellas. Para
lograr esto, se creó un programa informático que tenía como desafío
lograr sacar una bolita de un laberinto, sin tener alguna
programación previa para poder lograrlo, sino que aprendía, a partir
de ejemplos de salidas que se proporcionaban con anterioridad.

1950 – IBM crea el primer programa exitoso del juego de


mesa de damas
1967 – K vecinos más próximos

Se desarrolla el algoritmo Nearest Neighbors que es considerado el


nacimiento de los algoritmos de clasificación supervisada, la cual
consta del reconocimiento de patrones más cercanos a una vecindad
de datos.
2003 – Estudios de sistemas de ficheros
distribuidos Google File System (GFS):

Se presenta un nuevo paradigma de procesamiento distribuido al


que se llamará Map & Reduce.

Actualidad - Asistentes personales y estudios

Hoy en día, el machine learning está presente en distintos campos


de aplicación, desde la toma de decisiones estratégicas de
empresas, que permiten predecir datos de fuga de clientes,
segmentación de mercados mediante criterios puntuales;
reconocimiento de rutas más cortas de viajes; uso de asistentes
personales mediante Siri (Apple), Alexa (Amazon); así como en el
campo de la medicina permite predecir enfermedades mediante
datos e imágenes.

Actividades

La empresa Máquina Artificial, dedicada a la importación de


computadores para el cono sur de la región, está pensando
en utilizar machine learning para predecir datos de los
posibles clientes que puedan dejar de comprar productos
en el corto plazo. Con esta información, la empresa puede
tener un gran apoyo de datos que permita:

No contactar más a esos clientes

Saber cuántos computadores van a sobrar a la empresa

Ayudar a la toma de decisiones estratégicas de la empresa

Determinar cuánta gente se debe contratar el año siguiente para vender


Ayudar a la toma de decisiones estratégicas de la empresa. Una de las
principales razones para usar machine learning es que nos ayuda a
hacer predicciones de lo que pasará en el futuro y en el presente. Con
ello, se pueden tomar mejores decisiones y adaptar el negocio para
generar valor.

Tema 2. Ejemplos y algoritmos de aplicación

En relación con el machine learning, existen infinidades de


aplicaciones y situaciones en las cuales podemos encontrarlo.
Resulta indispensable para la toma de decisiones en distintos tipos
de negocios e industrias, ya sea desde invertir más en publicidad
dentro de una empresa, hasta ayudar en la decisión de realizar una
operación a un paciente que podría tener una enfermedad.

En la actualidad, el machine learning ronda nuestro día a día cuando


realizamos una búsqueda en Google, para ello, utilizamos un motor
de búsqueda o, tal vez, cuando usamos el reconocimiento de voz en
celulares, controles remotos de smart TV, detección de rostro en
celulares (face ID), etc.

Otras aplicaciones más amplias de su uso son:

Uso de antivirus.
Genética. En la clasificación de secuencias de ADN.
Determinación de la ruta más corta de transporte (Waze,
Google Maps).
Predicción del clima de una zona determinada.
Comprensión de textos (lectura y transcripción de voz).
Vehículos autónomos y robots.
Análisis de imágenes de alta calidad.
Análisis de comportamiento de consumo y productividad. Para
la identificación de clientes potenciales y, en general, en
sectores de telecomunicaciones, banca y seguros.

Como podemos ver, el machine learning es un mundo que nos


facilita la vida y la experiencia de distintos servicios (como usuarios).
También, nos permite analizar grandes volúmenes de datos para
tomar decisiones complejas que permiten avanzar y crear valor
dentro de un sinnúmero de empresas, aplicaciones y todo lo que nos
podamos imaginar.

Figura 2. Machine learning

Fuente: elaboración propia.

Actividades

Determina si la siguiente afirmación es verdadera o falsa:

Chic Terrex comentaba a sus compañeros de trabajo que,


en el mundo educativo, también se puede utilizar machine
learning, ya que nos permitiría predecir si un alumno puede
desertar de su carrera de estudio por las zapatillas que usa,
la camisa que utiliza o el tipo de corte de cabello que tiene.
Verdadero

Falso

Falso. Es correcto decir que en el mundo educativo se puede utilizar


machine learning, sin embargo, la manera de predecir si un alumno
puede desertar debe considerar variables claras de decisión, como
son, por ejemplo: asistencia a clases, rendimiento de evaluaciones,
pago de cuotas de arancel.

Tema 3. Aprendizaje supervisado

El aprendizaje supervisado nos ayuda a resolver problemas que son


conocidos, ya que utiliza conjuntos de datos que se han usado
anteriormente para hacer aprender a una máquina. Para ello, es
necesario tener información previamente etiquetada que permita
entrenar un algoritmo que realice tareas específicas.

Veamos esto desde un ejemplo de nuestra vida cotidiana, para así


lograr entender el funcionamiento del aprendizaje en un algoritmo.

Cuando éramos muy pequeños, nuestros padres nos entregaban


información previamente etiquetada y nosotros realizábamos el
trabajo de un algoritmo de machine learning en nuestra mente.

Por ejemplo, salíamos a una plaza y nos encontrábamos con un


perro o un gato.

Ante ello, nuestros padres nos decían “ese es un perro”, “ese es un


gato”.
Con esa información, podíamos hacer una relación de las
características de cada uno de los animales y así asignarles una
etiqueta. Y, en caso de que no tuviésemos claridad sobre si el animal
que veíamos era un perro o un gato, nuestros padres nos decían:

“No, esto no es un perro. Esto es un gato”.

De esta misma forma, el aprendizaje supervisado trabaja bajo


modelos que permiten predecir resultados con datos conocidos, por
ejemplo:

Un proceso de aprendizaje supervisado podría


consistir en clasificar vehículos de dos y cuatro
ruedas a partir de sus imágenes.
Los datos tendrían que estar correctamente
etiquetados para identificar si un vehículo es de dos o
cuatro ruedas.
El aprendizaje supervisado permite que los
algoritmos 'aprendan' de datos históricos de
entrenamiento y los apliquen a entradas
desconocidas para obtener la salida correcta. (TIBC,
s. f., [Link]
is-supervised-learning).

Otros ejemplos:

Clasificaciones binarias (0 o 1):


Clasificación de etiquetas con datos de entrada en uno de dos
grupos posibles. A menudo, una de las clases indica un estado
"normal/deseado" (valor 1) y la otra indica un estado "anormal/no
deseado" (valor 0). Algunas de las aplicaciones prácticas de la
clasificación binaria más clásicas incluyen (TIBC, s. f.):

Fraude bancario:

La detección de fraude bancario por parte de entidades financieras


(fraude / no fraude).

Deserción estudiantil:

Deserción estudiantil en una carrera técnica (alumno deserta /


alumno no deserta).

Detección de spam

El algoritmo recibe ejemplos de correos electrónicos que están


etiquetados como "spam" o "no spam" durante la fase de aprendizaje
supervisado. Posteriormente, cuando el algoritmo recibe una nueva
entrada de correo electrónico, predice si el correo corresponde a un
"spam" o "no spam". (TIBC, s. f., [Link]
center/what-is-supervised-learning).

Predicción de fuga de clientes

El algoritmo utiliza un conjunto de datos de entrenamiento de clientes


que previamente cancelaron la suscripción de un servicio. Según el
entrenamiento, el algoritmo predice si un nuevo cliente finalizará la
suscripción o no, en función de los parámetros de entrada.

Predicción de conversión

El algoritmo se entrena con los datos del comprador y si compró el


artículo o no. Luego, basándose en esta capacitación, el algoritmo
predice si un nuevo cliente realizará una compra o no. (TIBC, s. f.,
[Link]
learning).
Figura 3. Ejemplo gráfico de clasificación de datos mediante el
uso de etiquetas en machine learning

Fuente: elaboración propia.

Consideraciones del aprendizaje supervisado:

En esta modalidad de machine learning, los algoritmos


aprenden de los datos introducidos por una persona [o de un
set de datos con resultados conocidos].
Se necesita la intervención humana para etiquetar, clasificar e
introducir los datos en el algoritmo.
El algoritmo genera datos de salida esperados [etiquetas
esperadas], ya que en la entrada han sido clasificados por
alguien. (BiSmart, s. f., [Link]
machine-learning-supervisado-no-supervisado).
Si las etiquetas no han sido clasificadas de manera correcta,
por consecuencia, la máquina aprenderá de manera errónea y
entregará resultados que no se condicen con lo esperado.

Actividades
Según lo aprendido sobre aprendizaje supervisado,
determina cuál de las siguientes opciones no
correspondería a un modelo que permita predecir
información supervisada:

Fraude bancario

Detección de spam

Deserción estudiantil

Gustos de verduras verdes en niños de 3 años

“Gustos de verduras en niños de 3 años”. Esto no clasifica dentro de


lo que es aprendizaje supervisado, ya que no podemos considerar
que las verduras que tienen color verde no nos puedan gustar en su
totalidad, sino, más bien, esto depende de nuestro aprendizaje y
gustos.

Tema 4. Aprendizaje no supervisado

El aprendizaje no supervisado nos ayuda a resolver problemas que


no son conocidos, ya que utiliza conjuntos de datos que no se han
utilizado anteriormente para hacer aprender a una máquina. En otras
palabras, este tendrá que aprender a encontrar similitudes de
información mediante agrupaciones y relaciones que son más
grandes, por ejemplo, dividir un set de 1000 datos en 50
agrupaciones que puedan tener semejanza en sus patrones.

Veamos esto desde un ejemplo de nuestra vida cotidiana, para así


lograr entender el funcionamiento del aprendizaje en un algoritmo.

Cuando éramos niños, comíamos arvejas y, quizá, no nos gustaban.


Posteriormente, comíamos pepino y puede que no nos gustara
tampoco o, incluso, algún otro tipo de verduras de color verde
tampoco nos gustaban.

Para ello, nuestros padres no nos decían que las verduras que
tienen color verde no nos gustarían en su totalidad, sino, más bien,
esto depende de nuestro aprendizaje y gustos.

En este caso, si nuestro paladar nos decía “todas aquellas verduras
que tengan color verde no te van a gustar, el “no te van a gustar” es
nuestra etiqueta.

De esta manera, los algoritmos o modelos intentan darles sentido a


los datos por sí mismos, mediante la búsqueda de patrones y
características que sean semejantes a la observación de los datos.

Clasificaciones clásicas que surgen en el aprendizaje no supervisado


nos pueden ayudar a responder preguntas del tipo:

¿Están surgiendo nuevos grupos masivos de fraude?


¿Están surgiendo nuevos patrones de compra para la
promoción de moda de otoño-invierno?

Figura 4. Proceso de modelado


Fuente: elaboración propia.

En la vida cotidiana, el data scientist o analista de datos puede


realizar agrupaciones de aprendizaje no supervisado para encontrar
respuestas a problemas de áreas como:

Marketing:

Encontrar grupos de clientes con un comportamiento similar, dada


una gran base de datos de clientes que contiene sus propiedades y
registros de compras anteriores.

Biología:

Clasificación de plantas y animales dadas sus características.

Estudios de terremotos:

Aglomeración de epicentros de terremotos observados para


identificar zonas peligrosas.

Desventajas del aprendizaje no supervisado


Si bien ambos modelos de aprendizaje —supervisado y no
supervisado— son altamente utilizados, el aprendizaje no
supervisado tiene ciertas desventajas respecto a la precisión de la
información que uno quisiera obtener, a continuación, se detallan
algunas consideraciones:
No se puede obtener información precisa con respecto a la
clasificación de datos. La salida de datos utilizados en el
aprendizaje no supervisado es no etiquetada y no se conoce.
[Hay menor precisión de los resultados, esto] se debe a que los
datos de entrada no son conocidos y no están etiquetados de
antemano por la gente. Esto significa que la máquina requiere
hacer esto por sí misma.
El usuario necesita dedicar tiempo a interpretar y etiquetar las
clases que siguen esa clasificación. (Aprende IA, s. f.,
[Link]
learning/).

Para lo último, se necesita cierta experticia para entender los


fenómenos que están ocurriendo tras un negocio.

Por último, la clave para obtener una ventaja


competitiva en el mercado específico está en el uso
eficaz de los datos. Los algoritmos de aprendizaje no
supervisado te ayudan a segmentar los datos para
estudiar las preferencias de tu público objetivo o ver
cómo reacciona un virus específico a un antibiótico
específico. (Aprende IA, s. f.,
[Link]
machine-learning/).

Con esta información ya podemos entender de qué manera se


clasifican las bases del machine learning y comprender la gran
utilidad que nos da su existencia.

Como usuarios, veremos que nuestra mente funciona como


el machine learning y las máquinas nos facilitan la vida y nos
entregan comodidad para realizar distintas funciones que son parte
de nuestro día a día, gracias al aprendizaje de datos que a esta se le
otorga.

Actividades

Según lo aprendido sobre aprendizaje no supervisado,


determina cuál de las siguientes opciones correspondería a
un modelo que permita predecir información de este tipo:

Clasificación de plantas y animales, dadas sus características

Detección de fraudes bancarios

Detección de spam

Deserción estudiantil

Clasificación de plantas y animales, dadas sus características. Esto


clasifica dentro de lo que es aprendizaje no supervisado, ya que no
podemos considerar que la clasificación de plantas se maneje con
etiquetas, debido a la gran similitud que existe entre una especie y
otra, por lo cual se trabaja como aprendizaje no supervisado.

Unidad 2: Preparando datos para su


análisis

Tema 1. Predicción de datos


A menudo, encontraremos que se habla del concepto de la
predicción de datos igual que como se habla de análisis predictivo.

El análisis predictivo es el proceso de utilizar


información para realizar predicciones basadas en
datos. En este proceso, se hace uso de los datos
junto con técnicas analíticas, estadísticas y de
aprendizaje automático a fin de crear un modelo para
predecir eventos futuros. (Math Works, s. f.,
[Link]
[Link]#:~:text=).

En este contexto, el análisis predictivo tiene un espacio muy ganado


en el contexto del big data y su amplia gama de información en
diversas industrias, como hemos visto anteriormente.

Considerando que cada vez existe mayor tendencia en los negocios


a tomar decisiones basadas en datos, lo que se conoce como
cultura data driven, en esta instancia, comenzaremos a responder a
preguntas que surgen luego de entender lo que es el aprendizaje
supervisado y no supervisado:

¿Qué tan difícil es crear un modelo predictivo? ¿Cómo puedo crear


un algoritmo que sea capaz de aprender la información que le quiero
entregar?

Para ello, aprenderemos nuevos conceptos que nos ayudarán a


estructurar nuestro set de datos para el posterior análisis predictivo.

Conjunto de datos (data set):


Es la materia prima del sistema de predicción. Es el
histórico de datos que se usa para entrenar al
sistema que detecta los patrones. El conjunto de
datos se compone de instancias; y las instancias, de
factores, características o propiedades. (González, s.
f., [Link]
learning/).

Entrenamiento y validación:
Para entender estos conceptos de machine learning y saber si está
funcionando bien, supongamos el siguiente ejemplo:
Tenemos un set de 100. 000 datos. Este se deberá dividir en dos
partes.

Muestra de entrenamiento: estos son los datos con los que se


construye el modelo.

Muestra de validación: es una porción de datos que se usa para


validar el modelo (prevenir sobreajuste o subajuste).

Estos se dividen de manera aleatoria, considerando un único


conjunto de datos de la siguiente manera.

Figura 5. Muestra de entrenamiento

Fuente: elaboración propia.

A modo estándar, ambas muestras, en general, están compuestas


por un 70-30, donde el 70 % de los registros corresponde a la
muestra de entrenamiento y el 30 % corresponde a validación.

Por lo cual, para nuestro data sets de 10 000 datos deberíamos


considerar:
70 000 datos aleatorios que serán parte de la muestra de
entrenamiento, mientras que los 30 000 restantes serán parte de la
validación del modelo.
En algunos casos, puede usarse una proporción de 80-20 o, incluso,
90-10. El objetivo es evaluar la capacidad predictiva del modelo en
un segmento distinto al de entrenamiento.
La finalidad de las muestras de entrenamiento y validación es poder
testear bajo distintos escenarios el aprendizaje del algoritmo, en
otras palabras:

Con la muestra de entrenamiento (70 000 datos) se le enseña al


algoritmo diversos patrones de comportamiento de los datos, los
cuales, luego de ser aprendidos, se validan en la muestra de
validación, para revisar si el comportamiento es semejante.
En el caso de ser así, quiere decir que el modelo es capaz de
aprender las propiedades del conjunto de datos de manera
generalizada.

Actividades

Dentro de la predicción de datos, el análisis de los datos


cumple un rol fundamental para generar buenos resultados.
Para ello, se necesita dividir los datos en dos partes y así
poder dar conocimiento a los algoritmos. En este aspecto,
¿cómo se le llama a esta división de datos?

Microfase 1/Microfase 2
Macrofase 1/Macrofase 2

Aprendizaje supervisado/aprendizaje no supervisado

Entrenamiento/Validación

“Entrenamiento/validación”; donde la muestra de entrenamiento es la


de los datos con los que se construye el modelo y la validación es
una porción de datos que se usa para prevenir sobreajuste o
subajuste.

Tema 2. Preprocesamiento de data sets

Para esta sección, nos será más fácil entender el preprocesamiento


de datos mediante el uso de un data set de diabetes, que podemos
descargar desde Kaggle, en el siguiente link:

[Link]

Una vez descargado el archivo, procederemos a revisar el


procesamiento de los datos:

Paso 0:
Recuerda que, para poder hacer uso y procesamiento, debes contar
con procesadores de datos, ya sea mediante: Google Colab, Jupyter
u otro lector de Notebooks de Python.

Paso 1:
Instalación de librerías clásicas para el manejo y manipulación de
datos: Pandas, NumPy y Matplotlib.
Figura 6. Instalación de librerías

Fuente: elaboración propia.

Paso 2: carga y visualización de datos


Recuerda que la librería de Panda te servirá para que tengas
preparados tus futuros modelos de machine learning.

Métodos de lectura: read_csv() para leer y cargar el archivo csv


del data set en un DataFrame.

Método de previsualización: head() para ver las 5 primeras filas del


contenido del DataFrame.

Figura 7. Carga y visualización de datos

Fuente: elaboración propia.


Paso 3: entender los datos – tipos

Podemos entender los tipos de datos de nuestro modelo


utilizando dtypes para identificar cada columna.

Figura 8. Utilización de dtypes

Fuente: elaboración propia.

En este caso:

int64 representa que la variable es de carácter entera. Los enteros


sirven cuando se trata de etiquetar algo o se tienen grupos discretos.
Por ejemplo, alguien puede tener 1 o 2 hijos, pero no 1.5 hijos.

También sirven para representar una categoría de mapeo. Por


ejemplo, imaginamos que tenemos 3 ciudades, donde "1" significa
New York City, "2" significa San Francisco y "3" significa Philadelphia.

float64 representa valores numéricos de punto flotante. Estos sirven


para representar valores continuos, por ejemplo, BMI o insulina,
donde decimales/fracciones son permitidas.
Paso 4: entender los datos y valores faltantes

Antes de entrar al análisis preliminar, revisamos que no haya ningún


valor faltante. Suelen indicarse como NaN o Not a Number.

Usamos el método dropna() para revisar si existen filas que no


deban ser contadas.
dropna() removerá la fila si una sola columna individual tiene
un feature faltante. De forma alternativa, podemos especificar si este
es el acercamiento indicado o si queremos eliminar solo filas donde
falte toda la información de la columna.
Revisemos si existen datos faltantes en nuestro dataframe:
[Link]() permite mirar el dataframe y categorizar como valor true
donde existen datos NA.

Figura 9. [Link]

Fuente: elaboración propia.

En este caso, tenemos una previsualización de la BBDD, pero no


sabemos qué pasa con los datos centrales, por lo cual, utilizaremos
una suma de valores false y true para determinar si hay datos
faltantes.
Figura 10. [Link]

Fuente: elaboración propia.

De esta forma, podemos corroborar que nuestro data set no cuenta


con datos faltantes.

Paso 5: representar el patrón de los datos

Dado nuestro data set, queremos ser capaces de decir si alguien


tiene o no diabetes, y que ello sea indicado por la columna outcome.

Donde “1” indica que el paciente tiene diabetes y “0” sugiere que no
la tiene. Queremos aprender si las condiciones preexistentes
(age, blood-pressure, insulin, BMI) pueden contribuir a la diabetes.
Para ello, usaremos histogramas y gráficas de dispersión para ver
cómo se comportan los grupos/población de nuestros datos. Es
bueno hacer esto antes de construir un modelo.

Creación de histograma
Primero, revisamos las distribuciones de frecuencia. Para esto,
utilizaremos un histograma.
Un histograma usa bins o límites de un valor numérico. Contamos
cuántas filas caen dentro de los límites superior e inferior de
cada bin y esto crea la distribución.
Pandas puede automatizar la creación de histogramas para no
contar desde cero.
Podemos darle el número de bins o esquinas de los bins (el criterio
para límites inferior y superior).

Dado que queremos saber si la persona tiene o no diabetes,


podemos preguntar si nuestros datos están bien distribuidos en
valores de 1 o 0 para el outcome.

Necesitamos clases igualmente balanceadas para hacer


predicciones decentes.

Revisamos, con la gráfica de barras, el resultado del siguiente


código.

Figuras 11. Creación de histograma

Fuente: elaboración propia.

Figuras 12. Creación de histograma


Fuente: elaboración propia.

De lo anterior, podemos ver que tenemos más "No" que "Sí", lo que
significa que hay más personas sin diabetes que con diabetes, en
este conjunto de muestra.

Consideremos lo siguiente: dentro del aprendizaje supervisado


que revisamos en temas anteriores, hablábamos de etiquetar un dato
con una variable de salida. En este caso, esta variable outcome es la
etiqueta de salida en el data set, ya que, dentro de todos los
patrones de cada paciente, es la que entrega la resolución o
respuesta que buscamos a los datos: si el paciente tiene diabetes o
no.
Es importante utilizar los histogramas en distintas variables que nos
ayuden a entender el modelo de datos, por ejemplo. También lo
realizaremos con la variable edad de los pacientes.

Figura 13. Código


Fuente: elaboración propia.

Si resolvimos lo anterior, podremos darnos cuenta de que la mayoría


de nuestros pacientes parecen tener entre 20 y 40 años.

Actividades

Respecto a la función dtypes, esta permite:

Dividir una muestra en entrenamiento y validación

Contar datos para saber la dimensión de filas y columnas

Cargar la librería Panda

Identificar el tipo de datos que tiene el data set

“Identificar el tipo de datos que tiene el data set”. Al aplicar dtypes,


podemos encontrarnos con valores int64, esto representa que la
variable es de carácter entera. También podemos encontrar categoría
de mapeos y valores numéricos de punto flotante, que sirven para
representar valores continuos.
Tema 3. Imputación de variables

La imputación de variables es una parte del proceso de data


sets que siempre la encontraremos en la gran mayoría de los
conjuntos de datos que trabajemos.

Estos datos representan aquellos en los que no se almacena ningún


valor de datos en una observación. Es por ello que es de vital
importancia identificarlos y trabajarlos para su imputación, pero ¿por
qué deberíamos imputar datos?

Esto se debe a que, en machine learning, debemos intentar trabajar


con los valores lo más limpios y completos posible, para un posterior
análisis y entrenamiento de los modelos, por eso, es muy importante
poder tener un buen preprocesamiento e imputación de las variables,
previo al ingreso de los datos al modelo.

Revisemos una imputación de datos con el uso de un data set.

Figura 14. Revisión de una imputación de datos con el uso de


un data set

Fuente: elaboración propia.


Como podemos ver, tanto la variable “age” y “mount” contienen
valores NaN, para los cuales tenemos las siguientes opciones.

Para poder imputar los valores nulos, podemos utilizar el siguiente


código.

Figura 15. Imputación de valores nulos

Fuente: elaboración propia.

Este código reducirá la cantidad de datos de la muestra, dejará solo


aquellos que son valores numéricos y eliminará las filas en las que
se encuentra algún dato faltante.

Este tipo de imputación es una de las tantas que se pueden realizar.

También, podemos tener otras opciones, como reemplazar los


valores NaN por el promedio de la variable que queremos completar.
Esto se realiza con la finalidad de no perder datos que sean parte de
nuestro modelo.

Observamos cómo podemos hacerlo con el siguiente código.
Figuras 16, 17 y 18. Reemplazo de los valores NaN
Fuente: elaboración propia.

Posteriormente, podemos realizar el mismo procedimiento para


completar los datos de la columna amount, ¿te animas a hacerlo tú?

Actividades

Analizar la siguiente afirmación:

Una de las importancias de la imputación de datos es poder


eliminar datos faltantes, sin tener la necesidad de
reemplazarlos, pues, en la práctica, no hay problema en
perder datos en vez de realizar su reemplazo. ¿Es correcta
esta afirmación?

Verdadero
Falso

En el caso de la imputación de datos, va a depender netamente de la


cantidad de datos con los que se cuente y la estrategia de lo que se
quiera resolver, pero nunca es recomendable eliminar datos del todo,
debido a que pueden acortar mucho la muestra de lo que queremos
analizar y podemos perder información muy importante.

Tema 4. Ajuste y sobreajuste de datos

El sobreajuste de datos es uno de los conceptos principales


de machine learning. Se le denomina sobreajuste cuando un modelo
de entrenamiento aprende información que está muy cargada a una
etiqueta de datos, lo que tiene como consecuencia que los datos se
generalicen de sobremanera y no se logren resultados realistas
dentro de la muestra de validación.

Recordemos que uno de los principales objetivos que tiene


el machine learning es obtener patrones de datos para entrenar que
puedan estar siempre disponibles para predecir o inferir de manera
correcta los posibles nuevos datos que vayamos a sumar dentro de
nuestro data set.

En otras palabras, es clave tener patrones generales que puedan


extrapolarse a la nueva información para la toma de decisiones.

Pensemos en el caso de nuestra memoria humana, el sobreajuste se


produciría si aprendiéramos muchas cosas de memoria sin entender
el trasfondo de lo que estamos aprendiendo.

Pero ¿cuándo se produce el sobreajuste?


Esto puede ocurrir cuando el data set se entrena demasiado o con
datos anómalos, lo que hace que el algoritmo aprenda patrones que
no son generales. Aprende características específicas, pero no los
patrones generales, el concepto. Los modelos más complejos
tienden a sobreajustarse más que los modelos más simples.
Además, ante un mismo modelo, a menor cantidad de datos, es más
posible que ese modelo se sobreajuste.

¿Cómo evaluarlo?

“Existen varios métodos para evaluar cuándo un modelo se está


sobreajustando. Uno de los métodos más conocidos es por medio de
las gráficas de errores de entrenamiento y de testeo” (Machine
learning para todos, 2020,
[Link]
overfitting-y-por-que-debemos-evitarlo/).

Figura 19. Gráfico

Fuente: Machine learning para todos, 2020, [Link]

En la siguiente gráfica, consideramos que la línea roja son errores en


la muestra de testeo, mientras que la línea azul muestra el error de
entrenamiento.

A medida que más datos se tienen de entrenamiento para que el


algoritmo aprenda, el error tiende a bajar, pero si a esto lo aplicamos
a los datos de testeos, el error tiende a subir, a medida que los datos
van acumulando información.

El caso ideal es que ambas líneas, entrenamiento y test, estén lo


más cerca posible.

Figura 20. Gráfico

Fuente: elaboración propia.

Actividades

Según lo aprendido hasta el momento, ¿qué definición


representaría de mejor forma el concepto de sobreajuste de
un modelo de datos?

Es cuando un modelo de entrenamiento aprende información que está muy


cargada a una etiqueta de datos.

Es cuando un modelo de validación aprende información que está muy


cargada a una etiqueta de datos.
Es cuando un modelo de entrenamiento no cuenta con etiquetas de datos.

Es cuando el modelo de validación no elimina los datos faltantes.

“Es cuando un modelo de entrenamiento aprende información que


está muy cargada a una etiqueta de datos”, debido a que el algoritmo
no es capaz de identificar entre dos categorías, porque la información
está muy sobrecargada a una de las categorías.

Video de habilidades
Glosario

Referencias
Aprende IA. (s. f.). ¿Qué es el aprendizaje no supervisado?
[Link]

BBVA. (8 de noviembre de 2019). Machine learning: ¿qué es y cómo


funciona? [Link]
como-funciona/

BiSmart. (s. f.). Diferencias entre machine learning supervisado y no


supervisado. [Link]
supervisado-no-supervisado

González, A. (s. f.). Conceptos básicos de machine learning.


[Link]

[Imagen sin título sobre machine learning]. (s. f.).


[Link]

López Briega, R. (s. f.). Libro online de IAAR.


[Link]

Machine learning para todos. (2020). ¿Qué es el sobreajuste u


overfitting y por qué debemos evitarlo?
[Link]
overfitting-y-por-que-debemos-evitarlo/

Math Works. (s. f.). Análisis predictivo.


[Link]

Mitchell, T. (1997). Machine learning. McGraw-Hill Education.


TIBC. (s. f.). ¿Qué es el aprendizaje supervisado?
[Link]
learning

También podría gustarte