SlideShare a Scribd company logo
DIY Applied Machine Learning:
Practical and Collaborative Method to Jump Start into Machine Learning with Jupyter
Notebooks and Google Collab
Tarek Hoteit - PhD, Director of IT @ Thomson Reuters
http://tarek.computer
IDEAS Conference Dallas 2018
About me - Tarek Hoteit
First encounter with a “computer” was
at 6 years of age with Atari Pacman
Still fascinated with 8-bit old-school programming &
retro games 34 years later
My first lines of code when I was 8 years old:
10 Print “hello”
20 goto 10
Got obsessed with text
adventure games which lead
to natural language
processing and terminal-
based coding
Once in 80s encountered an article on neural networks for
Commodore 64 that made no sense to me .. but that curiosity
stayed deep in my brain
... Continue to be passionate about computers: coding,
tinkering with IoT devices, playing retro games, running
servers...
Curiosity drove me to love computers and got me into artificial intelligence, machine learning, etc.
How about you? How do you get into AI by yourself?
https://image.slidesharecdn.com/100608pkn-100608043211-phpapp01/95/curiosity-
empathy-and-imagination-6-728.jpg?cb=1309980347
Traditionally you go .... on Twitter
- FOLLOW Machine Learning experts on Twitter
- READ tweets about new implementations
Or..... check LinkedIn ...
- Follow LinkedIn profiles and or posts
Then .... you go to YouTube
- Watch tutorials
- Read comments
Then you decide to take a course online
- Pick up a course on Coursera
- Follow the tutorial
- Use predefined environments for
your projects
Then what?
You ask yourself....
- How do I start on my own?
- What project can I do?
- How can I show my work?
- How do I setup the environment for myself?
- What is a great use case to build on?
- Which framework would I use?
- Which language would I choose?
- Will I get employed with my knowledge?
- Others know more than me?
- And on and on and on...
It gets more difficult to decide ...
Yes.... machine learning ... and deep learning ...
and ..... and.... can be overwhelming..
but........
““Everything is hard before it is easy” - Goethe
And the way to do it yourself with machine learning?
4 STEPS
DO IT YOURSELF with machine learning - step #1: theory
● Understand what is supervised, unsupervised, deep learning, and reinforcement learning concepts
○ Check mindmap summarizing concepts from data analysis to deep learning here
○ Business people can read this, coders can read that, and scientists can read these
arxiv.org
DO IT YOURSELF with machine learning - step #2: code
● Start with a blank but preset Jupyter notebook - use Google Collab https://colab.research.google.com or
Microsoft Azure Notebooks https://notebooks.azure.com/
● Learn some critical basics using Jupyter notebook as a playground - check https://jupyter-
notebook.readthedocs.io/en/stable/
● Basic Python learning - don’t go deep.. Just how to start writing basic lines of code - check
https://www.python.org/about/gettingstarted/
● Delimited files concept / CSV how to import and how to export - love Pandas! - check
https://pandas.pydata.org/pandas-docs/stable/io.html
● Package installation - PIP & setting up requirements.txt for storing all packages to install - check
https://packaging.python.org/tutorials/installing-packages/
● Understand and use Python virtual environments - check http://docs.python-
guide.org/en/latest/dev/virtualenvs
● Learn markdown syntax for content publishing https://github.com/adam-p/markdown-
here/wiki/Markdown-Cheatsheet
https://colab.research.google.com
Interactive scripting & ability to install packages directly
Useful for AI prototypes
Google Drive integration
Jupyter
notebooks
can be
shared
DO IT YOURSELF with machine learning - step #3: machine
● Skip cloud computing (AWS, Azure, gcloud) until Step 3.. Learn to run Linux in your
home!
● Pick up a Raspberry PI & SD Card from a local store.
● Install Linux (Raspbian distribution - check this guide ) and learn the basics of:
○ Terminal commands : ls, cd, md, ssh, etc.... check Linux basics on http://www.aboutdebian.com/linux.htm
● Setup your coding editor: just pick one... check Quora for ideas or just pick PyCharm
for Python or Java Eclipse or Sublime Text2 or VIM if you are brave and patient.
● Learn database basics such as Postgres or MYSQL.
● Get yourself comfortable with your programming language of choice. I personally love
Python (tutorial) but you may want Java (tutorial) or C# (quickstart) or whatever.
● Practice cloning existing code repositories from GitHub using GIT (tutorial)
● Algorithms can be found on github.com or gitxiv.com
Raspberry PI waiting for you
at local Microcenter store or
on Amazon
Host your IPython notebook on your Raspberry PI
Some how to links:
https://blog.domski.pl/ipython-notebook-server-on-raspberry-pi/ or
https://www.raspberrypi.org/forums/viewtopic.php?t=130450&p=870964
DO IT YOURSELF with machine learning - step #4: AI finally!
- Learn to setup free-tier Amazon AWS instance (1 year free tier) or Microsoft
Azure (free trial) or Google Cloud (free tier) for cloud computing setup and
machine learning deployments
- For Visual DIY AI projects:
- Buy yourself a Raspberry Pi Camera (https://www.raspberrypi.org/products/camera-module-v2/)
- Check Google AIY Projects https://aiyprojects.withgoogle.com/vision/
- Check Raspberry PI projects ideas here or here
- For Audio DIY AI projects:
- Get yourself an Amazon Echo from Amazon or any store, learn to build Alexa Skills (getting
started)
- Or try Google AIY project with Google Now integration - https://aiyprojects.withgoogle.com/voice/
Build various kits
using Google AIY
or Raspberry PI
Or run reinforcement learning projects using games!
Check https://keon.io/deep-q-learning/ and
https://github.com/DanielSlater/PythonDeepLearningS
amples
Now pick a project visual or audio for your
home... and for your family....
Start innovating!
To connect with Tarek Hoteit
Blog: https://tarek.computer (includes copy of the slides)
Twitter: @hoteit
LinkedIn: https://www.linkedin.com/in/hoteit/
Email: tarek.hoteit@tr.com

More Related Content

Similar to DIY Applied Machine Learning

Mastering python lesson1
Mastering python lesson1Mastering python lesson1
Mastering python lesson1
Ruth Marvin
 
00_pytorch_and_deep_learning_fundamentals.pdf
00_pytorch_and_deep_learning_fundamentals.pdf00_pytorch_and_deep_learning_fundamentals.pdf
00_pytorch_and_deep_learning_fundamentals.pdf
eanyang7
 
Learn to Code and Have Fun Doing It!
Learn to Code and Have Fun Doing It! Learn to Code and Have Fun Doing It!
Learn to Code and Have Fun Doing It!
St. Petersburg College
 
Mining Social Web APIs with IPython Notebook - Data Day Texas 2014
Mining Social Web APIs with IPython Notebook - Data Day Texas 2014Mining Social Web APIs with IPython Notebook - Data Day Texas 2014
Mining Social Web APIs with IPython Notebook - Data Day Texas 2014
Matthew Russell
 
Raspberry pi: Aprende raspberry pi con Linux por peter membrey y david hows.
Raspberry pi: Aprende raspberry pi con Linux por peter membrey y david hows.Raspberry pi: Aprende raspberry pi con Linux por peter membrey y david hows.
Raspberry pi: Aprende raspberry pi con Linux por peter membrey y david hows.
SANTIAGO PABLO ALBERTO
 
Python in Industry
Python in IndustryPython in Industry
Python in Industry
Dharmit Shah
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"
Christian Heilmann
 
Combining Machine Learning with Physical Computing - June 2023
Combining Machine Learning with Physical Computing - June 2023Combining Machine Learning with Physical Computing - June 2023
Combining Machine Learning with Physical Computing - June 2023
Hal Speed
 
Teaching Machine Learning with Physical Computing - July 2023
Teaching Machine Learning with Physical Computing - July 2023Teaching Machine Learning with Physical Computing - July 2023
Teaching Machine Learning with Physical Computing - July 2023
Hal Speed
 
Deep Learning using Tensorflow and Data Science Experience
Deep Learning using Tensorflow and Data Science ExperienceDeep Learning using Tensorflow and Data Science Experience
Deep Learning using Tensorflow and Data Science Experience
Roy Cecil
 
Computational Thinking - 101
Computational Thinking - 101Computational Thinking - 101
Computational Thinking - 101
WhizThinkers
 
Learn raspberry pi programming with python
Learn raspberry pi programming with pythonLearn raspberry pi programming with python
Learn raspberry pi programming with python
SANTIAGO PABLO ALBERTO
 
Introduction to the intermediate Python - v1.1
Introduction to the intermediate Python - v1.1Introduction to the intermediate Python - v1.1
Introduction to the intermediate Python - v1.1
Andrei KUCHARAVY
 
How to Become a Hacker?
How to Become a Hacker?How to Become a Hacker?
Mining Social Web APIs with IPython Notebook (Strata 2013)
Mining Social Web APIs with IPython Notebook (Strata 2013)Mining Social Web APIs with IPython Notebook (Strata 2013)
Mining Social Web APIs with IPython Notebook (Strata 2013)
Matthew Russell
 
Try harder or go home
Try harder or go homeTry harder or go home
Try harder or go home
jaredhaight
 
AI/ML/DL: Introduction to Deep Learning with Cognitive ToolKit
AI/ML/DL: Introduction to Deep Learning with Cognitive ToolKitAI/ML/DL: Introduction to Deep Learning with Cognitive ToolKit
AI/ML/DL: Introduction to Deep Learning with Cognitive ToolKit
Marvin Heng
 
UKSG - Just Do IT Yourself
UKSG  - Just Do IT YourselfUKSG  - Just Do IT Yourself
UKSG - Just Do IT Yourself
Tony Hirst
 
py4inf-01-intro.ppt
py4inf-01-intro.pptpy4inf-01-intro.ppt
py4inf-01-intro.ppt
RosemeireArgentiniDe1
 
Getting started with mobile devices development - Openmoko Freerunner
Getting started with mobile devices development - Openmoko FreerunnerGetting started with mobile devices development - Openmoko Freerunner
Getting started with mobile devices development - Openmoko Freerunner
codebits
 

Similar to DIY Applied Machine Learning (20)

Mastering python lesson1
Mastering python lesson1Mastering python lesson1
Mastering python lesson1
 
00_pytorch_and_deep_learning_fundamentals.pdf
00_pytorch_and_deep_learning_fundamentals.pdf00_pytorch_and_deep_learning_fundamentals.pdf
00_pytorch_and_deep_learning_fundamentals.pdf
 
Learn to Code and Have Fun Doing It!
Learn to Code and Have Fun Doing It! Learn to Code and Have Fun Doing It!
Learn to Code and Have Fun Doing It!
 
Mining Social Web APIs with IPython Notebook - Data Day Texas 2014
Mining Social Web APIs with IPython Notebook - Data Day Texas 2014Mining Social Web APIs with IPython Notebook - Data Day Texas 2014
Mining Social Web APIs with IPython Notebook - Data Day Texas 2014
 
Raspberry pi: Aprende raspberry pi con Linux por peter membrey y david hows.
Raspberry pi: Aprende raspberry pi con Linux por peter membrey y david hows.Raspberry pi: Aprende raspberry pi con Linux por peter membrey y david hows.
Raspberry pi: Aprende raspberry pi con Linux por peter membrey y david hows.
 
Python in Industry
Python in IndustryPython in Industry
Python in Industry
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"
 
Combining Machine Learning with Physical Computing - June 2023
Combining Machine Learning with Physical Computing - June 2023Combining Machine Learning with Physical Computing - June 2023
Combining Machine Learning with Physical Computing - June 2023
 
Teaching Machine Learning with Physical Computing - July 2023
Teaching Machine Learning with Physical Computing - July 2023Teaching Machine Learning with Physical Computing - July 2023
Teaching Machine Learning with Physical Computing - July 2023
 
Deep Learning using Tensorflow and Data Science Experience
Deep Learning using Tensorflow and Data Science ExperienceDeep Learning using Tensorflow and Data Science Experience
Deep Learning using Tensorflow and Data Science Experience
 
Computational Thinking - 101
Computational Thinking - 101Computational Thinking - 101
Computational Thinking - 101
 
Learn raspberry pi programming with python
Learn raspberry pi programming with pythonLearn raspberry pi programming with python
Learn raspberry pi programming with python
 
Introduction to the intermediate Python - v1.1
Introduction to the intermediate Python - v1.1Introduction to the intermediate Python - v1.1
Introduction to the intermediate Python - v1.1
 
How to Become a Hacker?
How to Become a Hacker?How to Become a Hacker?
How to Become a Hacker?
 
Mining Social Web APIs with IPython Notebook (Strata 2013)
Mining Social Web APIs with IPython Notebook (Strata 2013)Mining Social Web APIs with IPython Notebook (Strata 2013)
Mining Social Web APIs with IPython Notebook (Strata 2013)
 
Try harder or go home
Try harder or go homeTry harder or go home
Try harder or go home
 
AI/ML/DL: Introduction to Deep Learning with Cognitive ToolKit
AI/ML/DL: Introduction to Deep Learning with Cognitive ToolKitAI/ML/DL: Introduction to Deep Learning with Cognitive ToolKit
AI/ML/DL: Introduction to Deep Learning with Cognitive ToolKit
 
UKSG - Just Do IT Yourself
UKSG  - Just Do IT YourselfUKSG  - Just Do IT Yourself
UKSG - Just Do IT Yourself
 
py4inf-01-intro.ppt
py4inf-01-intro.pptpy4inf-01-intro.ppt
py4inf-01-intro.ppt
 
Getting started with mobile devices development - Openmoko Freerunner
Getting started with mobile devices development - Openmoko FreerunnerGetting started with mobile devices development - Openmoko Freerunner
Getting started with mobile devices development - Openmoko Freerunner
 

Recently uploaded

Leveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit InnovationLeveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit Innovation
TechSoup
 
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptxC1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
mulvey2
 
A Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdfA Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdf
Jean Carlos Nunes Paixão
 
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
iammrhaywood
 
Constructing Your Course Container for Effective Communication
Constructing Your Course Container for Effective CommunicationConstructing Your Course Container for Effective Communication
Constructing Your Course Container for Effective Communication
Chevonnese Chevers Whyte, MBA, B.Sc.
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
Priyankaranawat4
 
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective UpskillingYour Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Excellence Foundation for South Sudan
 
B. Ed Syllabus for babasaheb ambedkar education university.pdf
B. Ed Syllabus for babasaheb ambedkar education university.pdfB. Ed Syllabus for babasaheb ambedkar education university.pdf
B. Ed Syllabus for babasaheb ambedkar education university.pdf
BoudhayanBhattachari
 
The basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptxThe basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptx
heathfieldcps1
 
How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17
Celine George
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
PECB
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
RAHUL
 
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) CurriculumPhilippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
MJDuyan
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
haiqairshad
 
