Compendio
Compendio
CIENCIA DE DATOS Y
MÁQUINA DE APRENDIZAJE
MACHINE LEARNING
Autor:
Diego Teran-Pineda
Noviembre 2024
Asignatura: Machine Learning 2
Resumen
En este libro, exploraremos el fascinante mundo del aprendizaje automático, una
rama de la inteligencia artificial que revoluciona la forma en que los sistemas infor-
máticos aprenden y se adaptan a nuevos datos. A través de los capítulos concisos
y accesibles, aprenderás a dominar los algoritmos de machine learning más pop-
ulares y a aplicarlos en problemas reales.
Aprende a:
• Comprender los fundamentos del aprendizaje automático y sus diferentes
tipos
Destacados:
• Ejemplos prácticos y casos de estudio para ilustrar cada concepto
Dirigido a:
• Estudiantes de ciencias de la computación y matemáticas
Introducción
3
aunque todavía lejos de la conciencia que algunos habían imaginado.
El verdadero punto de inflexión llegó en el siglo XXI. La explosión de datos, im-
pulsada por Internet y la digitalización masiva, proporcionó el combustible que el
Machine Learning anhelaba. Al mismo tiempo, la ley de Moore finalmente se hizo
realidad: las computadoras alcanzaron una potencia de procesamiento inimag-
inable décadas atrás. El Machine Learning, antes un sueño lejano, se convirtió en
una fuerza imparable.
Hoy en día, el Machine Learning impregna nuestras vidas de formas que ape-
nas podemos comprender. Desde las recomendaciones personalizadas en Net-
flix hasta los coches autónomos que navegan por las calles, la capacidad de las
máquinas para aprender está transformando industrias enteras y redefiniendo lo
que significa ser humano en la era digital.
La historia del Machine Learning aún está siendo escrita. Cada nuevo avance,
cada algoritmo innovador, nos acerca un paso más a la realización de ese sueño
inicial: crear máquinas que no solo aprendan, sino que también comprendan, in-
noven y, quizás algún día, sueñen como nosotros.
Figure 1.1: Describe concisamente los avances fundamentales que han impulsado
el desarrollo de los métodos de aprendizaje estadístico moralesIntroduccion.
La ciencia de datos
En un mundo inundado de datos, donde la información fluía como un torrente
imparable, vivía Aurora, una joven científica de datos con una sed insaciable por
el conocimiento. Su laboratorio, un santuario de pantallas brillantes y algoritmos
danzantes, era el lugar donde las frías cifras cobraban vida.
Un día, mientras analizaba el genoma de miles de especies de plantas, Aurora
notó un patrón peculiar. Era sutil, casi imperceptible, pero ella, con la intuición de
• Álgebra lineal: Imagina que los datos son como un mapa lleno de pun-
tos. El álgebra lineal te proporciona las herramientas para entender la
2. Programación: Dando vida a los algoritmos Una vez que comprendas los fun-
damentos matemáticos, necesitarás un lenguaje de programación para im-
plementar y experimentar con algoritmos de ML.
Datos
Los datos son un componente crucial en el campo del Aprendizaje Automático
(Machine Learning). Se refieren al conjunto de observaciones o mediciones que
pueden utilizarse para entrenar un modelo de aprendizaje automático. La calidad
y cantidad de datos disponibles para el entrenamiento y las pruebas juegan un pa-
pel significativo en la determinación del rendimiento de un modelo de aprendizaje
automático. Los datos pueden presentarse en diversas formas, como datos numéri-
cos, categóricos o de series temporales, y pueden provenir de varias fuentes, como
bases de datos, hojas de cálculo o APIs GeeksforGeeks, n.d.
Los datos son piezas de información que, por sí solas, pueden no tener mucho
significado, pero cuando se recopilan, organizan y analizan, se convierten en una
fuente valiosa de conocimiento. Piensa en los datos como los ingredientes de una
receta: por separado son solo elementos, pero juntos y bien combinados crean
algo delicioso.
Los datos pueden clasificarse en tres categorías principales según su estructura
y organización:
Este libro te guiará en un viaje fascinante a través del mundo del Machine Learn-
ing, proporcionándote las herramientas y el conocimiento necesarios para:
• Preparación de datos
• Representación de datos
• Modelamiento/Aprendizaje
• Evaluación
• Paso a producción
1. Enfoque y Dirección:
Sin una definición clara del problema, es como navegar sin rumbo. Estable-
cer objetivos específicos y medibles desde el principio proporciona un en-
foque claro y evita desviaciones innecesarias durante el desarrollo del mod-
elo.
5. Comunicación Efectiva:
Al comunicar tu proyecto a otros, una definición clara del problema facilita la
comprensión de los objetivos, métodos y resultados, lo que es esencial para
obtener apoyo y colaboración.
• Investiga y comprende tus datos. ¿Qué datos tienes disponibles? ¿Son rele-
vantes para el problema?
• Considerando nuestra intuición, ¿creemos que los datos nos permitirán pre-
decir nuestro objetivo? Seamos realistas con las limitaciones de los datos.
Preparación de datos
La preparación de datos es una etapa crucial en el proceso de machine learning,
ya que la calidad y formato de los datos influyen directamente en el rendimiento
de los modelos. Este subcapítulo aborda los pasos esenciales para preparar datos
de manera efectiva.
Limpieza de datos
• Eliminación de duplicados
Manejo de valores faltantes Existen varias estrategias para tratar los valores fal-
tantes, como:
• Normalización y estandarización
x − xmin
xnormalizado = (1.1)
xmax − xmin
x−µ
xestandarizado = (1.2)
σ
Donde µ es la media y σ es la desviación estándar.
• Visualización de distribuciones
• Identificación de correlaciones
• Matplotlib
• Seaborn
• Plotly
• Tableau
• Métodos de filtro
• Reducir el sobreajuste
Representación de datos
La representación de datos es fundamental en machine learning, ya que deter-
mina cómo la información se presenta a los algoritmos. Una representación ade-
cuada puede mejorar significativamente el rendimiento del modelo y facilitar el
aprendizaje.
Tipos de datos
• Textuales
• Temporales
• Imágenes
• Audio
Datos numéricos Los datos numéricos pueden ser continuos (como la altura o el
peso) o discretos (como el número de hijos). Su representación suele ser directa,
pero puede requerir normalización.
• One-hot encoding
• Label encoding
• Binary encoding
Representación de texto
Representación de imágenes
pixeloriginal
pixelnormalizado = (1.6)
255
• Secuencias de valores
• Ventanas deslizantes
...
x1 x2 x3 x2 x3 x4 x3 x4 x5 ...... (1.7)
Reducción de dimensionalidad
1
Cov(X) = X T X = P ΛP T (1.8)
n−1
Donde P son los eigenvectores y Λ los eigenvalores.
Consideraciones finales
Modelamiento y Aprendizaje
El modelamiento y aprendizaje son el núcleo del machine learning, donde los al-
goritmos aprenden patrones a partir de los datos para hacer predicciones o tomar
decisiones.
• Aprendizaje supervisado
• Aprendizaje no supervisado
• Aprendizaje semisupervisado
f :X→y (1.9)
f : X → patrones (1.10)
• Redes neuronales
y = β0 + β1 x1 + β2 x2 + ... + βn xn + ϵ (1.11)
1
P (y = 1|X) = (1.12)
1+ e−(β0 +β1 x1 +...+βn xn )
• Autoencoders
X
k X
J= ∥x − µi ∥2 (1.13)
i=1 x∈Ci
1
• Sigmoid: f (x) = 1+e−x
ex −e−x
• Tanh: f (x) = ex +e−x
Entrenamiento de modelos
Función de pérdida Mide la discrepancia entre las predicciones y los valores reales.
Ejemplos:
Pn
• Error cuadrático medio: M SE = 1
n i=1 (yi − ŷi )2
P
• Entropía cruzada: CE = − i yi log(ŷi )
• Descenso de gradiente
• Dropout
• Early stopping
Evaluación de modelos
• R-cuadrado
1X k
CVscore = scorei (1.15)
k i=1
• Grid search
• Random search
• Optimización bayesiana
Consideraciones finales
Fundamentos de la Inteligencia
Artificial
23
predicción de eventos del mundo real. Uno de los enfoques destacados en el ám-
bito del aprendizaje automático son las redes neuronales, las cuales han sido ob-
jeto de mejoras constantes para superar limitaciones y mejorar la precisión. Como
resultado, se han desarrollado algoritmos más avanzados basados en redes neu-
ronales, conocidos como aprendizaje profundo o deep learning.
Árboles de decisión
Análisis Discriminante
El análisis discriminante (AD) es una técnica multivariante utilizada para dividir gru-
pos de observaciones basados en variables medidas en cada muestra experimen-
tal, y para entender cómo cada parámetro afecta esta división. Además, permite
predecir o asignar nuevas observaciones a grupos previamente definidos medi-
ante funciones lineales o cuadráticas. Se basa en una función discriminante, que
puede ser única o múltiple dependiendo del número de grupos, y utiliza combina-
ciones lineales de variables predictoras para lograr la mejor discriminación entre los
grupos. Una vez construidas estas funciones con una muestra conocida, pueden
aplicarse a nuevos casos cuya pertenencia al grupo sea desconocida pero que
contengan mediciones de las variables predictoras. Se presupone que diferentes
clases generan datos basados en distribuciones Gaussianas. El optimizador tiene
dos tipos de modelos: Discriminante Lineal (LDA) y Discriminante Cuadrático (QDA).
P (X|y)P (y)
P (y|X) = HE (2.1)
P (X)
donde:
1. Naive Bayes Gaussiano: Este algoritmo se utiliza cuando los atributos son con-
tinuos y siguen una distribución gaussiana o normal. Aunque acelera significa-
tivamente la búsqueda, es importante tener en cuenta que, en condiciones
más flexibles, el error puede ser hasta dos veces mayor que el del Naive Bayes
Óptimo.
2. Naive Bayes Óptimo: Este algoritmo elige la clase con la mayor probabilidad
posterior de acontecimiento, siendo su nombre indicativo de su caracterís-
tica óptima. Sin embargo, este proceso implica revisar todas las posibilidades,
lo cual resulta en un proceso lento y que demanda mucho tiempo.
1
https://www.turing.com//
Las Máquinas de Vectores de Soporte (SVM, por sus siglas en inglés) son un poderoso
algoritmo supervisado que se destaca en la clasificación de conjuntos de datos pe-
queños pero complejos. Este algoritmo encuentra el hiperplano óptimo que separa
las clases y clasifica los datos en función de su ubicación respecto a este hiper-
plano. SVM puede utilizar diferentes funciones de núcleo, como lineal, gaussiano,
cuadrático y cúbico, y también cuenta con un parámetro de restricción de caja
que controla la penalización máxima impuesta a las observaciones que violan el
margen.
La Figure 2.3 muestra las partes importantes del algoritmo SVM. Los Vectores
de Soporte son los puntos más cercanos al hiperplano, del cual surgen las líneas
separadoras definidas como hiperplanos positivo y negativo. El margen es la dis-
tancia entre los hiperplanos y los vectores de soporte. En SVM, un margen grande
2
https://www.analyticsvidhya.com//
K-Vecinos más Cercanos (KNN, por sus siglas en inglés) es un modelo de clasifi-
cación que agrupa datos según su distancia. En lugar de aproximar globalmente
la función objetivo f (x) = y , durante cada predicción, KNN aproxima la función
objetivo localmente. Para hacer una predicción (etiqueta de clase u objetivo con-
tinuo), el algoritmo KNN encuentra los k vecinos más cercanos a un punto de con-
sulta y calcula la etiqueta de clase (en clasificación) o el objetivo continuo (en
regresión) basándose en los k puntos más similares.
K representa el número de vecinos más próximos que deben tenerse en cuenta
al realizar la predicción y los k puntos de datos con las menores distancias al punto
• Distancia Euclideana
• Distancia Manhattan
• Distancia Minkowski
Figure 2.4: Ilustración del algoritmo de clasificación del vecino más cercanos de
dos características x1 y x2 raschka38stat
Neural Network
X
n
Yj = wji xi + bj (2.2)
i=1
zj = φ(Yj ) (2.3)
no sería capaz de aprender los pesos que minimizan la función de costos (MSE), ver
ecuación 2.4. En este proceso, la retropropagación desempeña un papel crucial.
La retropropagación, o backpropagation en inglés, es el mecanismo de apren-
dizaje que permite al perceptrón multicapa ajustar de forma iterativa los pesos en
la red con el fin de minimizar la función de costo. Para que la retropropagación
funcione correctamente, es esencial que las funciones utilizadas en las neuronas,
como la suma ponderada y la función umbral (por ejemplo, ReLU), sean diferen-
ciables y tengan derivadas acotadas, ya que el Descenso de Gradiente suele ser
el método de optimización empleado en el Perceptrón Multicapa.
En cada iteración, después de que las sumas ponderadas se propaguen a
través de todas las capas, se procede a calcular el gradiente del Error Cuadrático
Medio (MSE), también conocido como función de costo o pérdida indicada en la
ecuación 2.4, para todos los pares de entrada y salida. Esto nos permite evaluar
qué tan bien se están prediciendo los valores objetivos.
1
Cost(J) = (Ŷ − Y )2 (2.4)
2
donde, Ŷ es el valor estimado y Y es el valor real.
Luego, para retropropagar este gradiente, se actualizan los pesos de la primera
capa oculta con su valor, permitiendo que los pesos se propaguen de vuelta al
inicio de la red neuronal. Este proceso continúa hasta que el gradiente para cada
par de entrada y salida haya convergido, lo que implica que el gradiente recién
dJ
∆w(t) = −α + ∆w(t−1) (2.5)
dw(t)
3
https://www.aalerin.com/
4
https://www.viso.ai/
Las redes LSTM constituyen una variante de las RNN, que incorpora unidades espe-
ciales además de las unidades convencionales. Las unidades LSTM se destacan
por su capacidad para mantener información en una “celda de memoria” du-
rante largos intervalos de tiempo. Esto se logra mediante un conjunto de puertas
que controlan el flujo de información hacia la memoria, su liberación y su elim-
inación. Estas puertas se dividen en tres categorías: la puerta de entrada, que
determina cuánta información de la muestra previa se retiene en la memoria; la
puerta de salida, que regula la cantidad de datos transmitidos a la siguiente capa;
y las puertas de olvido, que gestionan la tasa de eliminación de la información al-
macenada. Gracias a esta arquitectura, las redes LSTM son capaces de aprender
dependencias a largo plazo Alzubaidi et al., 2021.
Figure 2.9: Redes LSTM (Memoria a Largo y Corto Plazo o su siglas en inglés que
corresponden Long Short-Term Memory). Imagen extraída de mygreatlearning 5
Figure 2.10: Concepto de una red neuronal convoluional. Imagen extraída de viso
6
7
https://www.mygreatlearning.com/
Medidas de rendimiento
Las métricas de rendimiento son esenciales en el aprendizaje automático, permiten
evaluar el progreso y cuantificar el rendimiento de los modelos. Cada tarea se
puede clasificar en regresión o clasificación, y existen múltiples métricas para cada
tipo. Su comprensión es crucial para evaluar de manera efectiva los modelos de
aprendizaje automático.
Métricas de regresión
Los modelos de regresión generan una salida continua, lo que implica la necesidad
de utilizar métricas que evalúen la discrepancia entre las predicciones y los valores
41
reales. A continuación, se presentarán las métricas más utilizadas en el desarrollo
de la tesis:
• Error Cuadrático Medio - Mean Squared Error (MSE): Es una métrica funda-
mental en la evaluación de modelos de regresión. Su función es medir la
magnitud de las desviaciones entre las predicciones del modelo y los valores
reales. Un valor más bajo de MSE indica un ajuste más preciso del modelo a
los datos, lo que significa que las predicciones del modelo se acercan más a
los valores reales.
1 XN
M SE = (yj − ŷj )2 (3.1)
N j=1
• Error Cuadrático Medio Raíz - Root Mean Squared Error (RMSE): El RMSE sirve
para medir cuánto se desvían las predicciones de un modelo de regresión
de los valores reales en una escala similar a la de los datos originales. Cuanto
menor sea el valor del RMSE, mejor será el ajuste del modelo a los datos.
v
u
u1 X
N
RM SE = t (yj − ŷj )2 (3.2)
N j=1
M SEres
R2 = 1 − (3.3)
M SEtot
X
N X
N
M SEres = (yj − ŷj )2 M SEtot = (yj − ȳj )2 (3.4)
j=1 j=1
donde: M SEres es la suma de los cuadrados de las diferencias entre los val-
ores observados y los valores predichos por el modelo, M SEtot es la suma total
de los cuadrados, que representa la suma de los cuadrados de las diferen-
cias entre los valores observados y la media de los valores observados, ŷj es
el valor predicho, ȳ es la media y, N es el número de datos.
TP
P = (3.5)
TP + FP
TP
R= (3.6)
TP + FN
TN
TNR = (3.7)
TN + FP
2
F1 = 1 1 (3.8)
P + R
TP
TPR = (3.9)
TP + FN
FP
FPR = (3.10)
FP + TN
Bibliografía
45
Asignatura: Machine Learning 46
Bibliography
Alzubaidi, L., Zhang, J., Humaidi, A. J., Al-Dujaili, A., Duan, Y., Al-Shamma, O., San-
tamaría, J., Fadhel, M. A., Al-Amidie, M., & Farhan, L. (2021). Review of deep
learning: Concepts, cnn architectures, challenges, applications, future direc-
tions. Journal of big Data, 8, 1–74.
Da Xu, L., Lu, Y., & Li, L. (2021). Embedding blockchain technology into iot for security:
A survey. IEEE Internet of Things Journal, 8(13), 10452–10473.
Duan, N., Liu, L.-Z., Yu, X.-J., Li, Q., & Yeh, S.-C. (2019). Classification of multichannel
surface-electromyography signals based on convolutional neural networks.
Journal of Industrial Information Integration, 15, 201–206.
GeeksforGeeks. (n.d.). Ml | introduction to data in machine learning [Accessed:
2024-05-01].
Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT press.
Wang, X., Liu, Y., & Xin, H. (2021). Bond strength prediction of concrete-encased
steel structures using hybrid machine learning method. Structures, 32, 2279–
2292.
Zhang, C., & Lu, Y. (2021). Study on artificial intelligence: The state of the art and
future prospects. Journal of Industrial Information Integration, 23, 100224.
Zhang, Z., Cui, P., & Zhu, W. (2020). Deep learning on graphs: A survey. IEEE Transac-
tions on Knowledge and Data Engineering, 34(1), 249–270.
47