Building artificial intelligence into your node.js apps
The era of machine learning and artificial intelligence is here, and unlike a few years ago you don’t need to be a PhD student at CalTech to do something useful with it. In this talk we’ll walkthrough examples of using advanced computer vision, speech recognition, and intelligent language understanding AIs all from Node.js. We’ll build a bot together that uses and understands emotion and the intents of human language, and we’ll post it online so we can play with it. You’ll leave with some code you can use as a starting point for your next project.
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
NodeMN: Building AI into your Node.js apps
1.
2. Observable and unobservable Variables
!Data usually comes from a process that is not completely known.
!We model this as a random process and analyze it using probability theory.
!Example:
!Tossing a coin is a random process, as we cannot predict at any toss on which side the coin
will land. Heads or tails?
!We can only talk about the probability of the outcome (observable variable) for the next toss.
!(In case we would have all the information (e.g. speed of throw, angle, wind, etc.) we might
be able to precisely predict outcome. These variables are unobservable variables.)
42
Naive Bayes
!Suppose I want to know if a news article is about sports,
politics, entertainment.
!Classes: sports, politics, entertainment
!Probability that a document d belongs to class c
!Probability of class c given document d
meeting hello
P(c|d) =
P(c)P(d|c)
P(d)
ation for text categorization
e (can do surprisingly well)
..
spam
51
Source: Kenji Sagae Guest Lecture in CSCI 599 (Fall 2014)
Spam
meeting hello bank click
Naïve Bayes:
3. Building AI into your Node.js apps
DAVID WASHINGTON
DIRECTOR
MICROSOFT
DWASHIN@MICROSOFT.COM
4.
5. `
INTEL MICROSOFT CRM WINDOWS DEVELOPER
EXPERIENCE
PENTIUM4
INDUSTRIAL
DEVELOPER
FAB12
FAB22
ARIZONA
V1
V1.2
V3
QUOTES
ORDERS
INVOICES
LONGHORN
SOFTWARE
DEVELOPER
ENGINEER
SHELL TEAM
DESKTOP
OPEN SAVE
EXPLORER
BRIEFCASE
SEATTLE
WINDOWS 7
PROGRAM
MANAGER
SHELL TEAM
SEARCH
FILE API
OPEN
SAVE
ADOBE
APPLE
FILE COPY
PDC2008
WINDOWS 8
PROGRAM
MANAGER
LEAD
SHELL TEAM
USER EXPREINCE
WINDOWS EXPLORER
HIGH DPI
TOUCH KEYBOARD
SURFACE
TOUCH COVER
LANGUAGE MODEL
TECHNICAL
EVANGELISM
DIRECTOR
CENTRAL US
DWCARES.COM
GAMEDEV
MHACKS
TECHCRUNCH
DISRUPT
HACKTX
HACKILLINOIS
IOT
JAVASCRIPT
MINNEAPOLIS
SOFTWARE
DEVELOPER
ENGINEER
INTERN
FULL-TIME
SEATTLE
UNIVERSITY OF WISCONSIN
COMPUTER ENGINEERING
GRADUATE 2004
6. What is Artificial Intelligence?
“The exciting new effort to make computers thinks … machine with minds, in the full
and literal sense” (Haugeland 1985)
“The study of mental faculties through the use of computational models” (Charniak et
al. 1985)
“The art of creating machines that perform functions that require intelligence when
performed by people” (Kurzweil, 1990)
“A field of study that seeks to explain and emulate intelligent behavior in terms of
computational processes” (Schalkol, 1990)
“The scientific understanding of the mechanisms underlying thought and intelligent
behavior and their embodiment in machines.” (AAAI)
7.
8. Intelligence APIs
Vision Computer vision API, Emotion API, Face API, Video API
Speech Custom recognition intelligence service (CRIS), Speaker
recognition API, Speech to Text API, Text to Speech API
Language Language understanding intelligence service (LUIS), Linguistic analytics API,
Bing spell check API, Text analytics API, Web language model API
Knowledge Academic knowledge API, Entity linking intelligence service, Knowledge
exploration service, Recommendations API
Search Bing web search API, Bing image search API, Bing news search API, Bing video
search API, Bing autosuggest API
Supervised Machine Learning
Given a labelled data set, we already know what our correct output should look like
We can use this to find relationships and predict results of new data
Supervised Machine Learning
Given a labelled data set, we already know what our correct output should look like
We can use this to find relationships and predict results of new data
Engineering for a Billion People
Building a high-quality operating system is hard, and it’s even harder when you have a sixth of the planet using your product in thousands of different ways. In this session, David Washington, Director of Developer Experience at Microsoft, will walk though his experience as an engineer designing and building Windows 7 and Windows 8. He’ll show you what goes on behind the scenes on a large-scale engineering project and you’ll see unreleased prototypes and architecture explorations for how a feature comes about.
David Washington, a 2004 UW-Madison Computer Engineering graduate, spent nine years designing and engineering Windows. He’s led the teams that built file copy and the Windows Explorer, the end-to-end experience for how Windows 8 scales and adapts responsively across all screens sizes, and the touch keyboard and it’s adaptive language model. Currently he is the Director of Developer Evangelism, where his works to inspire and enable startups, students and independent app developers around the major cities in the Central United States.
Think like humans -> think rationally
Act like humans -> act rationally
Think like humans -> think rationally
Act like humans -> act rationally
Microsoft Cognitive Services
---
Many intelligent APIs are collected all in one place.
An in-browser interactive visual console lets you easily test or preview APIs before you sign up for access keys.
APIs have a free tier for users with a small number of monthly transactions.