Artificial Intelligence for NET Speech, Language, and Search (AI trong nền tảng .NET) - Nishith Pathak

UN
Uni24h
0 lượt tải
278
0

Nội dung tài liệu

Trang 1

Artificial Intelligence for .NET: Speech, Language, and Search Building Smart Applications with Microsoft Cognitive Services APIs — Nishith Pathak

Trang 2

Artificial Intelligence for .NET: Speech, Language, and Search Building Smart Applications with Microsoft Cognitive Services APIs Nishith Pathak With Contributing Author as Anurag Bhandari

Trang 3

Artificial Intelligence for .NET: Speech, Language, and Search Nishith Pathak Kotdwara, Dist. Pauri Garhwal, India ISBN-13 (pbk): 978-1-4842-2948-4 ISBN-13 (electronic): 978-1-4842-2949-1 DOI 10.1007/978-1-4842-2949-1 Library of Congress Control Number: 2017951713 Copyright © 2017 by Nishith Pathak This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made. The publisher makes no warranty, express or implied, with respect to the material contained herein. Cover image designed by Freepik Managing Director: Welmoed Spahr Editorial Director: Todd Green Acquisitions Editor: Gwenan Spearing Development Editor: Laura Berendson Technical Reviewer: Fabio Claudio Ferracchiati Coordinating Editor: Nancy Chen Copy Editor: Mary Behr Artist: SPi Global Distributed to the book trade worldwide by Springer Science+Business Media New York, 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail orders-ny@springer-sbm.com, or visit www.springeronline.com. Apress Media, LLC is a California LLC and the sole member (owner) is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation. For information on translations, please e-mail rights@apress.com, or visit www.apress.com/ rights-permissions. Apress titles may be purchased in bulk for academic, corporate, or promotional use. eBook versions and licenses are also available for most titles. For more information, reference our Print and eBook Bulk Sales web page at www.apress.com/bulk-sales. Any source code or other supplementary material referenced by the author in this book is available to readers on GitHub via the book’s product page, located at www.apress.com/9781484229484. For more detailed information, please visit www.apress.com/source-code. Printed on acid-free paper

Trang 4

To the most important person in my life, my mother, late Bina Pathak, for her guidance, sacrifices, prayers, and blessings, which made me What I am today. I miss her each day. To my father, Pankaj Pathak, for teaching me to do what I believe in. You are and will always be my role model and my hero for my entire life. To my Sadh-Gurudev, who has been an eternal guiding force and entirely changed my life. To my grandfather, the late Mahesh Chandra Pathak, for his blessings and moral values. To my wife, Surabhi, for bearing with me, sacrificing her splendid career for our family, and always staying by my side through all the ups and downs. Getting married to you is the most beautiful thing in my life. You have given me the most precious diamond of my life, Shikhar, whom I love more than anyone else. I know this book has taken a lot of me and I haven’t been able to spend enough time with you, Papa and Shikhar for the past year since I’ve been working tirelessly to give this pleasant surprise. Surabhi and Shikhar, this book would not have been possible without all your sacrifices. To my lovely sister, Tanwi, and my niece, Aadhya—your smiling faces give me a lot of strength and inspiration to do better each day. To my Guruji, JP Kukreti, SS Tyagi, and Rajesh Tripathi, who have been there for me countless times and always provide me with comfort, understanding, spiritual beliefs, and lots of motivation. Lastly, I thank God for blessing me with such wonderful people in my life.

Trang 5

Contents at a Glance About the Author �����������������������������������������������������������������������������������������������������xv About the Contributing Author�������������������������������������������������������������������������������xvii About the Technical Reviewer ��������������������������������������������������������������������������������xix Acknowledgments��������������������������������������������������������������������������������������������������xxi Introduction����������������������������������������������������������������������������������������������������������xxiii ■Chapter 1: Getting Started with AI Basics������������������������������������������������������������� 1 ■Chapter 2: Creating an AI-Based Application in Visual Studio���������������������������� 23 ■Chapter 3: Building a Conversational User Interface with Microsoft Technologies���������������������������������������������������������������������������������������� 45 ■Chapter 4: Using Natural Language Understanding��������������������������������������������� 71 ■Chapter 5: Exploring a Cognitive Language Model���������������������������������������������� 93 ■Chapter 6: Consuming and Applying LUIS��������������������������������������������������������� 131 ■Chapter 7: Interacting with the Speech API ������������������������������������������������������ 161 ■Chapter 8: Applying Search Offerings ��������������������������������������������������������������� 193 ■Chapter 9: Working with Recommendations����������������������������������������������������� 221 ■Chapter 10: The Future of AI������������������������������������������������������������������������������ 247 Index��������������������������������������������������������������������������������������������������������������������� 261 v

