SlideShare a Scribd company logo
Playing
Trivia with
a Bot
Jose Nazario
<jose@monkey.org>
History
~2005? Created "#trivia" for my wife
Uses Blitzed Trivia bot, "brainiac", and a 110k
question/answer DB
Winter 2012 had an interest in NLP for potential
project
Decided to tackle a "toy problem"
"Let's play trivia!"
Goals
Learn NLP via NLTK
Build a bot that can play trivia "competitively"
Natural Language Processing (NLP)
Algorithms that can parse and process human
language
Major field of study related to AI, useful in
● Machine translation
● Grammar induction
● Information extraction
● Sentence understanding
Challenges & Advantages
Unlike Jeopardy
● Can answer question wrong and not get
penalized, try multiple times
● No puns or wordplay, straightforward
questions
Still ...
● Have to have a knowledge base - Google
● Have to be able to figure out the right
answer
Watson Components
Simple IRC library (not irclib)
NLTK - Natural Language Toolkit
Logic
Hand crafted
Base Assumptions
"Google knows all" - no need to make a local
knowledge database
The right answer will be commonly seen,
exploit that repetition
Watson 1.0
~100 LoC, "an evening of futzing around"
"Strategy"
1. Read the question
2. Throw it at Google, get a result page
3. Find all the proper names (via NLTK) from
page titles, rank by frequency
4. Guess those sequentially
Watson 1.0 Results
Very poor performance
Not surprising
Watson 2.0
Written a few days later
~300 LoC, "actually had to think this time"
Strategy
● Check a DB of cached questions and
answers (from observations), use similar
ones if possible
● Read question, throw at Google (or Bing)
● Figure out what kind of answer is expected,
extract matching text via NLTK and scoring
● If we get a hint, use it (as a regex)
Extracting Answers from Web Pages
Challenge
Web pages contain a lot of junk around the
answer
How do we find what the answer in the sea of
words?
Simple strategy - extract proper names!
(The trivia DB often has proper names for
answers)
Where is Watson these days?

00:08 < brainiac> Congratulations to
rogueclown who has won this round! What a
brain!
00:08 < brainiac> Final scores:
00:08 < brainiac>
rogueclown: 10
00:08 < brainiac>
watson: 9
00:08 < brainiac>
purge: 2

irc://coffee.ofdoom.org:6667/#trivia
Additional Ideas for Watson 2.0
New search engines
Bing, Ask, Wolfram Alpha
Prune knowledge base
Weed out useless “answers”
New/different named entity recognition engine
Experiment with scoring algorithms for guesses
Disappointments
Only a minor increase in my knowledge of NLP
I did not become an NLP maestro
No one else built a bot
Was hoping for a competition
Watson 3 .. sorta in the works
Ideas
Natural language interface to semantic web (e.g.
QuestIO, Quepy), SPARQL endpoints
Wolfram Alpha-like UI, research prototypes
available
Teach the bot what kind of answer to look for
Quantity, dates, names, etc
Probabalistic programming? Marry answers with
confidence
IBM Watson Links
http://www.kurzweilai.net/how-watson-works-aconversation-with-eric-brown-ibm-researchmanager
http://researcher.ibm.
com/researcher/view_project.php?id=2099
(Special issue of IBM JR&D on Watson)

More Related Content

Similar to Playing Trivia with a Bot

Chatbots and Deep Learning
Chatbots and Deep LearningChatbots and Deep Learning
Chatbots and Deep Learning
Andherson Maeda
 
Get connected with python
Get connected with pythonGet connected with python
Get connected with python
Jan Kroon
 
Natural language Analysis
Natural language AnalysisNatural language Analysis
Natural language Analysis
Rudradeb Mitra
 
IACT-TAP New School Thinking - Prototype Workshop
IACT-TAP New School Thinking - Prototype WorkshopIACT-TAP New School Thinking - Prototype Workshop
IACT-TAP New School Thinking - Prototype Workshop
Jonathan Ha
 
What does OOP stand for?
What does OOP stand for?What does OOP stand for?
What does OOP stand for?
Colin Riley
 
Artificial Intelligence (Unit - 2).pdf
Artificial Intelligence   (Unit  -  2).pdfArtificial Intelligence   (Unit  -  2).pdf
Artificial Intelligence (Unit - 2).pdf
SathyaNarayanan47813
 
CFP workshop
CFP workshopCFP workshop
CFP workshop
Amit Zur
 
Machine Learning: Expertise On-Demand
Machine Learning: Expertise On-DemandMachine Learning: Expertise On-Demand
Machine Learning: Expertise On-Demand
Christopher Mohritz
 
Grokking Techtalk #45: First Principles Thinking
Grokking Techtalk #45: First Principles ThinkingGrokking Techtalk #45: First Principles Thinking
Grokking Techtalk #45: First Principles Thinking
Grokking VN
 
