SlideShare una empresa de Scribd logo
1 de 31
Introducción a
machine learning
con JavaScript
CaliJS – Junio 2018
¡Hola!
Soy Manuel Zapata
Geek, emprendedor,
arquitecto de software.
Me pueden encontrar en
http://manuelzapata.co.
2
Empecemos con un
ejemplo
Teachable machine
3
1.
Una revisión de los
conceptos básicos
4
Machine
learning
5
“
Es un área de la inteligencia artificial, que
normalmente usa técnicas estadísticas
para darle a los computadores la
habilidad de “aprender” con datos, sin
ser explícitamente programados.
6
http://manuelzapata.co
Categorías principales en machine learning
◎Aprendizaje supervisado.
◎Aprendizaje no supervisado.
◎Aprendizaje por refuerzo.
7
Aprendizaje
supervisado
8
http://manuelzapata.co
¿Cómo funciona?
9
http://manuelzapata.co
Aprendizaje supervisado: árboles de decisión
10
http://manuelzapata.co
Aprendizaje supervisado: regresión
11
http://manuelzapata.co
Aprendizaje supervisado: redes neuronales
12
Ejemplo de redes
neuronales
Deep playground
13
2.
De la teoría a lo
técnico
14
Lenguajes más populares para machine learning
15
http://manuelzapata.co
Alternativas con JavaScript
◎brain.js
◎Synaptic
◎ConvNetJS
◎Compromise
◎Neuro.js
◎ml.js
◎TensorFlow.js (antes DeepLearn.js)
16
3.
TensorFlow.js
17
¿Qué es
TensorFlow.js?
Es una librería de
código abierto, que
hace uso de WebGL,
para ofrecer servicios
de machine learning
18
http://manuelzapata.co
Características generales
◎Anunciado el 30 de marzo.
◎Machine learning en el navegador.
◎Aceleración por GPU, usando WebGL.
◎También en Node.
◎No envía datos al servidor (privacidad).
19
http://manuelzapata.co
Características generales
◎Sucesor de deeplearn.js (ahora TensorFlow.js
Core).
◎API de bajo nivel para álgebra lineal.
◎API de alto nivel para capas.
◎Se pueden crear modelos directamente en el
navegador.
◎Se pueden importar modelos de TensorFlow y
Keras.
◎API similar al de Python, pero aún no lo iguala.
20
Navegador
@tensorflow/tfjs
Paquetes NPM
Node.js
@tensorflow/tfjs-node
21
http://manuelzapata.co
Tensores
Un conjunto de valores numéricos, de una o más
dimensiones. Son inmutables.
Funciones
tf.tensor tf.tensor2d
tf.scalar tf.zeros
tf.tensor1d tf.ones
22
http://manuelzapata.co
Variables
Se inicializan con un tensor. No son inmutables.
Funciones
tf.variable
23
http://manuelzapata.co
Operaciones
Permiten manipular los datos almacenados en
tensores. Tienen funcionalidades para álgebra
lineal y machine learning.
Funciones
square logicalAnd
add mean
sum transpose
24
http://manuelzapata.co
Modelos y capas
Un modelo es una estructura compuesta por capas, y
que dado unos datos de entrada provee una salida.
Funciones para modelos Funciones para capas
tf.sequential tf.layers.dense
tf.model tf.layers.simpleRNN
tf.loadModel tf.layers.conv2d
25
Veamos algo de
código
26
Un último ejemplo
Reconocimiento de escritura
27
4.
Cierre
28
http://manuelzapata.co
¿Por dónde empezar?
◎Página oficial de TensorFlow.js.
◎Video de lanzamiento de TensorFlow.js.
◎Nanodegree de machine learning de Udacity.
◎Especialización de deep learning de Coursera.
◎Machine learning crash course de Google.
◎Google Cloud AI.
◎Machine learning en AWS.
29
http://manuelzapata.co
30
http://manuelzapata.co/wa
¡Mil gracias!
31

Más contenido relacionado

Similar a Introducción a machine learning con JavaScript

Manos a la obra "Hands on" con Elastic stack
Manos a la obra "Hands on" con Elastic stackManos a la obra "Hands on" con Elastic stack
Manos a la obra "Hands on" con Elastic stackUllyCarolinneSampaio
 
Software simulador UMC
Software simulador UMCSoftware simulador UMC
Software simulador UMCMarfrabogado
 
Introducción al Machine Learning con BigML
Introducción al Machine Learning con BigMLIntroducción al Machine Learning con BigML
Introducción al Machine Learning con BigMLMSc Aldo Valdez Alvarado
 
