Machine Learning: Algoritmos y Aplicaciones Bosquejo Antecedentes Inspiración Ejemplo en ambiente industrial Algor
Views 217 Downloads 40 File size 6MB
Machine Learning: Algoritmos y Aplicaciones
Bosquejo
Antecedentes
Inspiración
Ejemplo en ambiente industrial
Algoritmos
Antecedentes
Inspiración
Modelo matemático
Algoritmos • • • • • •
Perceptron Linear Regression Logistic Regression Neural Network Convolutional Neural Network Haar Cascade
Proceso de entrenamiento 1. Hipótesis 2. Error promedio del sistema 3. Actualización de parámetros
Perceptron 1. Hipótesis
2. Actualización de parámetros
3. Error promedio del sistema
Perceptron 1. Hipótesis
2. Actualización de parámetros
3. Error promedio del sistema
Perceptron 1. Hipótesis
2. Actualización de parámetros
3. Error promedio del sistema
Perceptron Valores de los parámetros luego del entrenamiento:
Linear Regression 1. Hipótesis
2. Error promedio del sistema 3. Actualización de parámetros (Gradient Descent)
Linear Regression 1. Hipótesis
2. Error promedio del sistema 3. Actualización de parámetros (Gradient Descent)
Linear Regression 1. Hipótesis
2. Error promedio del sistema 3. Actualización de parámetros (Gradient Descent) Learning rate
Linear Regression x
h(x)
Linear Regression con una variable
x1 Linear Regression con múltiples variables
x2
h(x)
Linear Regression
Logistic Regression 1. Hipótesis donde,
2. Error promedio del sistema
3. Actualización de parámetros (Gradient Descent)
Logistic Regression 1. Hipótesis donde,
2. Error promedio del sistema
3. Actualización de parámetros (Gradient Descent)
Logistic Regression 1. Hipótesis donde,
2. Error promedio del sistema
3. Actualización de parámetros (Gradient Descent)
Linear Reg. Vs Logistic Reg.
x2
x1
Logistic Regression
Neural Network Muestras linealmente no separables
Neural Network 1. Forward propagation
Z(2) a(2)
Neural Network 2. Error promedio del sistema
Neural Network 3. Back Propagation Gradient Descent
d2 d3 d4
Pasos para obtener el Gradient Descent
Neural Network 4. Actualización de parámetros
Neural Network
Underfitting y Overfitting
Convolutional Neural Network CIFAR-10 arquitectura: INPUT – CONV – RELU – POOL – FC
[32x32x3]
Convolutional Neural Network CIFAR-10 arquitectura: INPUT – CONV – RELU – POOL – FC
3x3
[28x28]
Convolutional Neural Network CIFAR-10 arquitectura: INPUT – CONV – RELU – POOL – FC
[28x28]
Convolutional Neural Network CIFAR-10 arquitectura: INPUT – CONV – RELU – POOL – FC
[14x14]
Convolutional Neural Network CIFAR-10 arquitectura: INPUT – CONV – RELU – POOL – FC
Convolutional Neural Network Típica arquitectura
Convolutional Neural Network
Haar Cascade Haar Features – Integral Image – Adaboost – Cascade
Haar Cascade Haar Features – Integral Image – Adaboost – Cascade Input image
Integral image
A+D-C-B= 16+64-32-32=16
Haar Cascade Haar Features – Integral Image – Adaboost – Cascade
Haar Cascade Haar Features – Integral Image – Adaboost – Cascade
Training the Cascade 1. Instalar una Virtual Machine
Instalar Xubuntu y OpenCV
Training the Cascade 2. Colectar imágenes “positivas”
Imagenes con el objeto a detectar
Training the Cascade 3. Colectar imágenes “negativas”
Imagenes sin el objeto a detectar
Training the Cascade 4. Crear un archivo bg.txt con el directorio de todas las imágenes negativas. Carpeta
Neg/1.jpg Neg/2.jpg Neg/3.jpg Etc…
Nombre del archivo
Training the Cascade 5. Crear archivo info.txt Directorio
Núm. de imágenes, Coordenadas, Tamaño
• rawdata\image100.bmp 1 34 12 74 24 • rawdata\image101.bmp 2 35 25 70 39 40 95 80 92 • rawdata\image102.bmp 2 10 24 90 90 45 68 99 82
Training the Cascade 6. Crear vector de imágenes “positivas” • opencv_createsamples -info info/info.txt -num 1950 -w 20 -h 20 -vec positives.vec
Training the Cascade 7. Ejecutar comando de entrenamiento • opencv_traincascade -data data -vec positives.vec -bg bg.txt -numPos 1800 -numNeg 900 -numStages 10 -w 20 -h 20 8. Extraer el archivo .xml