[MUSIC nagpe-play] David MALAN: Ito ang CS50. Ito ay ang katapusan ng linggo 10. And boy, kami ay may isang magandang klase para sa iyo ngayon. Kami ay kaya nasasabik na imbitahan ang dalawa sa ang aming mga kaibigan mula sa Yale hanggang sa amin sa araw na ito at upang tumingin sa intersection ng artificial intelligence, robotics, natural pagpoproseso ng wika, at higit pa. At sa katunayan, sa loob ng nakalipas na ilang linggo, na namin tiyak na ginugol ng isang pulutong ng mga oras, lalo na sa mga naunang psets, nagbibigay-diin sa pretty detalye mababang antas. At ito ay tunay madali na malimutan ng kagubatan para sa mga puno at Hung up sa mga loop at mga kondisyon at mga payo, tiyak, at ang gusto. Subalit ang katotohanan ay ka guys ngayon ay mayroon ng mga sangkap na kung saan maaari mong tunay malutas ang ilang mga kawili-wiling mga problema, bukod sa ang mga ito sa mga na ang ating mga kaibigan sa Yale magtrabaho sa nahihiya lamang ng Cambridge. Kaya payagan ako unang upang ipakilala ang ating ulo pagtuturo assistant mula sa Yale, Andy. [Palakpakan] ANDY: Una sa lahat, salamat na lang iyo para sa nagpapahintulot sa isang pares Yalies mag-pop sa pababa sa Cambridge ngayon. Pinahahalagahan namin talaga ito. Pangalawa, sa aming mga kaibigan bumalik home-- Jason, salamat para sa pananatiling at tumatakbo panayam. Sana ito ay mabuti ang lahat sa New Haven. Kaya oo, ako sobrang tuwang-tuwa upang ipakilala Scaz ngayon. Scaz nagpapatakbo ng robotics lab. Siya ay isang propesor ng, tulad ng, limang iba't-ibang departamento sa Yale. Sa kanyang lab, siya ay may maraming, maraming robots na siya kagustuhan na maglaro sa. Siya ay may, tulad ng, mga pinaka-cool na trabaho sa mundo. At siya ay nakakakuha sa uri ng gulo paligid na may na ang lahat ng araw mahaba at gumawa ng ilang trabaho, pati na rin. At kaya namin ang aktwal na nagdala ng isa ng mga ito down sa amin ngayon. Kaya nang walang karagdagang linggal, Scaz ay pagpunta sa sige ipakilala sa amin at sa kanyang kaibigan robot. [Palakpakan] BRIAN SCASSELLATI: Salamat, David. Salamat, Andy. Ito ay kaya kahanga-hanga na dito sa lahat ngayon. Gusto kong unang maging napakalinaw na CS50 staff dito sa Cambridge ay hindi kapani-paniwalang mapagbigay sa pakikitungo sa atin. Kami ay kaya nagpapasalamat para sa lahat ng bagay ang kanilang nagawa sa suporta sa amin. At kaya nais naming ma upang ibalik ang kabaitan. Kaya ngayon, makuha namin na ipahayag na kami ay pagpunta sa magkaroon ng isang bago, isa-sa-isang-uri CS50 kaganapan nangyayari sa New Haven susunod na linggo. At ito ay ang CS50 Research Expo. Kaya kami ay pagpunta sa ay nag-aanyaya everyone-- CS50 mag-aaral, staff mula sa parehong Harvard at Yale-- sa bumaba at bisitahin ang sa amin sa Biyernes. Magkakaroon kami ng isang malawak na iba't ibang mga higit 30 iba't ibang mga tao ang pagtatanghal at exhibiting-- upperclassmen pagpapakita off ang ilan sa kanilang mga produkto ng pananaliksik. Magkakaroon kami ng ilang mga startup, kahit na, naghahanap para sa isang maliit na piraso ng bagong tech talent, mga startup mula sa parehong Harvard at Yale. At kami ay may ilang mga mag-aaral ng mga grupo naghahanap ng ilang mga bagong kasapi. Ito ay pagpunta sa maging isang napaka-kapana-panabik na oras. Sana sa inyo na mga darating down para sa laro Harvard-Yale ay magagawang upang ihinto sa pamamagitan ng isang maliit na piraso ng maaga, karapatan sa sentro ng campus, Sterling Memorial Library. Kami ay pagpunta sa magkaroon ng isang hanay ng mga nagpapakita na hanay mula sa autonomous sailboats sa paraan ng paggamit ng software upang mapanatili medyebal manuskrito. Kami ay pagpunta sa may ad hoc networking at mga tao pagtuturo software coding sa Cape Town. Magkakaroon kami ng computer demonstrasyon ng musika. At kami na siyempre ay may higit pang mga robot. Kaya umaasa kami sa iyo idedetalye sumali sa amin para sa kaganapang ito. Dapat ito ay isang pulutong ng mga masaya, isang maliit na piraso ng pagkain, at ng maraming mga kagiliw-giliw mga bagay na makipag-usap tungkol sa. Kaya ngayon, kami ay pagpunta sa makipag-usap tungkol sa likas na wika sa pagpoproseso. At ito ay ang pagtatangka para sa amin na bumuo ng isang bagong paraan ng interfacing sa aming mga device dahil para sa huling ilang linggo, ang iyong na-nakatutok sa kung paano ito ay na Maaari mong isulat ang code, isulat software iyon ay isang paraan ng pagiging able sa sabihin sa isang machine, ito ang gusto kong gawin mo. Ngunit hindi pa namin dapat kailangan na umasa na ang lahat ng bagay tanging magagamit na ginagamit ng lahat ng tao sa mundo ay magiging marunong sa ganitong uri ng pagtuturo. Kaya namin makilala sa pagitan ng computer wika at natural languages-- iyon ay, ang mga bagay na ang mga tao na paggamit upang makipag-usap sa ibang mga tao. At subukan namin upang bumuo ng mga interface na gumagamit mga natural na mekanismo komunikasyon. Ngayon, tulad lamang ng bawat iba pang paksa na na namin na nagsimula sa sa CS50, kami ay pagpunta sa magsimula sa ang pinakasimpleng piraso ng natural pagpoproseso ng wika na maaari naming isipin. Kami ay pagpunta sa magsimula sa makasaysayang bahagi ng natural na wika. At pagkatapos ay gagamitin namin bumuo ng hanggang sa mas at mas kamakailan-lamang na mga sistema at magsaya demo kasama ang paraan. Kaya kami ay pagpunta sa magsimula sa kung ano ang marahil ang unang natural na wika processing system. Ito ay isang software system na nakasulat sa 1966 sa pamamagitan ng Joseph Weizenbaum tinatawag ELIZA. At ELIZA ay dinisenyo upang ginagaya ang mga uri ng mga pakikipag-ugnayan Gusto mo sa isang Rogerian psychotherapist. Ngayon, ang Rogerians, sila ay nagkaroon ng isang ideya na psychotherapy kasangkot pagiging maka-mirror pabalik sa isang pasyente at makipag-usap sa kanila, talaga, sa pamamagitan lamang ng mga ito ang isang pagbibigay maliit na maliit na maliit na piraso ng mga therapist. Iyon ay, ang lahat ng bagay na nagsasabing ang mga therapist ay dapat na maging lamang isang salamin ng kung ano ang mga pasyente ay nagsasabi sa kanila. Kaya sabihin subukan at demo na ito. Kailangan namin ng isang volunteer na nais maging gustong ibahagi ang kanilang pinakamalalim, pinakamadilim, at / o pekeng mga lihim sa ELIZA? Oo naman, bakit hindi mo puntahan up. Hindi kapani-paniwala. At ang pangalan mo? MILES: Milya. BRIAN SCASSELLATI: Milya. Masaya akong makilala kayo, Milya. Kung nais mong i-hold papunta iyon. At kami ay pagpunta sa gumamit ng isang bersyon ng ELIZA na ko na kinokopya namin sa loob ng CS50 IDE. At kami na tingnan ang source code na ito sa isang maliit na habang. Ngunit para sa ngayon, hindi namin lamang pagpunta sa mga panawagan ito sa pamamagitan ng pag-type ng eliza. At ELIZA ay pagpunta sa magbibigay sa iyo ng mga sagot na pagpunta sa maging sa lahat ng capitals. At pagpunta sa hilingin sa iyo ng ilang mga katanungan. At tutugon kami at i-type sa mga sagot sa ELIZA. Kaya ELIZA ay sinabi, "Hi, Ako ELIZA. Ano ang iyong problema? " Ano ang gusto mong sabihin ELIZA naman ngayon? MILES: maaari ko lamang matulog kung mayroon akong kuneho tsinelas pa. BRIAN SCASSELLATI: Lahat ng karapatan. Lahat tama. [Tawa] "Maaari ko lamang matulog bunny slippers on. " At ELIZA nagsasabing, "Say, gawin mo ay may anumang mga sikolohikal na mga problema? Marahil ito ay isang mahusay na tagapagpahiwatig. " SIGE. Kaya kung ano ang nais mong tumugon? MILES: Oo. BRIAN SCASSELLATI Oo. Man ng maraming salita. Enjoy ko na. Eliza nagsasabing, "tila medyo positibo mo." MILES: Hindi, ako, sa katunayan, ang isang elektron. BRIAN SCASSELLATI: "No. Sa katunayan, ako ay isang elektron. " "Dumating ka ba sa akin dahil sa ikaw ay isang elektron? " Ngayon, maaari naming makita ang ilan sa mga bagay- pupuntahan ko upang i-pause mo para sa isang segundo lamang, Milya. Huwag pumunta sa kahit saan. Hindi namin ka pa tapos sa iyo. ELIZA ay, sa ilang mga paraan, pagtugon sa ilang mga bagay na siya ay sinasabi ngunit walang anumang tunay na pag-unawa. At ito ay din parroting likod ng ilang sa mga bahagi ng kanyang mga pangungusap. Kaya sinabi namin, "No. Sa katunayan, ako ay isang elektron. " Eliza tumugon pabalik, "Pumunta ka ba sa akin dahil ikaw ay isang elektron? " Lahat tama. Sabihin bigyan ito ng isa pang tugon dito. Bigyan ito ng isang magandang isa, Milya. MILES: Good one? Oo, mangyaring makakatulong sa akin. BRIAN SCASSELLATI: "Oo. Mangyaring makakatulong sa akin. "" Sigurado ka ba? " MILES: No. BRIAN SCASSELLATI: No. "Ano ang ibig na iminumungkahi sa iyo?" MILES: ako ay maaaring hindi isang elektron. BRIAN SCASSELLATI: "Ako ay maaaring hindi isang elektron. " "Sinasabi mo bang walang upang maging negatibo lang?" Lahat tama. Kaya Milya, salamat sa iyo kaya magkano. MILES: Salamat. BRIAN SCASSELLATI: Maraming salamat. [Palakpakan] Kaya ito ELIZA program, sa maraming paraan, ay tumutugon lamang sa mga piraso na namin ang pagbibigay nang walang anumang malalim pag-unawa sa kung ano ang nangyayari dito. Ito ay isang uri ng sistema tinatawag na pagtutugma ng pattern, kung saan kaming naghahanap ng mga tiyak na mga piraso ng teksto na kami pagkatapos pagpunta sa kumuha ng kung ano ang ay ibinigay bilang input, convert ito, potensyal na, sa anumang paraan, at pagkatapos ay bigyan ito pabalik sa gumagamit. Gawin ang anuman sa tingin mo na ELIZA ay talagang gumaganap valid psychoanalysis dito? Isang tao, marahil. Madla: [hindi marinig]. BRIAN SCASSELLATI: At kung paano ang ginagawa na gawin ka makaramdam? Oo, sa katunayan, ito ay. At kami ay pagpunta upang makita, talaga, ang source code para sa mga ito sa ilang sandali lamang. At kaya ka na magiging magawa ang eksaktong ito. Ngayon, ELIZA ay isang form ng kung ano ang gusto naming tumawag ngayon ng isang chat bot. Ito lamang ang napupunta sa pamamagitan ng teksto na iyong ibinibigay, nagkakaloob ng pinakamababang halaga ng pag-unawa o processing, at pagkatapos parrots ito pabalik sa iyo. Kaya sabihin tumagal ng isang pagtingin, conceptually, at makipag-usap tungkol sa kung ano ito ay na ELIZA ay aktwal na paggawa. ELIZA ay kumukuha ng isang sentence-- hahayaan sabihin, "Gusto kong mapabilib ang aking boss." At ELIZA ay naghahanap sa pamamagitan ng pangungusap na at sinusubukan mong hanapin at tumugma sa ilang mga pattern. Kaya, halimbawa, isa sa mga pattern na ELIZA ay naghahanap para sa mga salita "Gusto ko." At anumang oras nakikita ito ng isang bagay na may "Gusto ko" sa mga ito, ito formulates ng isang tugon. At na tugon ay isang fixed string. Sa kasong ito, ito ay "kung bakit ang gusto mo?" At nilagyan ko ng maliit na bituin sa sa wakas, dahil ito lamang ang simula ng aming tugon. At ang star ay nagpapahiwatig na kami ay pagpunta sa gawin ang mga natitirang ng utterance-- ng gumagamit "sa mapabilib ang aking boss" - at kami ay pagpunta upang maidagdag na papunta sa dulo ng ang string na ito. Kaya ngayon, sa halip na sinasabi, "kung bakit ang gusto mong mapabilib ang aking boss, " mayroong isang maliit na piraso ng mga karagdagang processing na makikita namin. Iyon ay, kami ay may sa convert ang ilan sa mga panghalip dito mula sa "aking boss" sa "sa iyong boss." At doon ay maaaring maging ng ilang mga iba pang mga pagbabago na kailangan namin upang gumawa ng. Kaya sa halip na malagkit lang ito direkta papunta sa dulo, kung ano ang gagawin namin ay isasaalang-alang namin ang natitirang bahagi ng utterance-- user sa puting here-- at kami na ang mga ito sa isang piraso sa isang oras at i-convert ang bawat string token, bawat salita, sa pangungusap. Kaya isasaalang-alang namin ang mga salitang "sa." Walang conversion na kailangan namin upang gawin iyon. "Pahangain." Walang conversion kailangan naming gawin doon. "My" ay i-convert sa "iyong". At "boss" namin makikita lamang mag-iwan ng "boss." At pagkatapos ay sa wakas, kahit ano na nagtatapos sa isang tagal ng panahon, makikita convert namin ito sa isang katanungan. Ito napaka-simple pagtutugma ng pattern ay talagang lubos na matagumpay. At kapag ito ay ipinakilala sa 1966-- Joseph Weizenbaum program na ito sa isang computer. Ngayon, mga computer sa oras na iyon ay hindi mga modelo desktop. Sila ay nagbahagi ng mga mapagkukunan. At ang kanyang mga mag-aaral ng gagawin pumunta at makipag-chat sa ELIZA. Sa kalaunan, kinailangan niyang limitahan ang access sa mga ito sapagkat ang kanyang mga mag-aaral ay hindi nakakakuha ng anumang gawain na ginawa. Lamang sila ay nakikipag-chat sa ELIZA. At, sa katunayan, siya ay upang apoy ang kanyang katulong, na ginugol ang lahat ng kanyang oras ng pakikipag-usap sa ELIZA tungkol sa kanyang malalim at nakakaligalig problema. Ang bawat taong ginagamit ang mga sistema nagsimula na anthropomorphize kanila. Sila ay nagsimula na sa tingin ng mga ito bilang mga pagiging animate at tunay na tao. Sila ay nagsimula na kilalanin ang ilan sa mga ang mga bagay na sila ay sinasabi ay babalik sa kanila. At sila ay paghahanap out mga bagay-bagay tungkol sa kanilang sarili. At, sa katunayan, kahit na ang mga eksperto, kahit na ang psychotherapist, nagsimula na mag-alala na, sa katunayan, siguro ELIZA ay palitan ang mga ito. At kahit na ang computer nag-aalala siyentipiko na tayo ay kaya malapit sa paglutas ng natural na wika. Ngayon, na ay hindi kahit saan malapit sa totoo. Ngunit na kung paano kahanga-hanga mga sistema ay maaaring mukhang. Kaya natin simulan upang tumingin ipaalam sa ilalim at subukan upang makakuha ng isang maliit na piraso ng isang katanungan ng kung saan ang tunay na nangyari ito code. Kaya gagawin namin itong code magagamit pagkatapos. At ito ay isang napaka simple at direktang port ng orihinal ELIZA pagpapatupad. Kaya ang ilan sa mga pangkakanyahan bagay-bagay na makikita mo dito ay hindi stylistically ano Gusto namin ang gusto mong gawin o kung ano na ang pagtuturo namin sa iyo na gawin. Ngunit na sinubukan namin upang panatilihin ang mga ito parehong sa kabila ng maraming ports na ito ay nagkaroon upang ito may lasa ng orihinal. Kaya kami ay pagpunta upang isama ng grupo ng mga bagay-bagay, at pagkatapos kami ay may isang hanay ng mga keyword, ang mga bagay na ELIZA ay makilala at direktang tumugon sa. Kaya kung mayroon kang mga salita tulad ng "maaari mong" o "Hindi ko" o "hindi" o "oo" o "panaginip" o "hello," pagkatapos ELIZA ay tumugon nang pili sa mga iyon. Ipapakita rin namin magkaroon ng isang tiyak na bilang ng mga bagay-bagay na kami magpalit, tulad ng pag-convert ng "aking" sa "iyong". At pagkatapos kami ay may isang hanay ng mga kasagutan na sa bawat isa sa mga keyword na ito, iro-rotate namin sa pamamagitan ng mga iba't ibang mga tugon. Kaya kung sinasabi ko "yes" tatlong beses sa isang hilera, ako ay maaaring makakuha ng tatlong iba't ibang mga sagot mula ELIZA. Ang aming code, at pagkatapos, ay talagang napaka-simple. Kung mag-scroll ko pababa nakalipas na ang lahat ng mga ito sagot na namin ang program sa at makakuha ng pababa kami sa aming main, kami ay pagpunta sa initialize isang pares ng mga iba't ibang mga variable at gawin ang isang maliit na piraso ng housekeeping sa simula. Ngunit pagkatapos ay mayroong ganap na isang set ng code na maaari mong maunawaan. Isang malaking habang loop na nagsasabing ako pagpunta sa ulitin ito nang paulit-ulit. Kukunin ko basahin sa isang linya, at idedetalye ko imbak na sa isang input string. Kukunin ko suriin at makita kung ito ay ang espesyal na keyword na "bye," kung saan nangangahulugan lumabas sa programa. At pagkatapos ay kukunin ko na suriin at makita kung ang isang tao ay paulit-ulit na lamang ang kanilang mga sarili paulit-ulit. At kukunin ko na sumigaw sa kanila kung gagawin nila. Sasabihin kong "huwag ulitin ang iyong sarili." Hangga't wala sa mga mangyayari, bibigyan namin ng pagkatapos ay i-scan sa pamamagitan ng at loop sa pamamagitan ng, sa linya 308-313 dito, at suriin at makita ay alinman sa mga keyword parirala na nakapaloob sa mga input na ako ay ibinigay lamang? Kung may isang tugma para sa kanila, well pagkatapos, makikita natatandaan ko na lokasyon. Makikita natatandaan ko keyword na iyon. At kukunin ko na magagawang upang bumuo ng isang tugon. Kung hindi ko mahanap ang isa, kung sa gayon, ang huling bagay sa aking keyword array ay ang aking default na mga sagot, kapag wala pa matches. Kukunin ko magtanong tulad ng "Bakit mo ginawa dumating dito? "o" Paano ko ng tulong sa iyo? " na lamang bahagyang naaangkop hindi mahalaga kung ano ang input ay. Makikita pagkatapos ay bumuo kami ng hanggang tugon ELIZA. Ipapakita namin magagawang gumawa na base tugon, tulad ng ginawa sa namin na "ang aking boss" halimbawa. Kung iyon ang lahat na is-- kung ito ay isa lamang string na ako dapat na respond-- Maaari ko lamang ipadala ito pabalik out. Kung ito ay isang asterisk sa dulo ng mga ito, at pagkatapos ay makikita ko ang iproseso ang bawat indibidwal na token sa ang natitirang bahagi ng tugon ng gumagamit at magdagdag ng mga sa, pagpapalit out salita para sa salita bilang na kailangan upang ko. Ang lahat ng ito ay ganap na walang isang bagay na maaari kang bumuo ng. At sa katunayan, ang mga paraan kung saan tayo Mayroon naproseso argumento command line, ang paraan na kung saan ikaw ay may proseso sa pamamagitan ng mga kahilingan ng HTTP sundin ang parehong mga uri ng mga patakaran. Sila pagtutugma ng pattern. Kaya ELIZA ay nagkaroon ng isang medyo mahalaga epekto sa natural na wika dahil ginawa ito mukhang ito tulad ng ito ay isang very maaaring makamit ang layunin, tulad ng sa anumang paraan gusto namin magagawang lutasin nang direkta ang problemang ito. Ngayon, na hindi na kailangang sabihin na ELIZA ginagawa lahat ng bagay na nais nating gawin. Tiyak na hindi. Ngunit dapat namin magagawang upang gawin ang isang bagay na higit pa. Ang aming mga unang hakbang upang pumunta lampas ELIZA ay pagpunta para ma-tingnan hindi text na ipinasok sa keyboard ngunit speech, aktwal speech naitala sa isang microphone. Kaya bilang tinitingnan namin ang mga iba't ibang mga piraso, hindi namin pagpunta sa may upang bumuo ng isang set ng mga modelo. Kami ay pagpunta sa may upang ma upang pumunta mula sa mababang antas ng tunog information-- pitch, malawak, frequency-- at convert na sa ilang mga yunit na hindi namin maaaring mas madaling manipulahin at, sa wakas, manipulahin ang mga ito sa mga salita at pangungusap. Kaya karamihan speech recognition sistema na ang mayroon ngayon sundin ang isang statistical modelo na kung saan bumuo namin tatlong magkakahiwalay na representasyon ng kung ano ang signal na audio ay naglalaman ng aktwal. Simulan namin na may isang phonetic model na pag-uusap lamang tungkol sa mga base tunog na ako ng paggawa. Ako ba ay paggawa ng isang bagay na isang B tulad ng sa batang lalaki o isang D tulad ng sa aso? Paano ko makikilala ang mga dalawang magkaibang telepono bilang hiwalay at natatangi? Sa itaas ng na, kami pagkatapos ay bumuo ng isang salita model pagbigkas, isang bagay na ang mga link nang sama-sama mga indibidwal na mga telepono at pinagsasama ang mga ito sa isang salita. At pagkatapos nito, kami ay kumuha ng mga salita at kami na magtipon ang mga ito sa isang wika modelo sa isang kumpletong pangungusap. Ngayon, kami ay pagpunta sa makipag-usap tungkol sa bawat sa mga nakapag-iisa at hiwalay. Ngunit ang tatlong mga modelo ay ang lahat ng lamang ang pagpunta sa mga istatistika. At na nangangahulugan na kapag kami gumana sa mga ito, ipapakita namin maaaring makapag-trabaho sa ito ang lahat nang sabay-sabay. Lahat tama. Simulan natin sa ating mga phonetic model Hayaan. Kaya phonetic modelo umaasa sa isang computational pamamaraan tinatawag na hidden modelo Markov. Ang mga ito ay mga graphical na mga modelo na kung saan ako magkaroon at makilala ang isang estado ng mundo bilang nailalarawan sa pamamagitan ng isang hanay ng mga tampok. At na ang estado ay naglalarawan ng isang bahagi ng isang aksyon na ako ng pansin sa. Kaya kung sa tingin ko tungkol sa paggawa ang tunog "ma" tulad ng ina, mayroong iba't ibang sangkap sa na tunog. May isang bahagi kung saan gumuhit ako sa paghinga. At pagkatapos ay ako pitaka aking mga labi. At roll ko ang aking mga labi sa likod ng isang maliit na bit na gumawa na "ma" na tunog. At pagkatapos ay may isang release. Ang aking mga labi-iba. Air ay pinatalsik. "Ma." Yaong tatlong iba't-ibang bahagi ay kinakatawan ng mga estado sa graph-- sa simula, ang gitna, at ang wakas. At gusto ko may mga transition na pinapayagan ako sa paglalakbay mula sa isang estado sa susunod na may isang tiyak na posibilidad. Kaya, halimbawa, na ang M tunog ay maaaring magkaroon ng isang napaka, masyadong maikli ang paggamit sa beginning-- "mm" - at pagkatapos ay isang mas mahaba, vibratory phase kung saan ako humahawak sa aking labi na magkasama at halos humming-- "mmmm" - at pagkatapos ay isang napaka-ikling plowsib kung saan paalisin ko breath-- "ma." Ang mga nakatagong Markov modelong ito dinisenyo upang makuha ang katotohanan na ang paraan na gumawa ako ang tunog na "ma" ay pagpunta upang maging bahagyang naiiba sa timing nito, ay kadalasan, at mga tampok nito sa ang paraan na gagawin mo ito o ang paraan na maaaring ako gumawa ito kapag ako ng pakikipag-usap tungkol sa iba't ibang mga gumagamit ng sulat. "Ina" at "upang ako'y" kalooban tunog bahagyang naiiba. Kaya upang makilala ang isang partikular na tunog, gagawin namin bumuo ng mga modelo Markov, ang mga nakatagong Markov modelo, ng lahat ng posibleng phone na ako maaaring gusto mong makilala, lahat ng posibleng tunog, at pagkatapos ay tingnan ang acoustic data na mayroon akong at matukoy ang istatistika kung saan ang isa ay ang pinaka-malamang na na magkaroon ng ginawa ang tunog. SIGE. Gamit na modelo, kami ay pagkatapos magsimula na magtayo sa ibabaw ng mga ito. Kumuha kami ng isang modelong pagbigkas. Ngayon, paminsan-minsan sa pagbigkas modelo ay simple at madaling dahil may isa lamang paraan sa pagbigkas ng isang bagay. Iba pang mga beses, na ang mga ito ng isang maliit na kaunti pang kumplikado. Narito ang isang gabay sa pagbigkas para na red bagay na isang prutas na gumawa ka ng ketchup sa labas ng. Mga tao ay hindi sa tingin ito ay isang prutas. Right? Ngayon, may mga maraming iba't ibang paraan na ang mga tao ay bigkasin ang salitang ito. Ang ilan ay sabihin "daliri sa paa-may-daliri." Ang ilan ay sabihin "daliri-mah-daliri sa paa." At maaari naming makuha na may isa sa mga graphical na mga modelo kung saan, muli, kami ay kumakatawan sa mga transition tulad ng pagkakaroon ng isang tiyak na posibilidad at ang kaugnay na bagay na maaaring mangyari sa kanila. Kaya sa kasong ito, kung ako ay upang sundin tuktok na ruta sa pamamagitan ng buong graph, Gusto ko ay nagsisimula sa titik na sa malayong kaliwa, ang "salamat" na tunog. Gusto kong kunin ang top half, ang "oh," at pagkatapos ay isang "ma," at pagkatapos ng isang "ng," at pagkatapos ay isang "salamat," at isang "oh." "Daliri ng paa-maaaring-daliri sa paa." Kung kinuha ko sa ilalim na landas sa pamamagitan ng ito, ako ay makakuha ng "ta-mah-daliri sa paa." At kung bumaba ako at pagkatapos ay up, nais kong makakuha ng "ta-maaaring-daliri sa paa." Ang mga modelo na makuha ang mga pagkakaiba dahil sa tuwing lumawak namin ng isa sa mga sistema ng pagkilala, ito ay pagpunta sa may sa trabaho sa maraming iba't ibang mga uri ng mga tao, maraming iba't ibang mga punto, at kahit na iba't-ibang mga gumagamit ng parehong salita. Sa wakas, sa tuktok ng na, kami bumuo ng isang bagay na mukhang tunay kumplikado, tinatawag na ang modelo ng wika, ngunit sa katunayan ay ang pinakasimpleng ng ang tatlong dahil ang mga ito gumana sa kung ano ang tinatawag n-gram modelo. At sa kasong ito, ako nagpapakita sa iyo isang dalawang-bahagi n-gram modelo, isang Bigram. Kami ay pagpunta sa gumawa ng pisikal na mga ideya na kung minsan, ang ilang mga salita ay mas malamang na sundin ang isang ibinigay na salita kaysa sa iba. Kung sinabi ko lang "taya ng panahon," ang susunod na salita ay malamang na "ngayon" o maaaring maging "ang panahon forecast bukas. " Ngunit ito ay malamang na hindi maging "ang forecast ng panahon artichoke. " Ano ang ginagawa ng isang modelo na wika ay nakukuha nito ang mga istatistika sa pamamagitan ng pagbibilang, mula sa ilang mga napakalaking corpus, ang lahat ng mga pangyayari na kung saan ang isang salita ay sumusunod sa isa pa. Kaya kung kumuha ako ng isang malaking corpus-- tulad ng bawat Wall Street Journal na ito ay inilathala mula noong 1930, na kung saan ay ang isa sa mga standard corpuses-- at ako ay tumingin sa pamamagitan ng lahat text na iyon, at bilangin ko up kung gaano karaming beses pagkatapos "forecast" ako nakakakita ng "ngayon" at kung gaano karaming beses na ako nakakakita "forecast" na sinusundan ng "artichoke," ang unang isa ay pagpunta upang maging mas malamang. Ito ay pagpunta sa lumitaw ang malayo mas madalas. At kaya ito ay may isang mas mataas na bagay na maaaring mangyari kaugnay nito. Kung gusto kong malaman kung ang posibilidad ng isang buong pananalita, pagkatapos, masira ko lang ito up. Kaya ang posibilidad ng pagdinig ang pangungusap "ang daga ate cheese" ay ang probabilidad ng salita "ang" simula ng isang pangungusap, at pagkatapos ay ang posibilidad na ang mga salitang "daga" ay sumusunod sa salitang "mga," at ang posibilidad na ang mga salitang "ate" sumusunod "daga," at ang posibilidad na ang "cheese" sumusunod "ay kumain." Ito tunog tulad ng isang pulutong ng mga statistics, ang isang pulutong ng mga probabilidad. At na ang lahat na ito ay. Ngunit ang kamangha-manghang mga bagay ay kung gagawin mo ito na may isang malaking sapat na sample ng data, Gumagana siya. At ito ay gumagana tremendously na rin. Alam namin ang lahat ng mga teknolohiyang ito. Karamihan sa mga operating system ang sumama sa pagkilala ng boses sa puntong ito. Ginagamit namin ang Siri at Cortana at Echo. At ang mga bagay ay batay sa sa ganitong uri ng tatlong-layer model-- isang phonetic modelo sa ibaba, ang isang pagbigkas model sa gitna, at isang modelo ng wika sa itaas ng mga ito. Ngayon, mayroon sila upang makagawa ng higit pa sa isang maliit na piraso sa na upang sagutin ang mga katanungan. Ngunit ang pagkilala sa kung ano ang iyong kasabihan eksakto depende sa na. Kaya natin ang isang halimbawa dito. Kaya ko ang aking phone sitting up dito sa ilalim ng mga dokumento camera. At kami ay pagpunta sa nagtatanong Siri ng ilang katanungan. Lahat tama? Kaya ni gisingin ang aking phone dito. Siri, kung ano ang lagay ng panahon tulad ng sa New Haven ngayon? SIRI: Narito ang lagay ng panahon para New Haven, Connecticut ngayon. BRIAN SCASSELLATI: OK. Na nakita mo Kaya una na kinikilala Siri bawat isa sa mga indibidwal na mga salita at pagkatapos ay ginawa ng isang tugon. Susubukan naming makipag-usap tungkol sa kung paano na tugon dumating ang tungkol sa ilang sandali. Ngunit ngayon na ang alam namin na ito ay batay lamang sa raw na mga istatistika at ito pattern na tumutugma sa uri ng mga diskarte, Maaari naming i-play ang ilang mga laro na may Siri. Kaya ang maaari kong subukan muli. Siri, kung ano ang lagay ng panahon hippopotamus New Haven, ngayon? SIRI: OK. Narito ang mga taya ng panahon para sa mga Bagong Haven, Connecticut para sa araw na ito. BRIAN SCASSELLATI: Siri hindi daunted sa pamamagitan ng na dahil ito ay matatagpuan sa pattern-- "panahon," "ngayon," "New Haven." Iyon ay kung ano ito ay pagtugon na, gusto lamang ELIZA. Lahat tama. Sabihin bigyan ito ng isa pang kahit Ipaalam mas nakakatawa halimbawa. Siri, panahon artichoke armadillo hippopotamus New Haven? SIRI: Hayaan akong i-check sa mga iyon. Narito kung ano ang nakita ko sa web para sa kung ano ang mga artichokes Armadillo hippopotamus New Haven. BRIAN SCASSELLATI: OK. Kaya kung malayo sapat pumunta ako ang layo mula sa modelong ito, Ako makakapag-lituhin ang mga ito dahil ito ay walang na tumutugma sa mga pattern na ito ay may. At na statistical engine na sinasabi, kung ano ang mga posibilidad na mayroon ka ang mga salitang hippopotamus at artichoke sama-sama, at armadilyo? Iyon ay nakuha na ng isang bagong bagay. Kaya ang mga teknolohiya na ginagamit namin araw-araw. Kung nais namin na kunin ang mga ito sa isang hakbang karagdagang, bagaman, kung namin talagang nais na magagawang makipag-usap tungkol sa kung ano ito ay na ang mga sistema ay pagtugon sa, mayroon kaming makipag-usap, muli, tungkol sa isang mas pangunahing hanay ng mga katanungan. At iyon ay isang paksa sa komunikasyon na tinatawag naming tanong pagsagot. Iyon ay, gusto naming ma to-- oo? Madla: [hindi marinig]. BRIAN SCASSELLATI: Huwag makuha namin sa latent semantic processing? Kaya yes. May isang pulutong ng mga bagay na nangyayari sa ibaba ng ibabaw na may Siri at sa ilan sa mga halimbawa Pupunta ako upang ipakita sa iyo sa susunod kung saan may ganap ng isang piraso sa mga tuntunin ng istraktura ng kung ano ang iyong sinasabi na mahalaga. At, sa katunayan, iyon ay isang mahusay na pasimula para sa susunod na slide para sa akin. Kaya sa parehong paraan na ang aming speech recognition ay itinayo up ng maramihang mga layer, kung gusto naming maunawaan kung ano ito ay na ay aktwal na pagiging sinabi, kami muli ng pagpunta sa umasa sa isang pagtatasa ng multi-layer ng teksto na na-recognize. Kaya kapag aktwal Siri ay may kakayahan upang sabihin nating, tumingin natagpuan ko ang mga salitang ito. Ngayon kung ano ang gagawin ko sa kanila? Ang unang bahagi ay madalas na pumunta sa pamamagitan ng at subukan upang pag-aralan ang istraktura ng pangungusap. At sa kung ano ang nasaksihan namin sa mababang paaralan, madalas, bilang uri ng balangkas pangungusap, kami ay pagpunta upang makilala na ang mga tiyak na mga salita ay may tiyak na mga tungkulin. Ang mga ito ay mga pangngalan. Ang mga ito ay mga panghalip. Ang mga ito ay mga pandiwa. At kami ay pagpunta upang makilala na para sa isang partikular na grammar, sa kasong ito English grammar, may mga wastong mga paraan kung saan maaari kong pagsamahin ang mga ito at iba pang mga paraan na hindi wasto. Pagkilala Na, istraktura na, maaaring hindi sapat upang makatulong sa gabay sa amin kaunti lamang. Ngunit ito ay hindi pa sapat para sa amin na ma-bigyan anumang mga kahulugan sa kung ano ang sinabi dito. Upang magawa iyon, kami ay may sa umasa sa ilang mga halaga ng semantic processing. Iyon ay, kami ay pagpunta sa may upang tumingin sa ilalim kung ano ang bawat isa sa mga salita talagang nagdadala bilang kahulugan. At sa pinakasimpleng paraan ng paggawa nito, kami ay pagpunta sa iugnay sa bawat salita na alam namin ang isang tiyak na function, isang tiyak na pagbabagong-anyo na ito ay nagbibigay-daan sa mangyayari. Sa kasong ito, maaari naming lagyan ng label ang salitang "John" bilang isang wastong pangalan, na ito nagdadala sa mga ito ng isang identity. At maaari naming label "Mary" bilang ang parehong paraan. Sapagkat ang isang pandiwa tulad ng "nagmamahal," na bumubuo ng isang partikular na relasyon na hindi namin magagawang upang kumatawan. Ngayon, na ay hindi nangangahulugan na na naiintindihan namin ano ang ibig ay ngunit lamang na naiintindihan namin ito sa paraan ng isang symbolic system. Iyon ay, maaari naming label ito at manipulahin ito. Sa bawat isa sa mga uri ng mga approach na ito, anumang uri ng semantic processing dito ay pagpunta sa nangangailangan ng isang maliit na piraso ng kaalaman at ng maraming trabaho sa aming bahagi. Humihingi kami ng hindi na sa kaharian kung saan lamang payak na mga istatistika ay magiging sapat na para sa amin. Ngayon, upang pumunta mula sa puntong ito sa pagiging makapag-usap tungkol sa loob ng kung ano ang aktwal na nangyayari dito, sa pagiging magagawang upang manipulahin ang buuin at maunawaan ng isang katanungan at pagkatapos ng kakayahang upang pumunta sa labas at sa paghahanap, na nangangailangan ng isang mas complex na nagbibigay-malay na modelo. Ang paraan kung saan ang mga sistema ay binuo ay para sa pinaka-bahagi tunay, tunay labor intensive. Sila ay kasangkot sa mga tao paggastos ng isang mahusay na pakikitungo ng time-iistraktura ang mga paraan kung kung saan ang mga uri ng mga pangungusap maaaring katawanin sa ilang logic. Ito ay makakakuha ng kahit na isang maliit mas kumplikado, bagaman. Kahit na minsan ang aming dealt may semantics, bibigyan namin ng mayroon pa rin upang tingnan ang pragmatics ng kung ano ang sinabi. Iyon ay, kung gaano nauugnay ang ko ang mga salita na kung ang isang bagay kong pisikal out doon sa mundo o sa hindi bababa sa ilang impormasyon sa pinagmulan na maaari kong manipulahin? Minsan, ang mga humantong sa kahanga-hangang mga piraso ng kalabuan. "Red-hot star sa ikasal astronomer." SIGE. Ngayon, mababasa natin na bilang ng nakakatawa uri ng headline na gusto namin makita sa late night TV dahil hindi namin bigyang-kahulugan ang "star" na magkaroon nito celestial body kahulugan. Alam namin na ito ay nangangahulugan na ang mas maraming pangkaraniwan artista o artista na may mataas na halaga ng visibility. "Nagpapaputok tumutulong kagat ng aso biktima." Ay ito na ang pulutong ay talagang out there pagtulong ng aso sa pagpunta sa paligid at masakit sa mga biktima? O ito na nagkaroon isang indibidwal na makagat ng isang aso na kailangan ng tulong? Lamang mula sa pagtingin sa mga syntax at ang semantics ng mga pangungusap, hindi namin matukoy na. "Helicopter pinalakas sa pamamagitan ng tao lilipad." Mayroon bang mga, sa katunayan, ang aktwal na maliit na bagay na lumilipad sa paligid na ay ang mga taong may pakpak powering helicopter para sa kabutihan ng sangkatauhan? O kaya ay may isa makina aparato na Nakukuha ng kanyang kapangyarihan mula sa tao? Kapag tumingin kami sa mga tanong pagsagot sistema, ang mga ito ay ang mga layer na kailangan naming harapin. Ngayon, ang mga pinakamahusay at ang pinaka-uri-uriin ng kalat ng mga sistema araw na ito ay maaaring gawin mga bagay-bagay sa isang antas na malayo sa kung ano kami ay 10 taon na ang nakakaraan. Narito ang isa sa mga pinakamahusay na mga sistema na ang mayroon ngayon. At ito ay isang sistema mula sa IBM tinatawag Watson. Ito ay mula sa aming mga kaibigan sa IBM. Ito ang Katherine bangko, Jia Chen, at Priscilla Moraes pagbigay sa amin isang pagtatanghal ng Watson kahapon sa IBM Yorktown. [Playback ng video] -Kamusta ka na? -Ako ay mabuti. Ako ay laging masaya kapag ako pag-iisip, lalo na kapag ako maaaring manatili cool na sa mga rooms server. -Sino Iyong mga paboritong artista? -Ang Aking paboritong artista Jolie bilang Lara Croft sa nitso ang sumasalakay dahil ang kanyang orihinal na anyo ay bilang isang virtual na character tulad ng sa akin. -kung Makakatulong Watson pasyente? -Ang Plano para sa mga pasyente sa may access sa Watson direkta? Access sa Watson advisory aplikasyon ay mag-iiba sa pamamagitan ng paggamit kaso. Ngunit sa kasalukuyan, Watson ay magbibigay lamang posibleng diagnosis at paggamot mga opsyon sa mga medikal na propesyonal. Kung saan naaangkop, ang mga pasyente Maaaring magbigay ng impormasyon sa Watson, marahil sa pamamagitan ng isang portal web interface, tablet, o kahit na isang mobile phone. Halimbawa, ang isang pasyente ay maaaring tinanong upang ilarawan ang kanilang mga sintomas sa natural na wika direkta sa isang Watson solusyon, na nagpapahintulot sa mga manggagamot upang tumutok sa diyagnosis at hindi pangongolekta ng data. -Sino Pinaslang Abraham Lincoln? Juan Wilkes Booth. -Sa Anong taon ginawa ng Arizona Diamondbacks mapanalunan ang World Series? -2001. [END playback] BRIAN SCASSELLATI: So ang mga uri ng mga sistema ng kung umasa sa una sa lahat Kinikilala ang pagsasalita; second, convert ito sa isang makabuluhan na panloob representasyon; at pagkatapos, third, kawalan ng kakayahang lumabas at maghanap ang pinagmulan ng impormasyon na ay nagbibigay-daan sa kanila upang sagutin ang tanong na iyon. Ang antas ng pagiging kumplikado ay nagsasangkot ang parehong mga uri ng program na bagay na ikaw ay ginagawa sa hanay ng problema. Nagawa naming upang i-parse ng mga kahilingan ng HTTP in ang parehong uri ng pattern mababang antas ng matching na maaaring gawin ELIZA. Humihingi kami makapag-convert ng mga sa isang panloob na representasyon, at pagkatapos ay gamitin ang mga ito para sa mga tanong ng ilang panlabas na database, posibleng gamit SQL. Ang lahat ng mga sistema na ay binuo ngayon upang gawin ito uri ng likas na komunikasyon wika ay nakatayo sa ang mga parehong prinsipyo. Ngayon, kahit na ang isang sistema tulad ng Watson ay hindi sapat complex upang ma-sagot arbitrary mga katanungan tungkol sa anumang paksa. At sa katunayan, sila ay maging nakabalangkas sa loob ng isang naibigay na domain. Kaya maaari kang pumunta sa online at maaari mong mahanap ang mga bersyon ng Watson na gumana ng mabuti sa loob ng informatics medikal. O may isa online na lamang ang trato sa kung paano upang gumawa ng magandang mga rekomendasyon tungkol sa kung ano ang beer ay pumunta sa kung saan ang pagkain. At sa loob ng mga domain, maaari itong sagutin ang mga katanungan, mahanap ang impormasyon na kailangan nito. Ngunit hindi mo maaaring ihalo at itugma ang mga ito. Ang sistema na na-sanay sa database ng mga pagkain at beer ay hindi gumagana ng mabuti kapag ikaw ay biglang ilagay ito sa sa mga medikal na informatics database. Kaya kahit na ang aming pinakamahusay na mga sistema ng araw umasa sa isang antas ng processing kung saan tayo ay hand coding at gusali sa imprastraktura upang upang gumawa ng run ang system na ito. Ngayon, ang huling topic na gusto ko para ma-makapunta sa araw na ito ay tungkol sa nonverbal komunikasyon. Ang isang mahusay na mass ng mga impormasyon na naming makipag-usap sa bawat isa ay hindi dumating tungkol sa pamamagitan ng indibidwal na mga salita na namin ang pag-aaplay. Ito ay may kinalaman sa mga bagay tulad ng proximity, tumitig, ang iyong mga tono ng boses, ang iyong pagbabago ng tono. At na komunikasyon ay din isang bagay na maraming iba't ibang mga interface pag-aalaga ng isang mahusay na pakikitungo tungkol sa. Ito ay hindi kung ano ang nagmamalasakit Siri tungkol sa. Maaari ko bang hilingin sa Siri isang bagay sa iisang tinig o sa ibang tono ng boses, at Siri pupuntahan bigyan ako ang parehong sagot. Ngunit iyon ay hindi kung ano ang bumuo namin para sa marami pang ibang mga uri ng mga interface. Gusto kong ipakilala sa iyo ngayon sa isa sa mga robots. Ito ay binuo sa pamamagitan ng aking matagal nang kaibigan at kasamahan Cynthia Breazeal at ang kanyang kumpanya jibo. At ito robot-- kami ay pagpunta na magkaroon ng isang pares ng mga boluntaryo lumapit upang makipag-ugnayan sa mga ito. Kaya maaari mayroon akong dalawang mga taong handang upang i-play sa mga robot para sa akin? Bakit hindi ka dumating sa up, at bakit hindi ka dumating sa up. Kung gusto mong sumali up ako dito, please. At kung ako ay maaaring mayroon ka dumating karapatan sa paglipas dito. Salamat. Hi. ALFREDO: Masaya akong makilala kayo. Alfredo. BRIAN SCASSELLATI: Alfredo. RACHEL: Rachel. BRIAN SCASSELLATI: Rachel. Masaya akong makilala kayo pareho. Alfredo, ako pagpunta sa may unang pumunta ka. Halika karapatan up dito. Pupunta ako sa kitang ipakilala you-- kung ako makakakuha ng off ito walang katok ang microphone-- sa isang maliit na robot na may pangalang jibo. SIGE? Ngayon, jibo ay idinisenyo upang maging interactive. At bagaman maaari itong magbigay sa iyo ng pagsasalita, marami ng pakikipag-ugnayan sa robot ay nonverbal. Alfredo, ako pagpunta sa hilingin sa inyo na magsabi ng maganda at komplimentaryong sa robot, please. ALFREDO: Sa tingin ko titingnan mo cute. [Whirring tunog] BRIAN SCASSELLATI: OK. Tugon nito ay hindi sa salita. At gayon pa man ito ibinigay sa iyo sa parehong mga isang malinaw na pag-amin na ito ay narinig kung ano ang sinabi mo at din sa paanuman nauunawaan na. SIGE? Hakbang karapatan bumalik dito para sa isang segundo. Salamat. Rachel, kung nanaisin mo. Ngayon, ako pagpunta sa magbibigay ikaw ang mas mahirap na trabaho. Kung gusto mo tumayo karapatan dito, back up lang nang kaunti kaya maaari naming kumuha ka sa camera at tumingin sa ganitong paraan. Pupunta ako sa hilingin sa inyo na sabihin ng isang bagay tunay na ibig sabihin at pangit sa robot. RACHEL: Ano tila ikaw lamang na gawin ay ganap na walang katotohanan. [Hugong] Iyon ay mas walang katotohanan. Ano kaya ang nangyari sa inyo? Aw, huwag mabahala. Bibigyan kita ng isang yakapin. BRIAN SCASSELLATI: Lahat ng karapatan. Salamat, Rachel. Alfredo, Rachel, salamat guys talaga. [Palakpakan] Kaya ito uri ng pakikipag-ugnayan ay sa maraming mga paraan ang ilan sa mga parehong panuntunan at ang ilan sa mga parehong istraktura bilang kung ano ang aming baka magkaroon sa linguistic interaction. Ito ay parehong mahilig makipagkapwa at Naghahain isang mahalagang layunin. At pakikipag-ugnayan na, sa maraming mga paraan, ay dinisenyo na magkaroon ng isang partikular na epekto sa taong nakikipag-ugnay sa o pakikinig sa robot. Ngayon, ako ay mapalad sapat upang magkaroon jibo dito ngayon. Sam Spaulding ay dito pagtulong amin out sa mga robot. At ako pagpunta sa hilingin Sam na magbigay sa amin ng isa magandang demo ng jibo dancing na maaari naming panoorin sa dulo dito. Kaya sige lang, jibo. Sam: OK, jibo. Ipakita sa amin ang iyong mga gumagalaw sa sayaw. [MUSIC nagpe-play] BRIAN SCASSELLATI: Lahat ng mga karapatan, lahat. Salamat sa aming mga kaibigan sa jibo. [Palakpakan] At salamat sa aming mga kaibigan sa IBM para sa pagtulong out ngayon. Communication ay isang bagay na na kayo ay pagpunta upang makita ang pagdating up ng higit pa at higit pa bilang bumuo kami ng mas kumplikadong mga interface. Sa susunod na linggo, magpapadala kami ay pakikipag-usap tungkol sa kung paano mag-interface may mga kalaban computer sa games. Ngunit kung mayroon kang mga katanungan tungkol sa mga ito, Makikita ko ba sa paligid sa mga oras ng opisina ngayong gabi. Ikinagagalak kong makipag-usap sa iyo ang tungkol sa AI ko paksa o upang makakuha ng sa karagdagang detalye. Sana'y maging maayos ang iyong bakasyon. [Palakpakan] [MUSIC nagpe-play]