Encontrar problemas con el uso de los agentes de APM
Encontrar problemas con el uso de los agentes de APMEncontrar problemas con el uso de los agentes de APM
Encontrar problemas con el uso de los agentes de APMUllyCarolinneSampaio
 
Introducción al Machine learning en Android
Introducción al Machine learning en AndroidIntroducción al Machine learning en Android
Introducción al Machine learning en AndroidVictor Alfonso Rodas Oña
 
Capitulo 1 introduccion a la inteligencia artificial aux
Capitulo 1 introduccion a la inteligencia artificial   auxCapitulo 1 introduccion a la inteligencia artificial   aux
Capitulo 1 introduccion a la inteligencia artificial auxnandourrutia
 
8º hackatón de proyectos libres de la UGR: Ayuda para los participantes
8º hackatón de proyectos libres de la UGR: Ayuda para los participantes8º hackatón de proyectos libres de la UGR: Ayuda para los participantes
8º hackatón de proyectos libres de la UGR: Ayuda para los participantesJuan J. Merelo
 
Como triunfar con tu proyecto en un hackatón
Como triunfar con tu proyecto en un hackatónComo triunfar con tu proyecto en un hackatón
Como triunfar con tu proyecto en un hackatónJuan J. Merelo
 
Sesion-1-Carlos-Real-y-Antonio-Gazquez.pdf
Sesion-1-Carlos-Real-y-Antonio-Gazquez.pdfSesion-1-Carlos-Real-y-Antonio-Gazquez.pdf
Sesion-1-Carlos-Real-y-Antonio-Gazquez.pdfJuan225106
 
Ya estoy aprendiendo a programar ¿y ahora?
Ya estoy aprendiendo a programar ¿y ahora?Ya estoy aprendiendo a programar ¿y ahora?
Ya estoy aprendiendo a programar ¿y ahora?Carlos Toxtli
 
Introducción al 7º hackathon UGR
Introducción al 7º hackathon UGRIntroducción al 7º hackathon UGR
Introducción al 7º hackathon UGRJuan J. Merelo
 
Encuadre de la Asignatura de Inteligencia Artificial - abril-septiembre 2020
Encuadre de la Asignatura de Inteligencia Artificial - abril-septiembre 2020Encuadre de la Asignatura de Inteligencia Artificial - abril-septiembre 2020
Encuadre de la Asignatura de Inteligencia Artificial - abril-septiembre 2020Universidad Nacional de Loja
 
Estructuras básicas. grupo. nicolás, nicole, sara y laura.
Estructuras básicas. grupo. nicolás, nicole, sara y laura. Estructuras básicas. grupo. nicolás, nicole, sara y laura.
Estructuras básicas. grupo. nicolás, nicole, sara y laura. SaraLesmes
 
Machine learning utilizacion en redes sociales
Machine learning utilizacion en redes socialesMachine learning utilizacion en redes sociales
Machine learning utilizacion en redes socialesAdrian Diaz Cervera
 
U PLAN Ciencia de datos e inteligencia (8).pdf
U PLAN Ciencia de datos e inteligencia  (8).pdfU PLAN Ciencia de datos e inteligencia  (8).pdf
U PLAN Ciencia de datos e inteligencia (8).pdfFernandoMoncada20
 

Similar a Introducción a machine learning con JavaScript (20)

Manos a la obra "Hands on" con Elastic stack
Manos a la obra "Hands on" con Elastic stackManos a la obra "Hands on" con Elastic stack
Manos a la obra "Hands on" con Elastic stack
 
Recursos didacticos
Recursos didacticosRecursos didacticos
Recursos didacticos
 
Software simulador UMC
Software simulador UMCSoftware simulador UMC
Software simulador UMC
 
Introducción al Machine Learning con BigML
Introducción al Machine Learning con BigMLIntroducción al Machine Learning con BigML
Introducción al Machine Learning con BigML
 
Encontrar problemas con el uso de los agentes de APM
Encontrar problemas con el uso de los agentes de APMEncontrar problemas con el uso de los agentes de APM
Encontrar problemas con el uso de los agentes de APM
 
Introducción al Machine learning en Android
Introducción al Machine learning en AndroidIntroducción al Machine learning en Android
Introducción al Machine learning en Android
 
Capitulo 1 introduccion a la inteligencia artificial aux
Capitulo 1 introduccion a la inteligencia artificial   auxCapitulo 1 introduccion a la inteligencia artificial   aux
Capitulo 1 introduccion a la inteligencia artificial aux
 
Actividades
ActividadesActividades
Actividades
 
