Des exemples de use cases dont vous pourrez vous inspirer, et de plateformes de ML-as-a-Service pour vous faciliter le human learning du machine learning, l'expérimentation, et le déploiement en production!
18. • Startups pitch
• AI asks questions live to each startup
• AI assigns score
• Startup with highest score wins 100000 €
18
AI Startup Battle at PAPIs.io
38. The two phases of ML
• TRAIN a model
• PREDICT with a model
38
Machine Learning APIs
39. The two methods of ML Application Programming Interfaces
(here in Python)
• model = create_model(‘training.csv’)
• predicted_output, confidence =
create_prediction(model, new_input)
39
Machine Learning APIs
40. The two methods of ML Application Programming Interfaces
(here in Python)
• model = create_model(‘training.csv’)
• predicted_output, confidence =
create_prediction(model, new_input)
40
Machine Learning APIs
41. Example request to BigML API
$ curl https://bigml.io/dev/model?$BIGML_AUTH
-X POST
-H "content-type: application/json"
-d '{"dataset": "dataset/50ca447b3b56356ae0000029"}'
42.
43. • Classification problem
• Features:
• Text of email
• Sender in address book?
• How often do I reply?
• How quickly do I reply?
• Demo
43
Priority detection
44.
45. • VM with Jupyter notebooks (Python & Bash)
• API wrappers preinstalled: BigML & Google Pred
• Notebook for easy setup of credentials
• Scikit-learn and Pandas preinstalled
• Open source VM provisioning script & notebooks
• Search public Snaps on terminal.com:“machine learning”
45
Getting started
47. How was it before?
from sklearn import svm
model = svm.SVC(gamma=0.001, C=100.)
from sklearn import datasets
digits = datasets.load_digits()
model.fit(digits.data[:-1], digits.target[:-1])
model.predict(digits.data[-1])
48. How was it before?
from sklearn import svm
model = svm.SVC(gamma=0.001, C=100.)
from sklearn import datasets
digits = datasets.load_digits()
model.fit(digits.data[:-1], digits.target[:-1])
model.predict(digits.data[-1])
WAT?
50. • Spearmint:“Bayesian optimization”for tuning parameters →
Whetlab → Twitter
• Auto-sklearn:“automated machine learning toolkit and drop-
in replacement for a scikit-learn estimator”
50
Open Source AutoML libraries
51. Scikit
from sklearn import svm
model = svm.SVC(gamma=0.001, C=100.)
from sklearn import datasets
digits = datasets.load_digits()
model.fit(digits.data[:-1], digits.target[:-1])
model.predict(digits.data[-1])
52. Scikit
from sklearn import svm
model = svm.SVC(gamma=0.001, C=100.)
from sklearn import datasets
digits = datasets.load_digits()
model.fit(digits.data[:-1], digits.target[:-1])
model.predict(digits.data[-1])
53. AutoML Scikit
import autosklearn
model = autosklearn.AutoSklearnClassifier()
from sklearn import datasets
digits = datasets.load_digits()
model.fit(digits.data[:-1], digits.target[:-1])
model.predict(digits.data[-1])
54. • Algorithm selection… AutoML
• Scaling… Azure ML or Yhat (Greg at PAPIs Connect)
• “Automating ML workflows: a report from the trenches”—
Jose A. Ortega Ruiz
54
Automatization
56. • Classification problem
• Input is an image = pixel values
56
Image categorization
pixel1 pixel2 pixel3 animal?
102 0 255 Yes
35 41 209 No
… … … …
57. • Neural network:
• Layers
• Neurons of one layer connected to
neurons of next layer
• Each neuron receives signals from
previous layer and sends new signal to
next layer
• New signal based on linear combination
of signals received
• “Deep”-> more than 3 layers
57
Deep Learning
59. 59
Deep Learning for animal detection
pixel1
pixel2
pixel3
cat
dog
1st layer
value=(102, 0, 255)
Last layer
value=(0.1, 0.7, 0.4)
Output
value=(0.8, 0.3) => there’s
probably a cat!
60. 60
Deep Learning for animal detection
pixel1
pixel2
pixel3
cat
dog
1st layer
value=(4, 166, 23)
Last layer
value=(0.1, 0.7, 0.4)
Output
value=(0.1, 0.2) => probably no
animal here
62. 62
Deep Learning for animal detection
pixel1 pixel2 pixel3 animal?
102 0 255 Yes
35 41 209 No
… … … …
• Replace images with“smart”representation given by last layer
neuron1 neuron2 neuron3 animal?
0.1 0.2 0.5 Yes
0.8 0.3 0.8 No
… … … …
63. • Prochain meetup:
• Développer une application prédictive
(Hors-série débutants)
• Mardi 12 Avril à 19h - Le Node
• Workshop:
• Operational Machine Learning with open source and cloud platforms
• Samedi 23 Avril - sera annoncé sur le Meetup!
63
Prochains événements ML à Bordeaux
64. Machine Learning: je m’y mets
le 12 et le 23 Avril!
meetup.com/Bordeaux-Machine-Learning-Meetup/