Solutons Maths Escape Room Spatial .pptx
Solutons Maths Escape Room Spatial .pptxSolutons Maths Escape Room Spatial .pptx
Solutons Maths Escape Room Spatial .pptx
spdendr
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
GeorgeMilliken2
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
Priyankaranawat4
 
Temple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation resultsTemple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation results
Krassimira Luka
 
How to Setup Warehouse & Location in Odoo 17 Inventory
How to Setup Warehouse & Location in Odoo 17 InventoryHow to Setup Warehouse & Location in Odoo 17 Inventory
How to Setup Warehouse & Location in Odoo 17 Inventory
Celine George
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
Nicholas Montgomery
 

Recently uploaded (20)

Leveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit InnovationLeveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit Innovation
 
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptxC1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
 
A Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdfA Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdf
 
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
 
Constructing Your Course Container for Effective Communication
Constructing Your Course Container for Effective CommunicationConstructing Your Course Container for Effective Communication
Constructing Your Course Container for Effective Communication
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
 
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective UpskillingYour Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective Upskilling
 
B. Ed Syllabus for babasaheb ambedkar education university.pdf
B. Ed Syllabus for babasaheb ambedkar education university.pdfB. Ed Syllabus for babasaheb ambedkar education university.pdf
B. Ed Syllabus for babasaheb ambedkar education university.pdf
 
The basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptxThe basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptx
 
How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
 
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) CurriculumPhilippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
 
Solutons Maths Escape Room Spatial .pptx
Solutons Maths Escape Room Spatial .pptxSolutons Maths Escape Room Spatial .pptx
Solutons Maths Escape Room Spatial .pptx
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
 
Temple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation resultsTemple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation results
 
How to Setup Warehouse & Location in Odoo 17 Inventory
How to Setup Warehouse & Location in Odoo 17 InventoryHow to Setup Warehouse & Location in Odoo 17 Inventory
How to Setup Warehouse & Location in Odoo 17 Inventory
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
 

DIY Applied Machine Learning

  • 1. DIY Applied Machine Learning: Practical and Collaborative Method to Jump Start into Machine Learning with Jupyter Notebooks and Google Collab Tarek Hoteit - PhD, Director of IT @ Thomson Reuters http://tarek.computer IDEAS Conference Dallas 2018
  • 2. About me - Tarek Hoteit First encounter with a “computer” was at 6 years of age with Atari Pacman Still fascinated with 8-bit old-school programming & retro games 34 years later My first lines of code when I was 8 years old: 10 Print “hello” 20 goto 10 Got obsessed with text adventure games which lead to natural language processing and terminal- based coding Once in 80s encountered an article on neural networks for Commodore 64 that made no sense to me .. but that curiosity stayed deep in my brain ... Continue to be passionate about computers: coding, tinkering with IoT devices, playing retro games, running servers...
  • 3. Curiosity drove me to love computers and got me into artificial intelligence, machine learning, etc. How about you? How do you get into AI by yourself? https://image.slidesharecdn.com/100608pkn-100608043211-phpapp01/95/curiosity- empathy-and-imagination-6-728.jpg?cb=1309980347
  • 4. Traditionally you go .... on Twitter - FOLLOW Machine Learning experts on Twitter - READ tweets about new implementations
  • 5. Or..... check LinkedIn ... - Follow LinkedIn profiles and or posts
  • 6. Then .... you go to YouTube - Watch tutorials - Read comments
  • 7. Then you decide to take a course online - Pick up a course on Coursera - Follow the tutorial - Use predefined environments for your projects
  • 9. You ask yourself.... - How do I start on my own? - What project can I do? - How can I show my work? - How do I setup the environment for myself? - What is a great use case to build on? - Which framework would I use? - Which language would I choose? - Will I get employed with my knowledge? - Others know more than me? - And on and on and on...
  • 10. It gets more difficult to decide ...
  • 11. Yes.... machine learning ... and deep learning ... and ..... and.... can be overwhelming.. but........
  • 12. ““Everything is hard before it is easy” - Goethe
  • 13.
  • 14.
  • 15. And the way to do it yourself with machine learning? 4 STEPS
  • 16. DO IT YOURSELF with machine learning - step #1: theory ● Understand what is supervised, unsupervised, deep learning, and reinforcement learning concepts ○ Check mindmap summarizing concepts from data analysis to deep learning here ○ Business people can read this, coders can read that, and scientists can read these arxiv.org
  • 17. DO IT YOURSELF with machine learning - step #2: code ● Start with a blank but preset Jupyter notebook - use Google Collab https://colab.research.google.com or Microsoft Azure Notebooks https://notebooks.azure.com/ ● Learn some critical basics using Jupyter notebook as a playground - check https://jupyter- notebook.readthedocs.io/en/stable/ ● Basic Python learning - don’t go deep.. Just how to start writing basic lines of code - check https://www.python.org/about/gettingstarted/ ● Delimited files concept / CSV how to import and how to export - love Pandas! - check https://pandas.pydata.org/pandas-docs/stable/io.html ● Package installation - PIP & setting up requirements.txt for storing all packages to install - check https://packaging.python.org/tutorials/installing-packages/ ● Understand and use Python virtual environments - check http://docs.python- guide.org/en/latest/dev/virtualenvs ● Learn markdown syntax for content publishing https://github.com/adam-p/markdown- here/wiki/Markdown-Cheatsheet
  • 18. https://colab.research.google.com Interactive scripting & ability to install packages directly Useful for AI prototypes Google Drive integration Jupyter notebooks can be shared
  • 19. DO IT YOURSELF with machine learning - step #3: machine ● Skip cloud computing (AWS, Azure, gcloud) until Step 3.. Learn to run Linux in your home! ● Pick up a Raspberry PI & SD Card from a local store. ● Install Linux (Raspbian distribution - check this guide ) and learn the basics of: ○ Terminal commands : ls, cd, md, ssh, etc.... check Linux basics on http://www.aboutdebian.com/linux.htm ● Setup your coding editor: just pick one... check Quora for ideas or just pick PyCharm for Python or Java Eclipse or Sublime Text2 or VIM if you are brave and patient. ● Learn database basics such as Postgres or MYSQL. ● Get yourself comfortable with your programming language of choice. I personally love Python (tutorial) but you may want Java (tutorial) or C# (quickstart) or whatever. ● Practice cloning existing code repositories from GitHub using GIT (tutorial) ● Algorithms can be found on github.com or gitxiv.com Raspberry PI waiting for you at local Microcenter store or on Amazon
  • 20. Host your IPython notebook on your Raspberry PI Some how to links: https://blog.domski.pl/ipython-notebook-server-on-raspberry-pi/ or https://www.raspberrypi.org/forums/viewtopic.php?t=130450&p=870964
  • 21. DO IT YOURSELF with machine learning - step #4: AI finally! - Learn to setup free-tier Amazon AWS instance (1 year free tier) or Microsoft Azure (free trial) or Google Cloud (free tier) for cloud computing setup and machine learning deployments - For Visual DIY AI projects: - Buy yourself a Raspberry Pi Camera (https://www.raspberrypi.org/products/camera-module-v2/) - Check Google AIY Projects https://aiyprojects.withgoogle.com/vision/ - Check Raspberry PI projects ideas here or here - For Audio DIY AI projects: - Get yourself an Amazon Echo from Amazon or any store, learn to build Alexa Skills (getting started) - Or try Google AIY project with Google Now integration - https://aiyprojects.withgoogle.com/voice/
  • 22. Build various kits using Google AIY or Raspberry PI Or run reinforcement learning projects using games! Check https://keon.io/deep-q-learning/ and https://github.com/DanielSlater/PythonDeepLearningS amples
  • 23. Now pick a project visual or audio for your home... and for your family....
  • 25. To connect with Tarek Hoteit Blog: https://tarek.computer (includes copy of the slides) Twitter: @hoteit LinkedIn: https://www.linkedin.com/in/hoteit/ Email: tarek.hoteit@tr.com