How to build a perfect ML-based question answering model which doesn't work -...
How to build a perfect ML-based question answering model which doesn't work -...How to build a perfect ML-based question answering model which doesn't work -...
How to build a perfect ML-based question answering model which doesn't work -...
Dataconomy Media
 
Pycon India 2018 Natural Language Processing Workshop
Pycon India 2018   Natural Language Processing WorkshopPycon India 2018   Natural Language Processing Workshop
Pycon India 2018 Natural Language Processing Workshop
Lakshya Sivaramakrishnan
 
Beyond the Symbols: A 30-minute Overview of NLP
Beyond the Symbols: A 30-minute Overview of NLPBeyond the Symbols: A 30-minute Overview of NLP
Beyond the Symbols: A 30-minute Overview of NLP
MENGSAYLOEM1
 
Expertise on Demand - How machine learning puts the best-of-the-best at your ...
Expertise on Demand - How machine learning puts the best-of-the-best at your ...Expertise on Demand - How machine learning puts the best-of-the-best at your ...
Expertise on Demand - How machine learning puts the best-of-the-best at your ...
10x Nation
 
Mastering Prototyping: How to Quickly Playtest Your Game Ideas | Ron Rejwan
Mastering Prototyping: How to Quickly Playtest Your Game Ideas | Ron RejwanMastering Prototyping: How to Quickly Playtest Your Game Ideas | Ron Rejwan
Mastering Prototyping: How to Quickly Playtest Your Game Ideas | Ron Rejwan
Jessica Tams
 
top developer mistakes
top developer mistakes top developer mistakes
top developer mistakes
Hanokh Aloni
 
Deep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ersDeep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ers
Roelof Pieters
 
Think machine-learning-with-scikit-learn-chetan
Think machine-learning-with-scikit-learn-chetanThink machine-learning-with-scikit-learn-chetan
Think machine-learning-with-scikit-learn-chetan
Chetan Khatri
 
How do OpenAI GPT Models Work - Misconceptions and Tips for Developers
How do OpenAI GPT Models Work - Misconceptions and Tips for DevelopersHow do OpenAI GPT Models Work - Misconceptions and Tips for Developers
How do OpenAI GPT Models Work - Misconceptions and Tips for Developers
Ivo Andreev
 
Behind the Scenes of ChatGPT.pptx
Behind the Scenes of ChatGPT.pptxBehind the Scenes of ChatGPT.pptx
Behind the Scenes of ChatGPT.pptx
fsxflyer789Productio
 
Breaking Through The Challenges of Scalable Deep Learning for Video Analytics
Breaking Through The Challenges of Scalable Deep Learning for Video AnalyticsBreaking Through The Challenges of Scalable Deep Learning for Video Analytics
Breaking Through The Challenges of Scalable Deep Learning for Video Analytics
Jason Anderson
 

Similar to Playing Trivia with a Bot (20)

Chatbots and Deep Learning
Chatbots and Deep LearningChatbots and Deep Learning
Chatbots and Deep Learning
 
Get connected with python
Get connected with pythonGet connected with python
Get connected with python
 
Natural language Analysis
Natural language AnalysisNatural language Analysis
Natural language Analysis
 
IACT-TAP New School Thinking - Prototype Workshop
IACT-TAP New School Thinking - Prototype WorkshopIACT-TAP New School Thinking - Prototype Workshop
IACT-TAP New School Thinking - Prototype Workshop
 
What does OOP stand for?
What does OOP stand for?What does OOP stand for?
What does OOP stand for?
 
Artificial Intelligence (Unit - 2).pdf
Artificial Intelligence   (Unit  -  2).pdfArtificial Intelligence   (Unit  -  2).pdf
Artificial Intelligence (Unit - 2).pdf
 
CFP workshop
CFP workshopCFP workshop
CFP workshop
 
Machine Learning: Expertise On-Demand
Machine Learning: Expertise On-DemandMachine Learning: Expertise On-Demand
Machine Learning: Expertise On-Demand
 
Grokking Techtalk #45: First Principles Thinking
Grokking Techtalk #45: First Principles ThinkingGrokking Techtalk #45: First Principles Thinking
Grokking Techtalk #45: First Principles Thinking
 
How to build a perfect ML-based question answering model which doesn't work -...
How to build a perfect ML-based question answering model which doesn't work -...How to build a perfect ML-based question answering model which doesn't work -...
How to build a perfect ML-based question answering model which doesn't work -...
 
Pycon India 2018 Natural Language Processing Workshop
Pycon India 2018   Natural Language Processing WorkshopPycon India 2018   Natural Language Processing Workshop
Pycon India 2018 Natural Language Processing Workshop
 
Beyond the Symbols: A 30-minute Overview of NLP
Beyond the Symbols: A 30-minute Overview of NLPBeyond the Symbols: A 30-minute Overview of NLP
Beyond the Symbols: A 30-minute Overview of NLP
 