Trang 6

Contents About the Author �����������������������������������������������������������������������������������������������������xv About the Contributing Author�������������������������������������������������������������������������������xvii About the Technical Reviewer ��������������������������������������������������������������������������������xix Acknowledgments��������������������������������������������������������������������������������������������������xxi Introduction����������������������������������������������������������������������������������������������������������xxiii ■Chapter 1: Getting Started with AI Basics������������������������������������������������������������� 1 Truth vs. Fiction................................................................................................................2 History and Evolution .......................................................................................................3 The Current State of Affairs....................................................................................................................4 Commoditization of AI.............................................................................................................................4 Microsoft and AI ............................................................................................................... 5 Basic Concepts.................................................................................................................6 Machine Learning...................................................................................................................................9 Language..............................................................................................................................................12 Speech..................................................................................................................................................13 Computer Vision....................................................................................................................................14 Microsoft’s Cognitive Services....................................................................................... 17 Vision....................................................................................................................................................18 Speech..................................................................................................................................................18 Language..............................................................................................................................................19 Knowledge............................................................................................................................................19 Search ..................................................................................................................................................20 Recap............................................................................................................................. 21 vii

Trang 7

■ Contents ■Chapter 2: Creating an AI-Based Application in Visual Studio���������������������������� 23 Prerequisites for Using Cognitive Services .................................................................... 24 Setting Up the Development Environment ..................................................................... 24 Getting an Azure Subscription Key for Cognitive Services............................................. 24 Step 1: Set Up an Azure Account..........................................................................................................25 Step 2: Create a New Cognitive Services Account................................................................................27 Step 3: Get the Subscription Key(s)......................................................................................................29 Testing the API................................................................................................................ 30 What You Want To Do............................................................................................................................31 How To Do It..........................................................................................................................................31 Creating Your First AI-based Application........................................................................ 33 The Code...............................................................................................................................................34 The Walkthrough...................................................................................................................................36 The Result.............................................................................................................................................38 Making Your Application More Interesting...................................................................... 39 Extracting Text Out of Images...............................................................................................................39 The Code...............................................................................................................................................39 The Walkthrough...................................................................................................................................41 The Result.............................................................................................................................................42 Recap ............................................................................................................................. 43 ■Chapter 3: Building a Conversational User Interface with Microsoft Technologies���������������������������������������������������������������������������������������� 45 What Is a Conversational User Interface? ...................................................................... 47 A Brief History................................................................................................................ 47 In the Very Beginning: the Command-Line Interface (CLI) ...................................................................47 And Then Came the Graphical User Interface.......................................................................................49 And UI Evolved Yet Again: Conversational User Interface .....................................................................51 AI’s Role in CUI......................................................................................................................................52 Pitfalls of CUI........................................................................................................................................53 A Hybrid UI (CUI+GUI) May Be the Future.............................................................................................55 viii

Trang 8

■ Contents Design Principles............................................................................................................ 57 Microsoft Bot Framework............................................................................................... 58 Creating a CUI Application Using Bot Framework ..........................................................58 Step 0: Prep Your Development Environment.......................................................................................59 Step 1: Create a New Bot Application Project.......................................................................................60 Step 2: First and Default Messages......................................................................................................60 Step 3: Running, Testing, and Debugging Your Bot...............................................................................62 Step 3: Appointment Scheduling ..........................................................................................................65 Step 4: Handling System Messages .....................................................................................................68 Next Steps............................................................................................................................................68 Recap............................................................................................................................. 69 ■Chapter 4: Using Natural Language Understanding��������������������������������������������� 71 What Is NLU?.................................................................................................................. 72 History of Natural Language Understanding .................................................................. 74 Why Natural Language Is Difficult for Machines to Understand..................................... 77 Complexities in Natural Language........................................................................................................77 Statistical Models as a Solution Are Insufficient ..................................................................................79 A Promising Future...............................................................................................................................80 Language Understanding Intelligent Service (LUIS)....................................................... 80 Architecture of a LUIS-Based Software Application .............................................................................81 Behind the Scenes................................................................................................................................84 Extensive Training Is the Key................................................................................................................85 Getting an Azure Subscription for LUIS .......................................................................... 86 Getting Subscription Keys on Azure Portal...........................................................................................87 Applying Subscription Keys in LUIS......................................................................................................88 Demo: Definition App...................................................................................................... 89 Notes ....................................................................................................................................................91 Recap............................................................................................................................. 92 ix

