220 likes | 742 Views
Intro to Artificial Intelligence & Cloud Computing. 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)
E N D
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
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.
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
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.
"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.
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.
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
Commands • $ ./oauth-train.sh • $ ./oauth-check-training.sh • $ ./oauth-predict.sh
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
Build a data Model • Data format: comma separated value format(CSV) • Data can be numeric or unstructured text • Data cannot be more than 100M • ……talk more about from Dev paper
Upload data • Create a bucket • gsutil mb gs://classexample (follow Google guidelines) • Copy data to bucket • $ gsutil cp ./language_id gs://classexample/language_id
Data Example • "english" = "The patriots are the best team in the league" • "Hindi" = "आज बहुत अच्छा दिन है“ • "English", "Je ne vous parle pas, monsieur." • "Spanish", "Soneto" • "English", " * * * * * * *" (Bad data) • "Spanish", "YO, EL REY." • "French", "-- Ah! fit d'Artagnan." • "Spanish", " Non bene pro toto libertas venditur auro."
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"}}
Send Queries • Send queries • $ ./oauth-predict.sh classexample/language_id "Today is Monday. The New york City" • return {data: {"input" : { "mixture" : [ "mucho bueno" ]}}}{"data":{"kind":"prediction#output", "outputLabel":"english",}} • outputLabel value shows best guess
Google Recommendation • Think carefully when uploading train data
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 • Other examples that are equaling to Prediction API • Email Rules or Filters • Amazon recommendation
References • http://code.google.com/apis/predict/ • http://en.wikipedia.org/wiki/Artificial_intelligence