1 / 20

Intro to Artificial Intelligence & Google Prediction API

Intro to Artificial Intelligence & Google Prediction API. Pawan Gupta. First definition of AI. "AI is the study of making computers do things, at which, at the moment, people are better"                 -- Elaine Rich  (author of Artificial Intelligence book)

kalani
Download Presentation

Intro to Artificial Intelligence & Google Prediction API

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Intro to Artificial Intelligence & Google Prediction API Pawan Gupta

  2. First definition of AI "AI is the study of making computers do things, at which, at the moment, people are better"                 -- Elaine Rich  (author of Artificial Intelligence book) There are still many domains where its better to rely on human to solve problems than computers.  For example : teaching programing course to novice

  3. Computers advantage Computers are better than  human beings in: • Numeric Computation • Information Storage • Repetitive Operation  • Example • Land aircraft safely • Ability to beat virtually any human being in the chess.

  4. Human advantages Human beings are better than computers in: • Common Sense/Judgement  • Crossing a road  • Driving in busy city like New York and Boston • Language, speech, understanding scene, emotions, and expression situation • Player emotions vs Video game

  5. Algorithm Vs Non-Algorithm Algorithm is a systemic method in which a sequence of steps/instructions are mentions, and each step/instruction can takes finite amount of time. Non-algorithm method, we may not have definite sequence of steps to follow. Example crossing road.

  6. "Measure three times before you cut once" - Proverbs • Computers takes instructions from human and then do the task. without thinking if instructions user gave is right or not.  • Garbage in and Garbage out • Human can take garbage as an input, but may think it twice before its provide output.

  7. Google Prediction API • Making prediction based on data provided • Machine learning as a Web Service • It is a RESTfull HTTP service • Only HTTPS protocol is supported • Development Warning: •  "Not a crystal ball" •   Not fully ready yet, a lot more work to be done.

  8. Process Steps to use Prediction API • Prediction API Account access • Build a data model • Upload training data to Google cloud • Train the system with the data • Send a query

  9. Commands • $ ./oauth-train.sh • $ ./oauth-check-training.sh • $ ./oauth-predict.sh

  10. Authentication Types • clientLogin • login credentials is validated only once per session • clientLogin is designed for desktop application • oAuth • Better user interface • oAuth designed for web applications • Secure user credential • Required Account access: Google storage for dev & Prediction API account

  11. Build a data Model • Data format: comma separated value format(CSV) • Two values –Answer and data column • Cannot mix numbers and categorical data • One data file per model • One example per line • Text is case-sensitive • Data can be numeric or unstructured text • Data cannot be more than 100M

  12. Numeric vs. Categorical model • Numeric • Return numeric value (Google example) • Temperature City Day_of_year Weather • 52, "Seattle“, 283, "cloudy" • 64, "Seattle“, 295, "sunny" • 60, "Seattle“, 287, "partly_cloudy" • query "Seattle,288,sunny", return 63 • Bad query “288, sunny, Seattle” • Categorical • Return string value • Description Subject line • "spam" , "Get her to love you" • "spam" , "Lose weight fast!" • query "You can lose weight now!" return “spam”

  13. Data Example • "english"   = "The patriots are the best team in the league"   • "Hindi"  = "आज बहुत अच्छा दिन है“ • "French", "Je ne vous parle pas, monsieur." • "Spanish", "Soneto" • "English", " * * * * * * *" (Bad data) • "Spanish", "YO, EL REY." • "French", "-- Ah! fit d'Artagnan." • " Latin", " Non bene pro toto libertas venditur auro."

  14. Upload data • Create a bucket • gsutil mb gs://classexample (follow Google guidelines) • Copy data to bucket • $ gsutil cp ./language_id gs://classexample/language_id

  15. Train system • To Train • $ ./oauth-train.sh classexample/language_id • To check • $ ./oauth-check-training.sh classexample/language_id • Return : • {"data":{"data":"classexample/language_id","modelinfo":"Training has not completed."}} • Try again • $ ./oauth-check-training.sh classexample/language_id • Return : • {"data":{"data":"classexample/language_id","modelinfo":"estimated accuracy: 0.95"}}

  16. Send Queries • Send queries • $ ./oauth-predict.sh classexample/language_id "Today is Monday. The New york City" • return {data: {"input" : { "mixture" : [ " Today is Monday. The New york City " ]}}}{"data":{"kind":"prediction#output", "outputLabel":"english",}} • outputLabel value shows best guess

  17. Languages • Prediction API libraries available in following programming languages: • .Net • BASH • JavaScript • PHP • R (Google Prediction Client Library for R) • Ruby

  18. Google Recommendation • Think carefully when uploading train data • More examples (in millions), predict better results • Query must match same number of arguments as features • “english” , “Today is good day” • Good query : “How is your car running” • Bad query : “ How is your car running”, “What day is today”

  19. Summary • When not following steps and using judgment to solve problem, then its a field of AI. • If series of steps can be follow to solve problem, its better to use Algorithm. Its faster and cheaper way. • Prediction API is just a proof of concept yet • REMEMBER: Data model learn from the file you upload, NOT from queries. • Other examples that are equaling to Prediction API • Email Rules or Filters • Amazon recommendation • Automation

  20. References • http://code.google.com/apis/predict/ • http://en.wikipedia.org/wiki/Artificial_intelligence

More Related