Trang 9

■ Contents ■Chapter 5: Exploring a Cognitive Language Model���������������������������������������������� 93 The Bing Spell Check API ...............................................................................................93 What Is It?.............................................................................................................................................95 How To Use It........................................................................................................................................96 Integration with LUIS............................................................................................................................99 The Text Analytics API................................................................................................... 101 Language Detection............................................................................................................................102 Key Phrase Extraction.........................................................................................................................105 Sentiment Analysis.............................................................................................................................108 Topic Detection...................................................................................................................................110 Usage Ideas........................................................................................................................................113 The Web Language Model (WebLM) API....................................................................... 114 Word Breaking....................................................................................................................................116 Joint Probability..................................................................................................................................117 Conditional Probability........................................................................................................................119 Next Word Prediction..........................................................................................................................120 The Linguistic Analysis API........................................................................................... 121 Sentence Separation and Tokenization...............................................................................................122 Part-of-Speech Tagging......................................................................................................................125 Constituency Parsing..........................................................................................................................127 Recap........................................................................................................................... 130 ■Chapter 6: Consuming and Applying LUIS��������������������������������������������������������� 131 Planning Your App ........................................................................................................ 131 What Should the Bot Be Able to Do?...................................................................................................132 What Information Does the Bot Need from the User?.........................................................................132 What Should Be Done in LUIS?...........................................................................................................132 What Should Be Done in the Bot Framework?....................................................................................134 Creating a LUIS App...................................................................................................... 134 Adding Intents.............................................................................................................. 135 Adding/Labeling Utterances......................................................................................... 135 x

Trang 10

■ Contents Publishing Your App...................................................................................................... 137 Adding Entities.............................................................................................................139 Simple Entities....................................................................................................................................141 Composite Entities..............................................................................................................................142 Hierachical Entities.............................................................................................................................145 Prebuilt Entities ..................................................................................................................................147 Adding a Phrase List .................................................................................................... 149 Suggested Next Steps..................................................................................................150 Active Learning Through Suggested Utterances ................................................................................150 Using LUIS Programmatic API for Automation....................................................................................151 Integrating LUIS with the Bot Framework.................................................................... 151 Creating a Project in Visual Studio......................................................................................................151 Handling an Entity-less Intent ............................................................................................................152 Setting Up Your Bot to Use HealthCheckupDialog...............................................................................153 Testing the Bot in an Emulator ...........................................................................................................153 Handling an Entity-Full Intent.............................................................................................................154 Handling an Intent with Composite Entities........................................................................................156 Handling the None Intent....................................................................................................................158 Adding Your Bot to Skype............................................................................................. 158 Publishing Your Bot.............................................................................................................................158 Registering Your Bot...........................................................................................................................159 Recap........................................................................................................................... 160 ■Chapter 7: Interacting with the Speech API ������������������������������������������������������ 161 Ways to Interact with Speech....................................................................................... 162 The Cognitive Search API....................................................................................................................163 Speech Recognition............................................................................................................................164 Getting Started.............................................................................................................164 Getting the JSON Web Token First................................................................................164 The Consume Speech API.............................................................................................166 xi

Trang 11

