Clase 6 - Teoria General DS, Python - Setup
Clase 6 - Teoria General DS, Python - Setup
Machine Learning
Teoría general DS, Python, Numpy, Pandas & setup
Recapitulando…
1. No es magia!
Recapitulando…
1. No es magia!
Recapitulando…
2. No son perfectos...
Recapitulando…
2. The science and art of programming computers so they can learn from data.
3. En un proyecto DS no es solo programar modelos: incluye metodología,
prácticas, técnicas, investigación, prueba, error & corrección.
“Machine learning algorithms can figure out how to perform important tasks by
generalizing from examples…
As more data becomes available, more ambitious problems can be tackled“
- Pedro Domingos
A Few Useful Things to Know about Machine Learning
Recapitulando…
“Computer program is said to learn from experience E with respect to some task T
and some performance measure P, if its performance on T, as measured by P,
improves with experience E.”
- Instance / sample 1
- Instance / sample 2
...
- Instance / sample n
Ejemplo
Tarea (T): Filtro de Spam, detectar nuevos emails que sean spam.
- email 1 ➝ Es spam
- email 2 ➝ No Spam
...
- email n ➝ label n
Desarrollo tradicional de SW
Escribir programa de
detección
Desarrollo DS/ML
Programa
Escribir programa de
Training set Ejecuta T
detección
Programas:
- Más cortos.
- Fáciles de mantener.
- Adaptables al cambio.
Entrenamiento del modelo
○ Stream
○ Minibatch
● Rapido y barato.
Batch Learning vs. Online Learning
● Patrón cambiante.
○ Reglas de asociación
Reglas de asociación
Aprendizaje No supervisado
Input:
- 7352 samples de 30 individuos.
- Sample con 561 atributos o dimensiones.
Output:
Gráfico para explorar visualmente.
Aprendizaje No supervisado
Aprendizaje Semi-Supervisado
Casos de Uso/Áreas:
● Vehículos autónomos.
● Juegos de estrategia.
● Robótica.
Desafíos & problemas
Principales problemas
Features Irrelevantes
- Cantidad de features disponibles y relevancia.
- Feature Engineering:
- Feature selection
- Feature extraction
- New features
Principales problemas
Generalización: Overfitting
- Algoritmo aprende de memoria -> Mala generalización.
- Buscar balance:
- Cantidad de datos.
Generalización: Underfitting
- Modelo demasiado simple para la naturaleza de los datos.
- Buscar:
- Feature Engineering
Razones:
- Curso introductorio en Data Science.
- Punto de partida a otros temas…
- ML permite a un sistema realizar una tareas aprendiendo de los datos, sin estar
explícitamente programado con un conjunto de reglas.
- Existen diferentes tipos de algoritmos y de problemas que resuelven.
- El modelo no puede ser ni muy simple ni muy complejo.
- Un proyecto de DS consta de:
a. Recolección de datos.
b. Limpieza de datos.
c. Alimentar el algoritmo con dichos datos.
d. Validar resultados midiendo performance.
e. Optimizar modelo.
Herramientas & Tecnologías
NumPy
- Provee:
- Estructuras de alto de alta performance de
interfaz simple.
- Herramienta de exploración y análisis de datos.
- Open source.
- http://jupyter.org/
Librería de graficación
- Hola mundo!
Python3:
Anaconda:
windows (x64):
1. Descargar: https://repo.continuum.io/archive/Anaconda3-5.0.1-Windows-x86_64.exe
2. Doble-clic en archivo .exe.
3. Seguir las instrucciones en pantalla:
a. Aceptar terminos y condiciones.
b. Instalar en un path que no tenga espacio y caracteres unicode.
c. Ejecutar sin modo admin a menos que se requiera.
d. Utilizar con python3.
4. Ejecutar desde el menú inicio.
python3 -V
wget https://repo.continuum.io/archive/Anaconda3-5.0.1-Linux-x86_64.sh
./Anaconda3-5.0.1-Linux-x86_64.sh
Instalación en VM
Guia completa en https://conda.io/docs/user-guide/install/index.html#regular-installation
Durante la ejecución del script:
Ejecutar:
conda list
Instalación en VM
Para verificar la instalación, ejecutar:
Guia completa en https://conda.io/docs/user-guide/install/index.html#regular-installation
conda list
jupyter notebook