Expertise on Demand - How machine learning puts the best-of-the-best at your ...
Expertise on Demand - How machine learning puts the best-of-the-best at your ...Expertise on Demand - How machine learning puts the best-of-the-best at your ...
Expertise on Demand - How machine learning puts the best-of-the-best at your ...
 
Mastering Prototyping: How to Quickly Playtest Your Game Ideas | Ron Rejwan
Mastering Prototyping: How to Quickly Playtest Your Game Ideas | Ron RejwanMastering Prototyping: How to Quickly Playtest Your Game Ideas | Ron Rejwan
Mastering Prototyping: How to Quickly Playtest Your Game Ideas | Ron Rejwan
 
top developer mistakes
top developer mistakes top developer mistakes
top developer mistakes
 
Deep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ersDeep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ers
 
Think machine-learning-with-scikit-learn-chetan
Think machine-learning-with-scikit-learn-chetanThink machine-learning-with-scikit-learn-chetan
Think machine-learning-with-scikit-learn-chetan
 
How do OpenAI GPT Models Work - Misconceptions and Tips for Developers
How do OpenAI GPT Models Work - Misconceptions and Tips for DevelopersHow do OpenAI GPT Models Work - Misconceptions and Tips for Developers
How do OpenAI GPT Models Work - Misconceptions and Tips for Developers
 
Behind the Scenes of ChatGPT.pptx
Behind the Scenes of ChatGPT.pptxBehind the Scenes of ChatGPT.pptx
Behind the Scenes of ChatGPT.pptx
 
Breaking Through The Challenges of Scalable Deep Learning for Video Analytics
Breaking Through The Challenges of Scalable Deep Learning for Video AnalyticsBreaking Through The Challenges of Scalable Deep Learning for Video Analytics
Breaking Through The Challenges of Scalable Deep Learning for Video Analytics
 

Recently uploaded

How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 

Recently uploaded (20)

How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 

Playing Trivia with a Bot

  • 1. Playing Trivia with a Bot Jose Nazario <jose@monkey.org>
  • 2. History ~2005? Created "#trivia" for my wife Uses Blitzed Trivia bot, "brainiac", and a 110k question/answer DB Winter 2012 had an interest in NLP for potential project Decided to tackle a "toy problem" "Let's play trivia!"
  • 3. Goals Learn NLP via NLTK Build a bot that can play trivia "competitively"
  • 4. Natural Language Processing (NLP) Algorithms that can parse and process human language Major field of study related to AI, useful in ● Machine translation ● Grammar induction ● Information extraction ● Sentence understanding
  • 5. Challenges & Advantages Unlike Jeopardy ● Can answer question wrong and not get penalized, try multiple times ● No puns or wordplay, straightforward questions Still ... ● Have to have a knowledge base - Google ● Have to be able to figure out the right answer
  • 6. Watson Components Simple IRC library (not irclib) NLTK - Natural Language Toolkit Logic Hand crafted
  • 7. Base Assumptions "Google knows all" - no need to make a local knowledge database The right answer will be commonly seen, exploit that repetition
  • 8. Watson 1.0 ~100 LoC, "an evening of futzing around" "Strategy" 1. Read the question 2. Throw it at Google, get a result page 3. Find all the proper names (via NLTK) from page titles, rank by frequency 4. Guess those sequentially
  • 9. Watson 1.0 Results Very poor performance Not surprising
  • 10. Watson 2.0 Written a few days later ~300 LoC, "actually had to think this time" Strategy ● Check a DB of cached questions and answers (from observations), use similar ones if possible ● Read question, throw at Google (or Bing) ● Figure out what kind of answer is expected, extract matching text via NLTK and scoring ● If we get a hint, use it (as a regex)
  • 11. Extracting Answers from Web Pages Challenge Web pages contain a lot of junk around the answer How do we find what the answer in the sea of words? Simple strategy - extract proper names! (The trivia DB often has proper names for answers)
  • 12. Where is Watson these days? 00:08 < brainiac> Congratulations to rogueclown who has won this round! What a brain! 00:08 < brainiac> Final scores: 00:08 < brainiac> rogueclown: 10 00:08 < brainiac> watson: 9 00:08 < brainiac> purge: 2 irc://coffee.ofdoom.org:6667/#trivia
  • 13. Additional Ideas for Watson 2.0 New search engines Bing, Ask, Wolfram Alpha Prune knowledge base Weed out useless “answers” New/different named entity recognition engine Experiment with scoring algorithms for guesses
  • 14. Disappointments Only a minor increase in my knowledge of NLP I did not become an NLP maestro No one else built a bot Was hoping for a competition
  • 15. Watson 3 .. sorta in the works Ideas Natural language interface to semantic web (e.g. QuestIO, Quepy), SPARQL endpoints Wolfram Alpha-like UI, research prototypes available Teach the bot what kind of answer to look for Quantity, dates, names, etc Probabalistic programming? Marry answers with confidence