■ Contents Speech Synthesis......................................................................................................... 167 Speech Recognition Internals.............................................................................................................170 Custom Speech Service ............................................................................................... 171 Custom Acoustic Model......................................................................................................................171 Custom Language Model....................................................................................................................180 Pronunciation Data.............................................................................................................................182 Custom Speech-to-Text Endpoint.......................................................................................................183 Speaker Recognition.................................................................................................... 185 Speaker Verification vs. Speaker Identification..................................................................................186 Enrollment-Verification.......................................................................................................................186 Speaker Verification............................................................................................................................189 Enrollment–Identification ...................................................................................................................190 Speaker Recognition-Identification....................................................................................................191 Operation Status.................................................................................................................................191 Summary...................................................................................................................... 192 ■Chapter 8: Applying Search Offerings ��������������������������������������������������������������� 193 Search Is Everywhere................................................................................................... 193 Pervasive, Predictive, Proactive (The Three Ps of Search)............................................ 195 History of Bing.............................................................................................................. 196 What’s So Unique About Bing?..................................................................................... 197 Search APIs .................................................................................................................. 197 Bing Autosuggest API..........................................................................................................................198 How to Consume the Bing Autosuggest API .......................................................................................199 The Bing Image Search API.......................................................................................... 202 How to Consume the Bing Image Search API.....................................................................................203 Bing News Search API.................................................................................................. 208 Bing Video Search API.................................................................................................. 211 How to Consume the Bing Video Search API................................................................212 xii

Trang 12

■ Contents Bing Web Search API.................................................................................................... 215 How to Consume the Bing Web Search API........................................................................................216 Summary...................................................................................................................... 219 ■Chapter 9: Working with Recommendations����������������������������������������������������� 221 Understanding the Basics ............................................................................................ 222 Frequent Brought Together (FBT) Recommendations................................................... 223 Item-to-Item Recommendations.................................................................................. 224 Recommendations Based on Past History ................................................................... 224 How Do These Recommendations Work?..................................................................... 225 Recommendation Models and Types............................................................................ 229 Recommendation Build................................................................................................ 230 Frequent Brought Together (FBT) Build........................................................................ 234 Ranking Recommendation........................................................................................... 236 SAR (Smart Adaptive Recommendations) Build........................................................... 238 Setting Rules in Build................................................................................................... 240 Offline Evaluation......................................................................................................... 241 Recommendation UI..................................................................................................... 242 Summary...................................................................................................................... 246 ■Chapter 10: The Future of AI������������������������������������������������������������������������������ 247 Why Is AI So Popular?................................................................................................... 247 Improved Computing Power......................................................................................... 248 Inventions in AI Algorithms........................................................................................... 249 Data Is the New Currency............................................................................................. 249 Emergence of Cloud Computing................................................................................... 251 Services vs Solutions?................................................................................................. 251 Cognitive Categories .................................................................................................... 252 Challenges and the Future of NLU................................................................................ 252 Challenges and Future of Speech ................................................................................ 253 xiii

Trang 13

■ Contents Challenges and the Future of Search........................................................................... 253 Challenges and the Future of Recommendations ........................................................254 AI First.......................................................................................................................... 255 Intelligent Edge ............................................................................................................ 255 Tasks, not Jobs, Will Be Eliminated.............................................................................. 256 So Where Do We Go From Here?.................................................................................. 258 Index��������������������������������������������������������������������������������������������������������������������� 261 xiv

Trang 14

About the Author Nishith Pathak is a Microsoft Most Valuable Professional (MVP), architect, speaker, AI thinker, innovator, and strategist. He is a prolific writer and contributing author and has written many books, articles, reviews, and columns for multiple electronic and print publications. Having 20+ years of experience in IT, Nishith’s expertise lies in innovation, research, architecting, designing, and developing applications for Fortune 100 companies using next-generation tools and technologies. As an early adopter of Microsoft technology, he has kept pace in the certification challenges and succeeded in getting several of his certifications in the beta stage. Nishith is a gold member and sits on the advisory board of various national and international computer science societies and organizations. He has been awarded the elite Microsoft Most Valuable Professional (MVP) a couple of times for his exemplary work and his expertise in Microsoft technologies. He is a member of various advisory groups for Microsoft. Nishith is currently working as Vice President and R&D lead for Accenture Technology Labs. He is focused on key research areas, specifically AI, ML, cognitive, bot, blockchain cloud computing, and helping companies architect solutions based on these technologies. Nishith was born, raised, and educated in a town called Kotdwara in Uttarakhand, India. Beyond that, as time permits, he spends time with family and friends, and amuses them with his interests in palmistry and astrology. You can contact him at nispathak@gmail.com. xv

Trang 15