8º hackatón de proyectos libres de la UGR: Ayuda para los participantes
8º hackatón de proyectos libres de la UGR: Ayuda para los participantes8º hackatón de proyectos libres de la UGR: Ayuda para los participantes
8º hackatón de proyectos libres de la UGR: Ayuda para los participantes
 
Como triunfar con tu proyecto en un hackatón
Como triunfar con tu proyecto en un hackatónComo triunfar con tu proyecto en un hackatón
Como triunfar con tu proyecto en un hackatón
 
Sesion-1-Carlos-Real-y-Antonio-Gazquez.pdf
Sesion-1-Carlos-Real-y-Antonio-Gazquez.pdfSesion-1-Carlos-Real-y-Antonio-Gazquez.pdf
Sesion-1-Carlos-Real-y-Antonio-Gazquez.pdf
 
Fundamentos de programacion I
Fundamentos de programacion IFundamentos de programacion I
Fundamentos de programacion I
 
Ya estoy aprendiendo a programar ¿y ahora?
Ya estoy aprendiendo a programar ¿y ahora?Ya estoy aprendiendo a programar ¿y ahora?
Ya estoy aprendiendo a programar ¿y ahora?
 
9 pasos para un exitoso machine learning
9 pasos para un exitoso machine learning9 pasos para un exitoso machine learning
9 pasos para un exitoso machine learning
 
Introducción al 7º hackathon UGR
Introducción al 7º hackathon UGRIntroducción al 7º hackathon UGR
Introducción al 7º hackathon UGR
 
Herramientasinteractivas
HerramientasinteractivasHerramientasinteractivas
Herramientasinteractivas
 
Encuadre de la Asignatura de Inteligencia Artificial - abril-septiembre 2020
Encuadre de la Asignatura de Inteligencia Artificial - abril-septiembre 2020Encuadre de la Asignatura de Inteligencia Artificial - abril-septiembre 2020
Encuadre de la Asignatura de Inteligencia Artificial - abril-septiembre 2020
 
Estructuras básicas. grupo. nicolás, nicole, sara y laura.
Estructuras básicas. grupo. nicolás, nicole, sara y laura. Estructuras básicas. grupo. nicolás, nicole, sara y laura.
Estructuras básicas. grupo. nicolás, nicole, sara y laura.
 
Machine learning utilizacion en redes sociales
Machine learning utilizacion en redes socialesMachine learning utilizacion en redes sociales
Machine learning utilizacion en redes sociales
 
U PLAN Ciencia de datos e inteligencia (8).pdf
U PLAN Ciencia de datos e inteligencia  (8).pdfU PLAN Ciencia de datos e inteligencia  (8).pdf
U PLAN Ciencia de datos e inteligencia (8).pdf
 

Último

Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..RobertoGumucio2
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 

Último (20)

Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 

Introducción a machine learning con JavaScript

Notas del editor

  1. Características del ejemplo - Utiliza redes neuronales. - El conjunto de datos de entrenamiento se genera en el navegador. - El entrenamiento se ejecuta en el navegador. - Emplea TensorFlow.js.
  2. Revisión muy general.
  3. http://bigdata-madesimple.com/machine-learning-explained-understanding-supervised-unsupervised-and-reinforcement-learning/
  4. https://medium.com/machine-learning-101/chapter-3-decision-trees-theory-e7398adac567
  5. https://statistics.laerd.com/spss-tutorials/linear-regression-using-spss-statistics.php
  6. https://colab.research.google.com/github/tensorflow/models/blob/r1.8.0/samples/core/get_started/eager.ipynb
  7. Características del ejemplo - Utiliza redes neuronales. - El conjunto de datos de entrenamiento se genera en el navegador. - El entrenamiento se ejecuta en el navegador. - Emplea TensorFlow.js.
  8. Revisión muy general.
  9. Compromise  Procesamiento de lenguajes naturales. ml.Js  Utilitarios para machine learning y análisis numérico.
  10. Revisión muy general.
  11. Características del ejemplo - Utiliza redes neuronales. - El conjunto de datos de entrenamiento se genera en el navegador. - El entrenamiento se ejecuta en el navegador. - Emplea TensorFlow.js.
  12. Características del ejemplo - Utiliza redes neuronales. - El conjunto de datos de entrenamiento se genera en el navegador. - El entrenamiento se ejecuta en el navegador. - Emplea TensorFlow.js.
  13. Revisión muy general.
  14. Características del ejemplo - Utiliza redes neuronales. - El conjunto de datos de entrenamiento se genera en el navegador. - El entrenamiento se ejecuta en el navegador. - Emplea TensorFlow.js.