About the Contributing Author Anurag Bhandari is a researcher, programmer, and open source evangelist. His favorite research areas include NLP, IoT, and machine learning. He specializes in developing web and mobile apps and solutions. He has extensive experience working with Fortune 500 companies, startups, and NGOs in the capacity of research and software delivery. Anurag hails from Jalandhar, Punjab, where he also completed a degree in Computer Science from the National Institute of Technology. Since his undergraduate days, he has been affiliated with or led several open source projects, such as Granular Linux and OpenMandriva. He is a proud polyglot of programming (C#, Java, JavaScript, PHP, Python) and natural (English, Hindi, Punjabi, French) languages. Being a technology enthusiast, Anurag keeps meddling with trending technologies and trying out new frameworks and platforms. In his spare time, he reads books, follows sports, drools over gadgets, watches TV shows, plays games, and collects stamps. You can find him online at http://anuragbhandari.com or drop him a note at anurag.bhd@gmail.com. xvii

Trang 16

About the Technical Reviewer Fabio Claudio Ferracchiati is a senior consultant and a senior analyst/developer using Microsoft technologies. He works at BluArancio S.p.A (www.bluarancio.com) as Senior Analyst/Developer and Microsoft Dyanmics CRM Specialist. He is a Microsoft Certified Solution Developer for .NET, a Microsoft Certified Application Developer for .NET, a Microsoft Certified Professional, and a prolific author and technical reviewer. Over the past ten years, he’s written articles for Italian and international magazines and co-authored more than ten books on a variety of computer topics. xix

Trang 17

Acknowledgments This book has been a team effort by some wonderful people. This book could not have been completed without my partner, Anurag Bhandari, who has done fantastic work in helping to complete chapters, write code, and do research. We would talk at odd hours, discussing technologies and shaping the book in the right direction. Anurag, you are the “one person” who helped me in supporting this book far beyond my expectation. Thanks to all of the people at Apress who put their sincere efforts into publishing this book. Gwenan deserves special thanks. I exchanged a lot of emails with Gwenan before really taking on this project. Thanks to Nancy and Laura for doing a fabulous job of project management and constantly pushing me to do my best. I would also like to thank Henry Li for his tech review. I would not hesitate to say that you are all extremely talented people. Each of you helped this book immensely, and I’m looking forward to working with everyone on the next one. Last but not least, thanks to my family, especially my wife, Surabhi, and my father, Pankaj Pathak, for being so kind and supportive, and making my dreams come true. Anything I do in my life would not be possible without you. Now on to book number six. xxi

Trang 18

Introduction This book will introduce you to the world of artificial intelligence. Normally, developers think of AI implementation as a tough task involving writing complex algorithms and hundreds of lines of code. This book aims to remove the anxiety by creating a cognitive application with a few lines of code. There is a wide range of Cognitive Services APIs available. This book focuses on some of the most useful and powerful ways that your application can make intelligent use of Microsoft Cognitive API. Microsoft has given developers a better experience and enabled them through Microsoft Cognitive APIs. The book covers genuine insights into AI concepts. Speech, language, and search are such deep-dive domains that each of these concepts would require a separate book. This book attempts to explain each of the concepts by first explaining why and what before delving into the how of any API. The book also provides extensive examples to make it easier to put the new concepts into practice. Artificial Intelligence for .NET: Speech, Language, and Search will show you how to start building amazing capabilities into your applications today. This book starts by introducing you to artificial intelligence via its history, terminology, and techniques. The book then introduces you to all of the Microsoft Cognitive APIs and tools before building your first smart Cognitive application step by step using Visual Studio. The book then introduces concepts around the conversational user interface (CUI), and then you create your first bot using the Microsoft Bot Framework. The book also provides great context for understanding and best practices about planning your application using the Bot Framework. The book also provides a deep understanding about natural language understanding (NLU) and natural language processing (NLP), which let computer programs interpret humans the way they do each other. The book goes into detail about the Microsoft Language Understanding Intelligent Service (LUIS) and its concepts, as well as on how to design, consume, and apply LUIS before creating a LUIS project from scratch. The book also provides detailed steps on testing, training, and publishing a LUIS application before deploying and using it in a Bot Framework. Speech is the most natural form of interaction. This book provides a deep walk-through of the Speech API and how to use the API for speech recognition and speech synthesis. The book then provides a deep understanding of how to use the custom speech service previously known as CRIS and a step-by-step plan for creating your first language model, an audio model, and deploying it, and using the custom speech service. The book also provides detail into understanding speaker recognition. The book then explains all Bing Search APIs in detail and how to leverage Bing search offerings in your applications. The book also goes in detail about the concepts behind and types of recommendations, and then uses each of them to fetch recommendations in a step-by-step approach. The book ends by giving you a glimpse into the future of AI and what to expect soon. In other words, the book can be treated as a guide to help you drive your next steps. In this book, you will • Explore the underpinnings of artificial intelligence through practical examples and scenarios • Get started building an AI-based application in Visual Studio xxiii

Trang 19

■ IntroduCtIon • Build a text-based conversational interface for direct user interaction • Use the Cognitive Services Speech API to recognize and interpret speech • Look at different models of language, including natural language processing, and how to apply them in your Visual Studio application • Reuse Bing search capabilities to better understand a user’s intention • Work with recommendation engines and integrate them into your apps Who This Book Is For Artificial intelligence is the buzzword of the current industry. People are talking about AI. With this disruption going on everywhere, developers can get confused about where and how to get started with AI. The release of the Microsoft Cognitive APIs offers a wide range of new functionality for developers. This book is targeted towards novice and intermediate readers who are curious about artificial intelligence. Developers and architects with previous experience or no experience with .NET who want to apply the new Cognitive APIs to their applications will benefit greatly from the discussion and code samples in this book. This book also serves as a great resource for application developers and architects new to AI and/or the core concepts of using some of the Cognitive APIs. Prerequisites To get the most out of this book, you just need the .NET Framework and an Internet connection. I recommend using Microsoft Visual Studio 2017 as the development environment to experiment with the code samples, which you can find in the Source Code section of the Apress website (www.apress.com). Obtaining Updates for This Book As you read through this text, you may find the occasional grammatical or code error (although I sure hope not). If this is the case, my sincere apologies. Being human, I am sure that a glitch or two may be present, regardless of my best efforts. You can obtain the current errata list from the Apress website (located once again on the home page for this book), as well as information on how to notify me of any errors you might find. Contacting the Author If you have any questions regarding this book’s source code, are in need of clarification for a given example, simply wish to offer your thoughts regarding AI, or want to contact me for other needs, feel free to drop me a line at nispathak@gmail.com. I will do my best to get back to you in a timely fashion. Thanks for buying this text. I hope you enjoy reading it and putting your newfound knowledge to good use. xxiv

Trang 20

CHAPTER 1 Getting Started with AI Basics Imagine creating a software so smart that it will not only understand human languages but also slang and subtle variations of these languages, such that your software will know that “Hello, computer! How are you doing?” and “wassup dude?” mean the same thing. While you’re at it, why not add into your software the ability to listen to a human speak and respond appropriately? User: “Computer, what’s my schedule like today?” Software: “You have quite a packed day today, with back-to-back meetings from 10 am to 1:30 pm and again from 3 pm to 7 pm.” And as if that would not make your software smart enough, why not also add the ability to have human-like conversations? User: “Computer, did I miss the match? What’s the score?” Software: “It’s 31 minutes into the Barcelona vs. Real Madrid football match. Your favorite team, Barcelona, has not scored yet. The score is 0-1.” User: “Holy cow! Who scored from Real?” Software: “Cristiano Ronaldo scored the first goal in the 10th minute.” User: “That’s not looking good. What’s his goals tally this season?” Software: “So far, Ronaldo has scored 42 goals for his club and 13 for his country.” User: “That’s impressive. I hope poor Messi catches up soon.” User: “Computer, thanks for the update.” Software: “You are welcome.” Software: “Don’t forget to check back for the score after half an hour. Based on ball possession and shots-on-target stats, there’s a 73% chance of Barcelona scoring in the next 20 minutes.” Wouldn’t these capabilities make your software smart and intelligent? As a .NET developer, how can you make your software as smart as Microsoft’s Cortana, Apple’s Siri, or Google’s Assistant? You will see in a bit. After completing this chapter, you will have learned the following about AI: • Truth vs. fiction • History and evolution • Microsoft and AI © Nishith Pathak 2017 1 N. Pathak, Artificial Intelligence for .NET: Speech, Language, and Search, DOI 10.1007/978-1-4842-2949-1_1

Hiển thị 20 trang đầu. Tải tài liệu để xem đầy đủ.

Bình luận (0)

Đăng nhập để tham gia bình luận

Chưa có bình luận nào. Hãy là người đầu tiên!