1 00:00:00,000 --> 00:00:08,364 2 00:00:08,364 --> 00:00:08,870 >> LUCAS FREITAS: Bună. 3 00:00:08,870 --> 00:00:09,980 Bine ati venit toată lumea. 4 00:00:09,980 --> 00:00:11,216 Numele meu este Lucas Freitas. 5 00:00:11,216 --> 00:00:15,220 Sunt un junior la [inaudibil] studierea informatică, cu un accent în 6 00:00:15,220 --> 00:00:16,410 lingvistică computațională. 7 00:00:16,410 --> 00:00:19,310 Deci secundar meu este în limba și teoria lingvistică. 8 00:00:19,310 --> 00:00:21,870 Sunt foarte încântați să învețe voi un pic despre acest domeniu. 9 00:00:21,870 --> 00:00:24,300 Este un domeniu foarte interesant pentru a studia. 10 00:00:24,300 --> 00:00:27,260 De asemenea, cu o mulțime de potențial pentru viitor. 11 00:00:27,260 --> 00:00:30,160 Deci, eu sunt foarte incantata ca voi au în vedere proiecte în 12 00:00:30,160 --> 00:00:31,160 lingvistică computațională. 13 00:00:31,160 --> 00:00:35,460 Și voi fi mai mult decât fericit să recomande oricare dintre voi, dacă vă decideți să 14 00:00:35,460 --> 00:00:37,090 urmări una dintre cele. 15 00:00:37,090 --> 00:00:40,010 >> Deci, în primul rând, ceea ce sunt de calcul lingvistică? 16 00:00:40,010 --> 00:00:44,630 Lingvistica astfel de calcul este intersecția dintre lingvistică și 17 00:00:44,630 --> 00:00:46,390 informatică. 18 00:00:46,390 --> 00:00:47,415 Deci, ceea ce este lingvistica? 19 00:00:47,415 --> 00:00:48,490 Ce este informatica? 20 00:00:48,490 --> 00:00:51,580 Ei bine, de la lingvistică, ce luăm sunt limbile. 21 00:00:51,580 --> 00:00:54,960 Deci, lingvistică este, de fapt studiul de limbaj natural în general. 22 00:00:54,960 --> 00:00:58,330 Limbaj atât de natural - vorbim despre limba pe care le folosim de fapt la 23 00:00:58,330 --> 00:00:59,770 comunica între ele. 24 00:00:59,770 --> 00:01:02,200 Deci, noi nu suntem chiar vorbesc despre C sau Java. 25 00:01:02,200 --> 00:01:05,900 Vorbim mai multe despre limba engleză și Limbile chineză și alte pe care le 26 00:01:05,900 --> 00:01:07,780 utilizați pentru a comunica între ele. 27 00:01:07,780 --> 00:01:12,470 >> Provocatoare lucru despre asta este faptul că acum avem aproape 7.000 28 00:01:12,470 --> 00:01:14,260 limbi din lume. 29 00:01:14,260 --> 00:01:19,520 Deci, există destul de o varietate mare de limbi pe care le pot studia. 30 00:01:19,520 --> 00:01:22,600 Și apoi cred că este, probabil, foarte greu de a face, de exemplu, 31 00:01:22,600 --> 00:01:26,960 traducere dintr-o limbă la parte, având în vedere că aveți 32 00:01:26,960 --> 00:01:28,240 Aproape 7.000 dintre ei. 33 00:01:28,240 --> 00:01:31,450 Deci, dacă te gândești de a face traducere de la o limbă la alta te 34 00:01:31,450 --> 00:01:35,840 au aproape mai mult de un milion combinații diferite pe care le puteți 35 00:01:35,840 --> 00:01:37,330 avea de la o limbă la alta. 36 00:01:37,330 --> 00:01:40,820 Deci, este într-adevăr o provocare pentru a face unele un fel de sistem de exemplu traducere 37 00:01:40,820 --> 00:01:43,540 fiecare limbă. 38 00:01:43,540 --> 00:01:47,120 >> Deci, lingvistică tratează cu sintaxa, semantică, pragmatică. 39 00:01:47,120 --> 00:01:49,550 Voi nu aveți nevoie de exact să știe ce sunt. 40 00:01:49,550 --> 00:01:55,090 Dar foarte interesant lucru este că ca un vorbitor nativ, atunci când vă aflați 41 00:01:55,090 --> 00:01:59,010 limbă ca și copil, înveți de fapt toate aceste lucruri - semantica de sintaxă 42 00:01:59,010 --> 00:02:00,500 și pragmatică - 43 00:02:00,500 --> 00:02:01,430 de unul singur. 44 00:02:01,430 --> 00:02:04,820 Și nimeni nu are să te învețe sintaxa pentru să înțelegeți cât de fraze sunt 45 00:02:04,820 --> 00:02:05,290 structurat. 46 00:02:05,290 --> 00:02:07,980 Deci, e foarte interesant, deoarece este ceva care vine foarte 47 00:02:07,980 --> 00:02:10,389 intuitiv. 48 00:02:10,389 --> 00:02:13,190 >> Și ceea ce iei de la stiinta calculator? 49 00:02:13,190 --> 00:02:16,700 Ei bine, cel mai important lucru pe care noi au în informatică este în primul rând de 50 00:02:16,700 --> 00:02:19,340 toate, inteligenta artificiala și de învățare mașină. 51 00:02:19,340 --> 00:02:22,610 Deci, ceea ce încercăm să facem lingvistică computațională se învață 52 00:02:22,610 --> 00:02:26,990 computerul cum să facă ceva cu limba. 53 00:02:26,990 --> 00:02:28,630 >> Deci, de exemplu, în mașină traducere. 54 00:02:28,630 --> 00:02:32,490 Am încercat să-i învețe cum computerul meu să știe cum să tranziția de la o 55 00:02:32,490 --> 00:02:33,310 limbă la alta. 56 00:02:33,310 --> 00:02:35,790 Deci, ca practic de predare un calculator două limbi. 57 00:02:35,790 --> 00:02:38,870 Dacă am face procesarea limbajului natural, cum este cazul, de exemplu, de 58 00:02:38,870 --> 00:02:41,810 Facebook Graph căutare, vă învață computerul cum să înțeleagă 59 00:02:41,810 --> 00:02:42,730 interogări bine. 60 00:02:42,730 --> 00:02:48,130 >> Deci, dacă spui "fotografiile mele prieteni. "Facebook nu tratează că 61 00:02:48,130 --> 00:02:51,130 ca un șir întreg care are doar o adunatura de cuvinte. 62 00:02:51,130 --> 00:02:56,020 Se înțelege, de fapt, relația între "fotografii" și "prietenii" și 63 00:02:56,020 --> 00:02:59,620 înțelege că "fotografii" sunt proprietate de "prietenii mei." 64 00:02:59,620 --> 00:03:02,350 >> Deci, asta-i o parte din, de exemplu, procesarea limbajului natural. 65 00:03:02,350 --> 00:03:04,790 Este încercarea de a înțelege ceea ce este relația dintre 66 00:03:04,790 --> 00:03:07,520 cuvintele într-o propoziție. 67 00:03:07,520 --> 00:03:11,170 Și marea întrebare este, poate vă invata un calculator cum să vorbească 68 00:03:11,170 --> 00:03:12,650 o limbă în general? 69 00:03:12,650 --> 00:03:17,810 Care este o întrebare foarte interesantă pentru cred, ca și în cazul în care poate în viitor, 70 00:03:17,810 --> 00:03:19,930 ai de gând să fie în măsură să vorbesc la telefonul mobil. 71 00:03:19,930 --> 00:03:23,290 Un fel de ceea ce facem cu Siri, dar ceva mai mult, aveți posibilitatea de fapt, 72 00:03:23,290 --> 00:03:25,690 spune ce vrei și telefonul se va înțelege totul. 73 00:03:25,690 --> 00:03:28,350 Și poate avea urmări întrebări și să păstreze vorbesc. 74 00:03:28,350 --> 00:03:30,880 Asta e ceva foarte interesant, în opinia mea. 75 00:03:30,880 --> 00:03:33,070 >> Deci, ceva despre limbi naturale. 76 00:03:33,070 --> 00:03:36,220 Ceva foarte interesant despre limbile naturale este faptul că, și acest lucru este 77 00:03:36,220 --> 00:03:38,470 credit pentru a-mi profesor de lingvistică, Maria Polinsky. 78 00:03:38,470 --> 00:03:40,830 Ea dă un exemplu și cred că e foarte interesant. 79 00:03:40,830 --> 00:03:47,060 Pentru că am învățat limba de când ne-am născut și apoi nativ noastră 80 00:03:47,060 --> 00:03:49,170 Limba fel de creste pe noi. 81 00:03:49,170 --> 00:03:52,570 >> Și, practic, să învețe limba de la efort minim, corect? 82 00:03:52,570 --> 00:03:56,700 Esti doar obtinerea de intrare de la dvs. părinții de ceea ce sună limba 83 00:03:56,700 --> 00:03:58,770 ca și pe care tocmai ați afla. 84 00:03:58,770 --> 00:04:02,240 Deci, e interesant, pentru că dacă te uiți la aceste Exemple, de exemplu. 85 00:04:02,240 --> 00:04:06,980 Te uiți, "Mary pune pe o haină fiecare timp ea iese din casă. " 86 00:04:06,980 --> 00:04:10,650 >> În acest caz, este posibil să aveți Cuvântul "ea" se referă la Mary, corect? 87 00:04:10,650 --> 00:04:13,500 Vă pot spune "Mary pune pe un strat de fiecare dată Maria părăsește 88 00:04:13,500 --> 00:04:14,960 casa. ", astfel încât e bine. 89 00:04:14,960 --> 00:04:19,370 Dar, apoi, dacă te uiți la sentința "A pune pe o haină de fiecare dată Maria 90 00:04:19,370 --> 00:04:22,850 iese din casă. "știi că e imposibil de spus că "ea" este 91 00:04:22,850 --> 00:04:24,260 referindu-se la Mary. 92 00:04:24,260 --> 00:04:27,070 >> Nu e nici un fel de a spune că "Maria pune pe un strat de fiecare dată Mary pleacă 93 00:04:27,070 --> 00:04:30,790 casa. "Deci e interesant pentru că aceasta este un fel de intuiție 94 00:04:30,790 --> 00:04:32,890 că fiecare vorbitor nativ are. 95 00:04:32,890 --> 00:04:36,370 Și nimeni nu a fost învățat că acest lucru este modul în care funcționează sintaxa. 96 00:04:36,370 --> 00:04:41,930 Și pe care le poate avea doar această "ea" referindu-se la Maria, în acest caz, în primul rând, 97 00:04:41,930 --> 00:04:44,260 și de fapt, în acest alt de asemenea, dar nu în aceasta. 98 00:04:44,260 --> 00:04:46,500 Dar toată lumea devine un fel de pentru același răspuns. 99 00:04:46,500 --> 00:04:48,580 Toată lumea este de acord cu asta. 100 00:04:48,580 --> 00:04:53,280 Deci, este foarte interesant cum, deși nu știi toate regulile 101 00:04:53,280 --> 00:04:55,575 în limba dumneavoastră vă fel de înțeles modul în care funcționează limba. 102 00:04:55,575 --> 00:04:59,020 103 00:04:59,020 --> 00:05:01,530 >> Deci, cel mai interesant lucru despre naturale Limba este că nu trebuie să 104 00:05:01,530 --> 00:05:06,970 știu nici sintaxa să știe dacă o propoziție este gramaticale sau negramatical pentru 105 00:05:06,970 --> 00:05:08,810 cele mai multe cazuri. 106 00:05:08,810 --> 00:05:13,220 Ceea ce te face să crezi că poate ceea ce se întâmplă este că, prin viața ta, tu 107 00:05:13,220 --> 00:05:17,410 chiar a păstra achiziție mai mult și mai mult Exemple de spus pentru tine. 108 00:05:17,410 --> 00:05:19,800 Și apoi vă păstrați de memorare toate propozițiile. 109 00:05:19,800 --> 00:05:24,230 Și atunci când cineva îți spune ceva, ai auzit această frază și 110 00:05:24,230 --> 00:05:27,040 te uiți la vocabularul pedepselor și a vedea dacă 111 00:05:27,040 --> 00:05:28,270 această frază este acolo. 112 00:05:28,270 --> 00:05:29,830 Și dacă este acolo, spune că e gramatical. 113 00:05:29,830 --> 00:05:31,740 În cazul în care nu-i spui că e negramatical. 114 00:05:31,740 --> 00:05:35,150 >> Deci, în acest caz, v-ar spune, oh, astfel încât să aibă o listă uriașă de toate 115 00:05:35,150 --> 00:05:36,140 posibile propoziții. 116 00:05:36,140 --> 00:05:38,240 Și atunci când auzi o propoziție, știi dacă e gramaticale sau 117 00:05:38,240 --> 00:05:39,450 nu se bazează pe faptul că. 118 00:05:39,450 --> 00:05:42,360 Chestia e că, dacă te uiți la o propoziție, de exemplu, " 119 00:05:42,360 --> 00:05:47,540 cinci capete CS50 TFS fierte orbi caracatiță, folosind o cană DAPA. "Este 120 00:05:47,540 --> 00:05:49,630 cu siguranta nu o propoziție că ai auzit înainte. 121 00:05:49,630 --> 00:05:52,380 Dar, în același timp, știi că e destul de mult gramatical, corect? 122 00:05:52,380 --> 00:05:55,570 Nu există greșeli gramaticale și vă pot spune că 123 00:05:55,570 --> 00:05:57,020 este un posibil propoziție. 124 00:05:57,020 --> 00:06:01,300 >> Deci, ne face să credem că, de fapt, astfel încât ne-am învăța limba este nu numai 125 00:06:01,300 --> 00:06:07,090 de a avea o bază de date foarte mare de posibile cuvinte sau fraze, dar mai mult de 126 00:06:07,090 --> 00:06:11,490 înțelegerea relației dintre cuvinte în aceste propoziții. 127 00:06:11,490 --> 00:06:14,570 Asta face sens? 128 00:06:14,570 --> 00:06:19,370 Deci, atunci întrebarea este, poate calculatoare învăța limbi străine? 129 00:06:19,370 --> 00:06:21,490 Putem învăța limba de calculatoare? 130 00:06:21,490 --> 00:06:24,230 >> Deci, să ne gândim a diferenței între un vorbitor nativ al unei limbi 131 00:06:24,230 --> 00:06:25,460 și un computer. 132 00:06:25,460 --> 00:06:27,340 Deci, ce se întâmplă cu vorbitorul? 133 00:06:27,340 --> 00:06:30,430 Ei bine, vorbitorul nativ învață o Limba de expunerea la ea. 134 00:06:30,430 --> 00:06:34,200 De obicei, de ani de copilărie. 135 00:06:34,200 --> 00:06:38,570 Deci, practic, ai doar un copil, și păstrați-vă să vorbesc cu ea, și ea 136 00:06:38,570 --> 00:06:40,540 doar învață cum să vorbească limba, nu? 137 00:06:40,540 --> 00:06:42,660 Deci, tu esti de fapt da intrare la copil. 138 00:06:42,660 --> 00:06:45,200 Deci, atunci aveți posibilitatea să susțin că un calculator se poate face acelasi lucru, nu? 139 00:06:45,200 --> 00:06:49,510 Vă pot da doar limba ca intrare la computer. 140 00:06:49,510 --> 00:06:53,410 >> Ca de exemplu o grămadă de fișiere care au cărți în limba engleză. 141 00:06:53,410 --> 00:06:56,190 Poate că este o modalitate prin care ar putea preda, eventual, o 142 00:06:56,190 --> 00:06:57,850 calculator engleză, corect? 143 00:06:57,850 --> 00:07:01,000 Și, de fapt, dacă stai să te gândești, este nevoie de tine, poate un cuplu 144 00:07:01,000 --> 00:07:02,680 zile pentru a citi o carte. 145 00:07:02,680 --> 00:07:05,760 Pentru un calculator este nevoie de un al doilea la uita-te la toate cuvintele dintr-o carte. 146 00:07:05,760 --> 00:07:10,810 Astfel încât vă puteți gândi că ar putea fi doar acest argument de intrare de la în jurul valorii de tine, 147 00:07:10,810 --> 00:07:15,440 asta nu e de ajuns să spun că asta e ceva care numai oamenii pot face. 148 00:07:15,440 --> 00:07:17,680 Puteți să vă gândiți de calculatoare De asemenea, se poate obține de intrare. 149 00:07:17,680 --> 00:07:21,170 >> Al doilea lucru este că vorbitorii nativi de asemenea, au un creier care are 150 00:07:21,170 --> 00:07:23,870 capacitatea de învățare a limbilor străine. 151 00:07:23,870 --> 00:07:27,020 Dar, dacă te gândești la asta, un creier este un lucru solid. 152 00:07:27,020 --> 00:07:30,450 Când te-ai nascut, este deja stabilit - 153 00:07:30,450 --> 00:07:31,320 acest lucru este creierul tău. 154 00:07:31,320 --> 00:07:34,660 Și, pe măsură ce cresc, tu chiar a lua mai mult de intrare de limbă și poate substante nutritive 155 00:07:34,660 --> 00:07:35,960 și alte chestii. 156 00:07:35,960 --> 00:07:38,170 Dar destul de mult creierul este un lucru solid. 157 00:07:38,170 --> 00:07:41,290 >> Deci, vă pot spune, ei bine, poate că puteți construi un calculator care are o grămadă de 158 00:07:41,290 --> 00:07:45,890 funcții și metode care doar imita capacitatea de învățare a limbilor străine. 159 00:07:45,890 --> 00:07:49,630 Deci, în acest sens, ati putea spune, ei bine, eu poate avea un calculator care are toate 160 00:07:49,630 --> 00:07:52,270 lucruri am nevoie pentru a învăța limba. 161 00:07:52,270 --> 00:07:56,200 Și ultimul lucru este că un nativ vorbitor învață de la încercare și eroare. 162 00:07:56,200 --> 00:08:01,090 Deci, practic, un alt lucru important în învățarea limbilor străine este ca un fel 163 00:08:01,090 --> 00:08:05,340 de a învăța lucruri prin generalizări de ceea ce auzi. 164 00:08:05,340 --> 00:08:10,280 >> Deci, după cum vă cresc ai invatat asta unele cuvinte sunt mai mult ca substantive, 165 00:08:10,280 --> 00:08:11,820 unele altele sunt adjective. 166 00:08:11,820 --> 00:08:14,250 Și nu trebuie să aibă nici cunoaștere a lingvisticii 167 00:08:14,250 --> 00:08:15,040 să înțeleagă că. 168 00:08:15,040 --> 00:08:18,560 Dar pur și simplu știi că există câteva cuvinte sunt poziționate într-o parte a 169 00:08:18,560 --> 00:08:22,570 propoziție și altele în alte părți de propoziție. 170 00:08:22,570 --> 00:08:26,110 >> Și că atunci când faci ceva care este ca o frază care nu este corect - 171 00:08:26,110 --> 00:08:28,770 poate cauza o generalizare peste de exemplu. 172 00:08:28,770 --> 00:08:32,210 Poate că atunci când ai crescut, ai observat că pluralul este de obicei 173 00:08:32,210 --> 00:08:35,809 format prin punerea un S la sfârșitul cuvântului. 174 00:08:35,809 --> 00:08:40,042 Și apoi încercați să faceți pluralul de "cerb" ca "cerbi" sau "dinte" ar fi 175 00:08:40,042 --> 00:08:44,780 "dinților". Deci părinții tăi sau cineva te corectează și spune, nu, 176 00:08:44,780 --> 00:08:49,020 pluralul "cerb" este "cerb", iar plural de "dinte" este "dintilor." Și apoi 177 00:08:49,020 --> 00:08:50,060 te invata aceste lucruri. 178 00:08:50,060 --> 00:08:51,520 Astfel încât să învețe de la încercare și eroare. 179 00:08:51,520 --> 00:08:53,100 >> Dar puteți face, de asemenea, că cu un calculator. 180 00:08:53,100 --> 00:08:55,310 Puteți avea ceva numit învățare armare. 181 00:08:55,310 --> 00:08:58,560 Care este de fapt ca da o calculator o recompensă ori de câte ori o face 182 00:08:58,560 --> 00:08:59,410 ceva corect. 183 00:08:59,410 --> 00:09:04,710 Și dându-i opusul unei recompense și, atunci când face ceva greșit. 184 00:09:04,710 --> 00:09:07,410 Puteți vedea de fapt, că dacă te duci pentru Google Translate și încercați să 185 00:09:07,410 --> 00:09:10,220 traduce o propoziție, ea vă cere pentru feedback-ul. 186 00:09:10,220 --> 00:09:13,240 Deci, dacă spui, oh, există o mai bună traducere acestei propoziții. 187 00:09:13,240 --> 00:09:18,140 Puteți să-l introduceți în sus și apoi în cazul în care o mulțime de oameni tot spun că este o mai bună 188 00:09:18,140 --> 00:09:21,560 traducere, doar învață că ea ar trebui să folosească traducerea în loc de 189 00:09:21,560 --> 00:09:22,960 cel care a fost da. 190 00:09:22,960 --> 00:09:28,830 >> Deci, aceasta este o întrebare foarte filozofic pentru a vedea în cazul în care computerele vor fi 191 00:09:28,830 --> 00:09:30,340 posibilitatea de a vorbi sau nu în viitor. 192 00:09:30,340 --> 00:09:34,440 Dar am mari speranțe că acestea pot doar pe baza acestor argumente. 193 00:09:34,440 --> 00:09:38,570 Dar e doar mai mult de o filosofic întrebare. 194 00:09:38,570 --> 00:09:43,460 >> Deci, în timp ce calculatoarele încă nu se poate vorbi, care sunt lucrurile pe care le putem face? 195 00:09:43,460 --> 00:09:47,070 Unele lucruri cu adevarat interesante sunt clasificare a datelor. 196 00:09:47,070 --> 00:09:53,210 Deci, de exemplu, voi ști că serviciile de e-mail face, pentru 197 00:09:53,210 --> 00:09:55,580 exemplu, filtrarea mesajelor spam. 198 00:09:55,580 --> 00:09:59,070 Deci, ori de câte ori primiți spam-ul, ea încearcă pentru a filtra în altă casetă. 199 00:09:59,070 --> 00:10:00,270 Deci, cum se face asta? 200 00:10:00,270 --> 00:10:06,080 Nu e ca la calculator doar știe adrese de e-mail ce se trimite spam. 201 00:10:06,080 --> 00:10:09,130 Deci, este mai mult pe baza conținutului de mesajul, sau, poate, titlul, sau 202 00:10:09,130 --> 00:10:11,310 poate că unii model care le au. 203 00:10:11,310 --> 00:10:15,690 >> Deci, de fapt, ceea ce se poate face este să obțineți un mulțime de date de e-mailuri care sunt spam-ul, 204 00:10:15,690 --> 00:10:19,980 e-mailuri care nu sunt spam-ul, si de a invata ceea ce un fel de modele aveți în 205 00:10:19,980 --> 00:10:21,000 cele care sunt spam-ul. 206 00:10:21,000 --> 00:10:23,260 Și aceasta este o parte din calcul lingvistică. 207 00:10:23,260 --> 00:10:24,720 Se numește clasificare a datelor. 208 00:10:24,720 --> 00:10:28,100 Și vom fapt de gând pentru a vedea o exemplu de faptul că în următoarele slide-uri. 209 00:10:28,100 --> 00:10:32,910 >> Al doilea lucru este de limbaj natural prelucrare, care este lucrul pe care 210 00:10:32,910 --> 00:10:36,580 Graph Căutare este de a face de a lăsa vă scrie o propoziție. 211 00:10:36,580 --> 00:10:38,690 Și ea are încredere în tine să înțeleagă ce este sensul și dă 212 00:10:38,690 --> 00:10:39,940 ai un rezultat mai bun. 213 00:10:39,940 --> 00:10:43,880 De fapt, dacă te duci la Google sau Bing și veți căuta ceva de genul Lady 214 00:10:43,880 --> 00:10:47,060 Înălțime Gaga, tu esti de fapt de gând pentru a obține 5 "1" în loc de informații 215 00:10:47,060 --> 00:10:50,170 de la ei, deoarece ea intelege de fapt ce vorbești. 216 00:10:50,170 --> 00:10:52,140 Deci, asta e parte din naturale procesarea limbajului. 217 00:10:52,140 --> 00:10:57,000 >> Sau, de asemenea, atunci când utilizați Siri, în primul rând aveți un algoritm care încearcă să 218 00:10:57,000 --> 00:11:01,130 traduce ceea ce spui în cuvinte, în text. 219 00:11:01,130 --> 00:11:03,690 Și apoi încearcă să traducă care în sens. 220 00:11:03,690 --> 00:11:06,570 Deci, asta e tot parte a naturale procesarea limbajului. 221 00:11:06,570 --> 00:11:08,320 >> Apoi, aveți de traducere automată - 222 00:11:08,320 --> 00:11:10,300 care este de fapt unul din preferatele mele - 223 00:11:10,300 --> 00:11:14,060 care este doar traducerea din o limbă în alta. 224 00:11:14,060 --> 00:11:17,950 Astfel încât vă puteți gândi că atunci când faci traducere automată, aveți 225 00:11:17,950 --> 00:11:19,750 posibilități infinite de fraze. 226 00:11:19,750 --> 00:11:22,960 Deci, nu există nici o modalitate de stocare doar fiecare traducere. 227 00:11:22,960 --> 00:11:27,440 Deci, va trebui să vină cu interesant algoritmi pentru a putea 228 00:11:27,440 --> 00:11:30,110 traduce fiecare propoziție într-un fel. 229 00:11:30,110 --> 00:11:32,483 >> Voi aveți întrebări până acum? 230 00:11:32,483 --> 00:11:34,450 Nu? 231 00:11:34,450 --> 00:11:34,830 OK. 232 00:11:34,830 --> 00:11:36,900 >> Deci, ce vom vedea azi? 233 00:11:36,900 --> 00:11:39,300 Mai întâi de toate, am de gând să vorbesc despre problema de clasificare. 234 00:11:39,300 --> 00:11:41,440 Astfel cea pe care am fost spune despre spam. 235 00:11:41,440 --> 00:11:46,820 Ceea ce am de gând să faceți este, versuri date la o melodie, puteți încerca să dau seama 236 00:11:46,820 --> 00:11:49,810 cu mare probabilitate care este cantareata? 237 00:11:49,810 --> 00:11:53,590 Să spunem că am melodii de la Lady Gaga și Katy Perry, dacă vă dau un 238 00:11:53,590 --> 00:11:58,130 cântec nou, poate să îți dai seama dacă e Katy Perry sau Lady Gaga? 239 00:11:58,130 --> 00:12:01,490 >> Al doilea, eu sunt doar de gând să vorbesc despre problema de segmentare. 240 00:12:01,490 --> 00:12:05,780 Deci, eu nu știu dacă voi știți, dar Chineză, japoneză, altele din Asia de Est 241 00:12:05,780 --> 00:12:08,090 limbi, și alte limbi în general, nu au 242 00:12:08,090 --> 00:12:09,830 spații între cuvinte. 243 00:12:09,830 --> 00:12:13,540 Și apoi, dacă te gândești la modul în care tipul tau de calculator încearcă să 244 00:12:13,540 --> 00:12:18,600 înțelege procesarea limbajului natural, se uită la cuvintele și 245 00:12:18,600 --> 00:12:21,500 încearcă să înțeleagă relațiile între ele, nu? 246 00:12:21,500 --> 00:12:25,440 Dar, apoi, dacă aveți din China, și tu avea zero spatii, este foarte greu de 247 00:12:25,440 --> 00:12:28,360 afla ce este relația dintre cuvinte, pentru că ei nu au nici 248 00:12:28,360 --> 00:12:29,530 cuvinte de la primul. 249 00:12:29,530 --> 00:12:32,600 Deci, va trebui să faci ceva numit Segmentarea ceea ce înseamnă doar punerea 250 00:12:32,600 --> 00:12:36,490 spații între ceea ce am numi cuvinte în aceste limbi. 251 00:12:36,490 --> 00:12:37,740 Face sens? 252 00:12:37,740 --> 00:12:39,680 253 00:12:39,680 --> 00:12:41,540 >> Și apoi vom vorbesc despre sintaxa. 254 00:12:41,540 --> 00:12:44,050 Deci, doar un pic despre naturale procesarea limbajului. 255 00:12:44,050 --> 00:12:45,420 O să fie doar o imagine de ansamblu. 256 00:12:45,420 --> 00:12:50,700 Așa că astăzi, de fapt ceea ce vreau să fac se da voi un pic de o 257 00:12:50,700 --> 00:12:53,930 în interiorul a ceea ce sunt posibilitățile pe care le puteți face cu de calcul 258 00:12:53,930 --> 00:12:54,960 lingvistică. 259 00:12:54,960 --> 00:13:00,410 Și apoi puteți vedea ceea ce crezi este rece printre acele lucruri. 260 00:13:00,410 --> 00:13:02,270 Și poate că vă puteți gândi la un proiect și veni vorbi cu mine. 261 00:13:02,270 --> 00:13:05,260 Și vă pot da sfaturi despre cum să-l pună în aplicare. 262 00:13:05,260 --> 00:13:09,060 >> Deci, sintaxa va fi un pic despre Graph Căutare și mașină 263 00:13:09,060 --> 00:13:09,670 traducere. 264 00:13:09,670 --> 00:13:13,650 Mă duc să dau un exemplu de cât de ai putea, de exemplu, traduce 265 00:13:13,650 --> 00:13:16,020 ceva din portugheză în engleză. 266 00:13:16,020 --> 00:13:17,830 Sună bine? 267 00:13:17,830 --> 00:13:19,293 >> Deci, mai întâi, problema de clasificare. 268 00:13:19,293 --> 00:13:23,590 Îi voi spune că această parte a seminarului va fi cea mai mare provocare 269 00:13:23,590 --> 00:13:27,560 una doar pentru că acolo se întâmplă să fie unele de codificare. 270 00:13:27,560 --> 00:13:29,470 Dar aceasta va fi Python. 271 00:13:29,470 --> 00:13:34,380 Știu că voi nu știți Python, așa Mă duc să explice pe high 272 00:13:34,380 --> 00:13:35,750 nivelul ceea ce fac. 273 00:13:35,750 --> 00:13:40,900 Și nu trebuie să aibă grijă într-adevăr prea mult despre sintaxa pentru că asta e 274 00:13:40,900 --> 00:13:42,140 ceva voi putea învăța. 275 00:13:42,140 --> 00:13:42,540 OK? 276 00:13:42,540 --> 00:13:43,580 Sună bine. 277 00:13:43,580 --> 00:13:46,020 >> Deci, care este problema de clasificare? 278 00:13:46,020 --> 00:13:49,140 Deci ai dat niște versuri pentru un cântec, și doriți să ghicesc 279 00:13:49,140 --> 00:13:50,620 care este o cântă. 280 00:13:50,620 --> 00:13:54,045 Și acest lucru poate fi de orice fel de alte probleme. 281 00:13:54,045 --> 00:13:59,980 Astfel încât acesta poate fi, de exemplu, aveți o campania prezidențială și aveți un 282 00:13:59,980 --> 00:14:02,610 vorbire, și doriți să găsiți daca a fost, de exemplu, 283 00:14:02,610 --> 00:14:04,470 Obama sau Mitt Romney. 284 00:14:04,470 --> 00:14:07,700 Sau puteți avea o grămadă de email-uri și pe care doriți să dau seama dacă sunt 285 00:14:07,700 --> 00:14:08,890 spam sau nu. 286 00:14:08,890 --> 00:14:11,440 Deci, e doar clasificare unele date pe baza cuvintelor 287 00:14:11,440 --> 00:14:13,790 pe care le au acolo. 288 00:14:13,790 --> 00:14:16,295 >> Deci, pentru a face acest lucru, va trebui să face unele ipoteze. 289 00:14:16,295 --> 00:14:20,570 Deci, o mulțime de lucruri despre lingvistică computațională este de a face presupuneri, 290 00:14:20,570 --> 00:14:24,100 ipoteze obicei inteligente, astfel încât puteți obține rezultate bune. 291 00:14:24,100 --> 00:14:26,670 Încercarea de a crea un model pentru el. 292 00:14:26,670 --> 00:14:31,290 Și apoi încercați să-l afară și a vedea dacă acesta funcționează, dacă vă oferă o precizie bună. 293 00:14:31,290 --> 00:14:33,940 Și dacă o face, atunci ai încercați să-l îmbunătățească. 294 00:14:33,940 --> 00:14:37,640 În cazul în care nu, tu esti ca, OK, poate am ar trebui să facă o presupunere diferit. 295 00:14:37,640 --> 00:14:44,030 >> Astfel presupunerea că vom face este că un artist, de obicei, cântă 296 00:14:44,030 --> 00:14:49,220 despre un subiect de mai multe ori, și poate folosește cuvinte de mai multe ori doar 297 00:14:49,220 --> 00:14:50,270 deoarece acestea sunt folosite pentru a-l. 298 00:14:50,270 --> 00:14:51,890 Vă puteți gândi doar de prietenul tău. 299 00:14:51,890 --> 00:14:57,350 Sunt sigur că voi toți au prieteni care spune fraza lor semnătură, 300 00:14:57,350 --> 00:14:59,260 literalmente pentru fiecare propoziție - 301 00:14:59,260 --> 00:15:02,660 ca un anumit cuvânt sau o anumită fraza care se spune pentru 302 00:15:02,660 --> 00:15:04,020 fiecare propoziție. 303 00:15:04,020 --> 00:15:07,920 >> Și ce vă pot spune este că dacă vedeți o frază care are o semnătură 304 00:15:07,920 --> 00:15:11,450 frază, puteți ghici că, probabil, Prietenul tău este 305 00:15:11,450 --> 00:15:13,310 una se spune, nu? 306 00:15:13,310 --> 00:15:18,410 Deci, face ca ipoteză și apoi care este modul în care creați un model. 307 00:15:18,410 --> 00:15:24,440 >> Exemplul pe care am de gând să dea este pe cum Lady Gaga, de exemplu, persoane 308 00:15:24,440 --> 00:15:27,430 spune că ea folosește "copil" pentru toate ei numărul unu melodii. 309 00:15:27,430 --> 00:15:32,270 Și de fapt, acest lucru este un video care arată ei spunând cuvântul "copil" pentru 310 00:15:32,270 --> 00:15:33,410 melodii diferite. 311 00:15:33,410 --> 00:15:33,860 >> [VIDEO PLAYBACK] 312 00:15:33,860 --> 00:15:34,310 >> - (CANTO) Baby. 313 00:15:34,310 --> 00:15:36,220 Baby. 314 00:15:36,220 --> 00:15:37,086 Baby. 315 00:15:37,086 --> 00:15:37,520 Baby. 316 00:15:37,520 --> 00:15:37,770 Baby. 317 00:15:37,770 --> 00:15:38,822 Babe. 318 00:15:38,822 --> 00:15:39,243 Baby. 319 00:15:39,243 --> 00:15:40,085 Baby. 320 00:15:40,085 --> 00:15:40,510 Baby. 321 00:15:40,510 --> 00:15:40,850 Baby. 322 00:15:40,850 --> 00:15:41,090 >> [END VIDEO PLAYBACK- 323 00:15:41,090 --> 00:15:44,020 >> LUCAS FREITAS: Deci, există, cred, 40 de melodii aici, în care ea spune 324 00:15:44,020 --> 00:15:48,690 cuvântul "copil". Astfel încât să puteți ghici practic că dacă vedeți un cântec care are 325 00:15:48,690 --> 00:15:52,180 cuvântul "copil," există unele mare probabilitatea că este Lady Gaga. 326 00:15:52,180 --> 00:15:56,450 Dar haideți să încercăm să dezvolte această în continuare mai mult formal. 327 00:15:56,450 --> 00:16:00,470 >> Deci, acestea sunt versuri de melodii de Lady Gaga și Katy Perry. 328 00:16:00,470 --> 00:16:04,120 Deci, te uiti la Lady Gaga, tu le vezi au o mulțime de evenimente de "copil," un 329 00:16:04,120 --> 00:16:07,710 mulțime de evenimente de "cale." Și apoi Katy Perry are o multime de evenimente de 330 00:16:07,710 --> 00:16:10,360 "," O mulțime de evenimente de "foc". 331 00:16:10,360 --> 00:16:14,560 >> Deci, practic, ceea ce vrem să face este, veți obține un liric. 332 00:16:14,560 --> 00:16:20,480 Să spunem că veți obține un liric pentru o melodie care este "copil," doar "copil". Dacă 333 00:16:20,480 --> 00:16:24,750 veți obține doar cuvântul "copil," și acest lucru este toate datele pe care le au de la 334 00:16:24,750 --> 00:16:27,880 Lady Gaga și Katy Perry, care ar fi ai ghicit este persoana 335 00:16:27,880 --> 00:16:29,370 care cântă melodia? 336 00:16:29,370 --> 00:16:32,360 Lady Gaga sau Katy Perry? 337 00:16:32,360 --> 00:16:33,150 Lady Gaga, corect? 338 00:16:33,150 --> 00:16:37,400 Pentru că ea este singura care spune "Copil". Acest lucru suna stupid, nu? 339 00:16:37,400 --> 00:16:38,760 OK, acest lucru este foarte usor. 340 00:16:38,760 --> 00:16:41,860 Mă uit la cele două cântece și de Desigur, ea e singura care are 341 00:16:41,860 --> 00:16:42,660 "Copil". 342 00:16:42,660 --> 00:16:44,740 >> Dar ce se întâmplă dacă aveți o grămadă de cuvinte? 343 00:16:44,740 --> 00:16:50,900 Dacă aveți un lyric real, ceva cum ar fi, "iubito, eu doar 344 00:16:50,900 --> 00:16:51,610 a mers pentru a vedea un [? CFT?] 345 00:16:51,610 --> 00:16:54,020 prelegere, "sau ceva de genul asta, și atunci va trebui de fapt să dau seama - 346 00:16:54,020 --> 00:16:55,780 bazat pe toate aceste cuvinte - 347 00:16:55,780 --> 00:16:58,350 care este artistul care, probabil, cântat acest cântec? 348 00:16:58,350 --> 00:17:01,860 Deci, haideți să încercăm să dezvolte acest lucru un pic mai departe. 349 00:17:01,860 --> 00:17:05,630 >> OK, deci bazat doar pe datele pe care le are, se pare că Gaga este, probabil, 350 00:17:05,630 --> 00:17:06,260 cantareata. 351 00:17:06,260 --> 00:17:07,904 Dar cum putem scrie acest lucru mai mult formal? 352 00:17:07,904 --> 00:17:10,579 353 00:17:10,579 --> 00:17:13,140 Și acolo va fi un pic bit de statistici. 354 00:17:13,140 --> 00:17:15,880 Deci, dacă te pierzi, doar încercați pentru a înțelege conceptul. 355 00:17:15,880 --> 00:17:18,700 Nu contează dacă ați înțeles ecuațiile foarte bine. 356 00:17:18,700 --> 00:17:22,150 Acest lucru este mergi la a fi on-line. 357 00:17:22,150 --> 00:17:25,490 >> Deci, practic, ceea ce am de calcul este probabilitate că acest cântec este de 358 00:17:25,490 --> 00:17:28,040 Lady Gaga având în vedere că - 359 00:17:28,040 --> 00:17:30,660 astfel încât acest bar înseamnă având în vedere că - 360 00:17:30,660 --> 00:17:33,680 Am văzut cuvântul "copil". Asta face sens? 361 00:17:33,680 --> 00:17:35,540 Așa că am încercat să calculeze că probabilitatea. 362 00:17:35,540 --> 00:17:38,540 >> Deci, nu există această teoremă numită Bayes teorema care spune că 363 00:17:38,540 --> 00:17:43,330 probabilitate de A B dat, este probabilitate de B Având în vedere o, ori 364 00:17:43,330 --> 00:17:47,660 O probabilitate de, peste probabilitatea a B. Aceasta este o ecuație lungă. 365 00:17:47,660 --> 00:17:51,970 Dar ceea ce trebuie să înțelegeți de la că este că acest lucru este ceea ce vreau să 366 00:17:51,970 --> 00:17:52,830 calcula, corect? 367 00:17:52,830 --> 00:17:56,570 Astfel probabilitatea ca acest cântec este de Lady Gaga având în vedere că am văzut cuvântul 368 00:17:56,570 --> 00:17:58,230 "Copil". 369 00:17:58,230 --> 00:18:02,960 >> Și acum ce Primesc este probabilitate de cuvântul "copil" dat 370 00:18:02,960 --> 00:18:04,390 că am Lady Gaga. 371 00:18:04,390 --> 00:18:07,220 Și ceea ce este faptul că de fapt? 372 00:18:07,220 --> 00:18:10,500 Ce înseamnă asta este, ceea ce este probabilitatea de a vedea cuvântul "copil" 373 00:18:10,500 --> 00:18:12,130 în versuri Gaga? 374 00:18:12,130 --> 00:18:16,240 Dacă vreau să calculeze că într-o foarte mod simplu, este doar numărul de 375 00:18:16,240 --> 00:18:23,640 ori am vedea "copil" din numărul total de cuvinte în versuri Gaga, corect? 376 00:18:23,640 --> 00:18:27,600 Care este frecvența pe care o văd acest cuvânt în activitatea Gaga? 377 00:18:27,600 --> 00:18:30,530 Face sens? 378 00:18:30,530 --> 00:18:33,420 >> Al doilea termen este probabilitate de Gaga. 379 00:18:33,420 --> 00:18:34,360 Ce înseamnă asta? 380 00:18:34,360 --> 00:18:38,550 Asta înseamnă, în esență, ceea ce este probabilitate de clasificare 381 00:18:38,550 --> 00:18:40,690 unele versuri ca Gaga? 382 00:18:40,690 --> 00:18:45,320 Și că este un fel de ciudat, dar să ne gândim de exemplu. 383 00:18:45,320 --> 00:18:49,230 Deci, haideți să spunem că probabilitatea de având "copil", într-un cântec este la fel 384 00:18:49,230 --> 00:18:51,760 pentru Gaga și Britney Spears. 385 00:18:51,760 --> 00:18:54,950 Dar Britney Spears are de două ori mai multe melodii decât Lady Gaga. 386 00:18:54,950 --> 00:19:00,570 Deci, dacă cineva vă oferă doar la întâmplare versuri de "copil", primul lucru pe care 387 00:19:00,570 --> 00:19:04,710 uita-te la este, ceea ce este probabilitatea de având "copil", într-un cântec Gaga, "baby" 388 00:19:04,710 --> 00:19:05,410 într-un cântec Britney? 389 00:19:05,410 --> 00:19:06,460 Și e același lucru. 390 00:19:06,460 --> 00:19:10,040 >> Deci, al doilea lucru pe care îl veți vedea este, bine, ceea ce este probabilitatea de 391 00:19:10,040 --> 00:19:13,770 acest liric de la sine fiind un lyric Gaga, și ceea ce este probabilitatea 392 00:19:13,770 --> 00:19:15,380 fiind un lyric Britney? 393 00:19:15,380 --> 00:19:18,950 Deci, din moment Britney are atât de mult mai multe versuri decât Gaga, tu ar fi, probabil, 394 00:19:18,950 --> 00:19:21,470 să zicem, ei bine, acest lucru este, probabil, un liric Britney. 395 00:19:21,470 --> 00:19:23,340 De aceea avem această numi chiar aici. 396 00:19:23,340 --> 00:19:24,670 Probabilitatea de Gaga. 397 00:19:24,670 --> 00:19:26,950 Are sens? 398 00:19:26,950 --> 00:19:28,660 Nu-i așa? 399 00:19:28,660 --> 00:19:29,370 OK. 400 00:19:29,370 --> 00:19:33,500 >> Iar ultima este doar probabilitatea de "copil" care nu 401 00:19:33,500 --> 00:19:34,810 într-adevăr contează atât de mult. 402 00:19:34,810 --> 00:19:39,940 Dar e probabilitatea de vedea "copil" în limba engleză. 403 00:19:39,940 --> 00:19:42,725 Noi, de obicei, nu-mi pasă că mult despre acest termen. 404 00:19:42,725 --> 00:19:44,490 Asta face sens? 405 00:19:44,490 --> 00:19:48,110 Deci probabilitatea Gaga este numit probabilitatea prealabilă 406 00:19:48,110 --> 00:19:49,530 a Gaga de clasă. 407 00:19:49,530 --> 00:19:53,840 Pentru că aceasta înseamnă doar că, ceea ce este probabilitatea de a avea acea clasă - 408 00:19:53,840 --> 00:19:55,520 care este Gaga - 409 00:19:55,520 --> 00:19:59,350 doar, în general, doar fără condiții. 410 00:19:59,350 --> 00:20:02,560 >> Și apoi, când am probabilitate de Gaga a dat "copil", o numim plus 411 00:20:02,560 --> 00:20:06,160 plini de lacrimi o probabilitate, deoarece este probabilitatea de a avea 412 00:20:06,160 --> 00:20:08,300 Gaga a dat unele dovezi. 413 00:20:08,300 --> 00:20:11,050 Deci, eu sunt oferindu-vă dovezile pe care l-am văzut copilul cuvânt și 414 00:20:11,050 --> 00:20:12,690 melodia face sens? 415 00:20:12,690 --> 00:20:15,960 416 00:20:15,960 --> 00:20:16,410 OK. 417 00:20:16,410 --> 00:20:22,400 >> Deci, dacă am calculat că pentru fiecare de cântece pentru Lady Gaga, 418 00:20:22,400 --> 00:20:25,916 ceea ce ar fi - 419 00:20:25,916 --> 00:20:27,730 aparent, nu mă pot mișca aceasta. 420 00:20:27,730 --> 00:20:31,850 421 00:20:31,850 --> 00:20:36,920 Probabilitatea Gaga va fi ceva de genul, 2 de peste 24, ori de 1/2, 422 00:20:36,920 --> 00:20:38,260 peste 2 peste 53. 423 00:20:38,260 --> 00:20:40,640 Nu conteaza daca stii ce aceste numere sunt provin din. 424 00:20:40,640 --> 00:20:44,750 Dar este doar un număr, care se întâmplă pentru a fi mai mult de 0, corect? 425 00:20:44,750 --> 00:20:48,610 >> Și apoi, când am face Katy Perry, probabilitate de "copil" dat Katy este 426 00:20:48,610 --> 00:20:49,830 deja 0, nu? 427 00:20:49,830 --> 00:20:52,820 Pentru că nu există nici un "copil" în Katy Perry. 428 00:20:52,820 --> 00:20:56,360 Deci, atunci acest lucru devine 0, iar Gaga victorii, ceea ce înseamnă că Gaga este 429 00:20:56,360 --> 00:20:57,310 probabil cantareata. 430 00:20:57,310 --> 00:20:58,560 Asta face sens? 431 00:20:58,560 --> 00:21:00,700 432 00:21:00,700 --> 00:21:01,950 OK. 433 00:21:01,950 --> 00:21:04,160 434 00:21:04,160 --> 00:21:11,750 >> Așa că dacă vreau să fac acest lucru mai oficial, Eu pot face de fapt un model de 435 00:21:11,750 --> 00:21:12,700 pentru mai multe cuvinte. 436 00:21:12,700 --> 00:21:14,610 Deci, haideți să spunem că am ceva cum ar fi, "iubito, eu sunt 437 00:21:14,610 --> 00:21:16,030 pe foc, "sau ceva. 438 00:21:16,030 --> 00:21:17,760 Deci are mai multe cuvinte. 439 00:21:17,760 --> 00:21:20,880 Și în acest caz, puteți vedea că "copilul" este în Gaga, 440 00:21:20,880 --> 00:21:21,710 dar nu este în Katy. 441 00:21:21,710 --> 00:21:24,940 Și "foc" este în Katy, dar nu este în Gaga, corect? 442 00:21:24,940 --> 00:21:27,200 Deci, din ce in ce mai complicat, nu? 443 00:21:27,200 --> 00:21:31,440 Deoarece se pare că aproape au o legătură între cele două. 444 00:21:31,440 --> 00:21:36,980 >> Deci, ceea ce trebuie să faceți este să-și asume independență printre cuvintele. 445 00:21:36,980 --> 00:21:41,210 Deci, practic, ceea ce înseamnă că este faptul că Eu doar calcul ceea ce este 446 00:21:41,210 --> 00:21:44,330 probabilitate de a vedea "copil," ceea ce este probabilitatea de a vedea "I", și 447 00:21:44,330 --> 00:21:46,670 "Sunt", și "în" și "foc" toate separat. 448 00:21:46,670 --> 00:21:48,670 Apoi am înmulțirea pe toate. 449 00:21:48,670 --> 00:21:52,420 Și văd ceea ce este probabilitatea de a vedea întreaga propoziție. 450 00:21:52,420 --> 00:21:55,210 Face sens? 451 00:21:55,210 --> 00:22:00,270 >> Deci, practic, dacă am avea doar un singur cuvânt, ceea ce vreau să găsească este arg max, 452 00:22:00,270 --> 00:22:05,385 ceea ce înseamnă că, ceea ce este clasa care este oferindu-mi cea mai mare probabilitate? 453 00:22:05,385 --> 00:22:10,010 Deci, ceea ce este clasa care dă mi cea mai mare probabilitate de 454 00:22:10,010 --> 00:22:11,940 probabilitate de clasă dat cuvântul. 455 00:22:11,940 --> 00:22:17,610 Deci, în acest caz, Gaga a dat "copil". Sau Katy dat "copil". Face sens? 456 00:22:17,610 --> 00:22:21,040 >> Și tocmai de la Bayes, care ecuație că am arătat, 457 00:22:21,040 --> 00:22:24,780 vom crea această fracțiune. 458 00:22:24,780 --> 00:22:28,750 Singurul lucru este că veți vedea că probabilitatea de a cuvântului dat 459 00:22:28,750 --> 00:22:31,370 Schimbări în clase în funcție de pe clasa, corect? 460 00:22:31,370 --> 00:22:34,260 Numărul de "Baby" e care le-am în Gaga este diferit de Katy. 461 00:22:34,260 --> 00:22:37,640 Probabilitatea de clasă și modificări, pentru că este doar numărul 462 00:22:37,640 --> 00:22:39,740 de melodii fiecare dintre ele are. 463 00:22:39,740 --> 00:22:43,980 >> Dar probabilitatea cuvântul în sine va fi aceeași pentru toate 464 00:22:43,980 --> 00:22:44,740 artiști, dreapta? 465 00:22:44,740 --> 00:22:47,150 Deci probabilitatea de cuvânt este doar, ceea ce este probabilitatea de 466 00:22:47,150 --> 00:22:49,820 văzând că cuvânt în Limba engleză? 467 00:22:49,820 --> 00:22:51,420 Deci, e la fel pentru toate acestea. 468 00:22:51,420 --> 00:22:55,790 Deci, din moment ce aceasta este constantă, putem doar picătură acest lucru și nu pasa de asta. 469 00:22:55,790 --> 00:23:00,230 Deci, acest lucru va fi, de fapt, ecuație căutăm. 470 00:23:00,230 --> 00:23:03,360 >> Și dacă am mai multe cuvinte, eu sunt încă de gând să aibă prealabil 471 00:23:03,360 --> 00:23:04,610 probabilitate aici. 472 00:23:04,610 --> 00:23:06,980 Singurul lucru este că eu sunt înmulțirea probabilitatea 473 00:23:06,980 --> 00:23:08,490 toate celelalte cuvinte. 474 00:23:08,490 --> 00:23:10,110 Deci, eu sunt înmulțirea pe toate. 475 00:23:10,110 --> 00:23:12,610 Face sens? 476 00:23:12,610 --> 00:23:18,440 Se pare ciudat, dar înseamnă, în esență, calcularea prealabilă a clasei, și 477 00:23:18,440 --> 00:23:22,100 apoi se înmulțește cu probabilitatea de fiecare din cuvintele fiind în acea clasă. 478 00:23:22,100 --> 00:23:24,620 479 00:23:24,620 --> 00:23:29,150 >> Și știți că probabilitatea de a cuvântul dat o clasă va fi 480 00:23:29,150 --> 00:23:34,520 de mai multe ori pe care le vedeți cuvântul în această clasă, împărțit la numărul de 481 00:23:34,520 --> 00:23:37,020 cuvintele pe care le au în clasă, în general. 482 00:23:37,020 --> 00:23:37,990 Face sens? 483 00:23:37,990 --> 00:23:41,680 E doar cât de "copil" a fost de peste 2 numărul de cuvinte care 484 00:23:41,680 --> 00:23:43,020 Am avut-o în versuri. 485 00:23:43,020 --> 00:23:45,130 Deci, doar frecventa. 486 00:23:45,130 --> 00:23:46,260 >> Dar există un lucru. 487 00:23:46,260 --> 00:23:51,250 Amintiți-vă cum am fost care arată că probabilitate de "copil" fiind versuri 488 00:23:51,250 --> 00:23:56,350 de la Katy Perry a fost de 0 doar pentru că Katy Perry nu a avut "copil", la toate? 489 00:23:56,350 --> 00:24:04,900 Dar se pare un pic dur la doar pur și simplu spun că versurile nu pot fi de la 490 00:24:04,900 --> 00:24:10,040 un artist pur și simplu pentru că ei nu au acest cuvânt, în special, în orice moment. 491 00:24:10,040 --> 00:24:13,330 >> Deci, ai putea spune doar, ei bine, dacă nu au acest cuvânt, am de gând să 492 00:24:13,330 --> 00:24:15,640 vă dau o probabilitate mai mică, dar eu sunt doar de gând să 493 00:24:15,640 --> 00:24:17,420 da 0 imediat. 494 00:24:17,420 --> 00:24:21,040 Pentru că poate a fost ceva de genul, "Foc, foc, foc, foc", care este 495 00:24:21,040 --> 00:24:21,990 total Katy Perry. 496 00:24:21,990 --> 00:24:26,060 Și apoi "copil," și se merge doar pentru a 0 imediat, deoarece nu a fost una 497 00:24:26,060 --> 00:24:27,250 "Copil". 498 00:24:27,250 --> 00:24:31,440 >> Deci, practic, ceea ce facem este ceva numit Laplace netezire. 499 00:24:31,440 --> 00:24:36,260 Și acest lucru înseamnă doar că dau unii probabilitate chiar la cuvintele 500 00:24:36,260 --> 00:24:37,850 că nu există. 501 00:24:37,850 --> 00:24:43,170 Deci, ceea ce fac este că atunci când sunt calcularea aceasta, întotdeauna am adăuga 1 la 502 00:24:43,170 --> 00:24:44,180 numărătorul. 503 00:24:44,180 --> 00:24:48,060 Astfel încât, chiar dacă cuvântul nu există, în acest caz, în cazul în care aceasta este zero, eu sunt încă 504 00:24:48,060 --> 00:24:51,250 calcul acest lucru ca un peste numărul total de cuvinte. 505 00:24:51,250 --> 00:24:55,060 În caz contrar, mă cât de multe cuvinte Am și eu adăuga 1. 506 00:24:55,060 --> 00:24:58,300 Așa că eu sunt de numărare pentru ambele cazuri. 507 00:24:58,300 --> 00:25:00,430 Face sens? 508 00:25:00,430 --> 00:25:03,060 >> Deci, acum, hai sa facem ceva de codificare. 509 00:25:03,060 --> 00:25:06,440 Am de gând să aibă de a face acest lucru destul de repede, dar este doar important să 510 00:25:06,440 --> 00:25:08,600 băieți înțeleg conceptele. 511 00:25:08,600 --> 00:25:13,450 Deci, ceea ce încercăm să facem este punerea în aplicare exact acest lucru 512 00:25:13,450 --> 00:25:14,330 lucru pe care tocmai i-am spus - 513 00:25:14,330 --> 00:25:19,110 Vreau să pun versuri de la Lady Gaga și Katy Perry. 514 00:25:19,110 --> 00:25:22,980 Iar programul va fi în măsură să spune dacă aceste noi versuri sunt din Gaga 515 00:25:22,980 --> 00:25:24,170 sau Katy Perry. 516 00:25:24,170 --> 00:25:25,800 Face sens? 517 00:25:25,800 --> 00:25:27,530 OK. 518 00:25:27,530 --> 00:25:30,710 >> Așa că am acest program am de gând pentru a apela classify.py. 519 00:25:30,710 --> 00:25:31,970 Deci, aceasta este Python. 520 00:25:31,970 --> 00:25:34,210 Este un nou limbaj de programare. 521 00:25:34,210 --> 00:25:38,020 Este foarte similară în unele moduri de a C si PHP. 522 00:25:38,020 --> 00:25:43,180 Este similar pentru că, dacă doriți să învăța Python după știind C, E 523 00:25:43,180 --> 00:25:46,270 într-adevăr nu atât de mult de o provocare doar pentru că Python este mult mai ușor 524 00:25:46,270 --> 00:25:47,520 decât C, în primul rând. 525 00:25:47,520 --> 00:25:49,370 Și o mulțime de lucruri sunt deja implementat pentru tine. 526 00:25:49,370 --> 00:25:56,820 Deci, doar cum ca PHP are funcții care sorta o listă, sau adăugați ceva 527 00:25:56,820 --> 00:25:58,780 la o matrice, sau bla, bla, bla. 528 00:25:58,780 --> 00:26:00,690 Python are toate aceste, de asemenea. 529 00:26:00,690 --> 00:26:05,960 >> Așa că eu sunt doar de gând să explice repede cum am putea face clasificarea 530 00:26:05,960 --> 00:26:07,860 problema de aici. 531 00:26:07,860 --> 00:26:13,230 Deci, haideți să spunem că, în acest caz, am versuri de la Gaga și Katy Perry. 532 00:26:13,230 --> 00:26:21,880 Modul în care am aceste versuri este că primul cuvânt din versuri este 533 00:26:21,880 --> 00:26:25,250 numele artistului, și restul este versurile. 534 00:26:25,250 --> 00:26:29,470 Deci, haideți să spunem că am această listă în care primul este versuri de Gaga. 535 00:26:29,470 --> 00:26:31,930 Deci, aici eu sunt pe drumul cel bun. 536 00:26:31,930 --> 00:26:35,270 Și cel următor este Katy, și ea are, de asemenea versuri. 537 00:26:35,270 --> 00:26:38,040 >> Deci, acest lucru este modul în care declara o variabilă în Python. 538 00:26:38,040 --> 00:26:40,200 Nu trebuie să dea tipul de date. 539 00:26:40,200 --> 00:26:43,150 Trebuie doar scrie "versuri," un fel de ca în PHP. 540 00:26:43,150 --> 00:26:44,890 Face sens? 541 00:26:44,890 --> 00:26:47,770 >> Deci, care sunt lucrurile pe care trebuie să calculează pentru a putea calcula 542 00:26:47,770 --> 00:26:49,360 probabilități? 543 00:26:49,360 --> 00:26:55,110 Eu am pentru a calcula "Preoții" din fiecare dintre diferitele 544 00:26:55,110 --> 00:26:56,710 clase pe care le am. 545 00:26:56,710 --> 00:27:06,680 Eu am pentru a calcula "posteriors," sau destul de mult probabilitățile 546 00:27:06,680 --> 00:27:12,150 fiecare dintre diferitele cuvintele pe care Eu pot avea pentru fiecare artist. 547 00:27:12,150 --> 00:27:17,210 Deci în Gaga, de exemplu, am de gând pentru a avea o listă de câte ori văd 548 00:27:17,210 --> 00:27:19,250 fiecare dintre cuvintele. 549 00:27:19,250 --> 00:27:20,760 Face sens? 550 00:27:20,760 --> 00:27:25,370 >> Și, în sfârșit, eu sunt doar de gând să aibă o Lista numit "cuvinte", care este doar de gând 551 00:27:25,370 --> 00:27:29,780 de a avea cât de multe cuvinte I au pentru fiecare artist. 552 00:27:29,780 --> 00:27:33,760 Deci, pentru Gaga, de exemplu, atunci când mă uit la versurile, am avut, cred, 24 553 00:27:33,760 --> 00:27:34,750 cuvinte în total. 554 00:27:34,750 --> 00:27:38,970 Deci, această listă este doar de gând să aibă Gaga 24, și Katy un alt număr. 555 00:27:38,970 --> 00:27:40,130 Face sens? 556 00:27:40,130 --> 00:27:40,560 OK. 557 00:27:40,560 --> 00:27:42,530 >> Deci, acum, de fapt, să du-te la codificare. 558 00:27:42,530 --> 00:27:45,270 Deci, în Python, poți de fapt returna un buchet de diferite 559 00:27:45,270 --> 00:27:46,630 lucrurile dintr-o funcție. 560 00:27:46,630 --> 00:27:50,810 Așa că am de gând să creeze această funcție numit "condiționată", care se va 561 00:27:50,810 --> 00:27:53,890 să se întoarcă toate aceste lucruri, "antecedente", a "probabilitățile," și 562 00:27:53,890 --> 00:28:05,690 "cuvinte". Deci "condiționată" și este va fi de asteptare in "versuri." 563 00:28:05,690 --> 00:28:11,510 >> Deci, acum vreau să de fapt, Trimite această funcție. 564 00:28:11,510 --> 00:28:17,750 Astfel modul în care pot scrie acest Funcția este tocmai am definit acest 565 00:28:17,750 --> 00:28:20,620 funcționeze cu "def." Așa că am făcut-o "def condiționată, "și se ia 566 00:28:20,620 --> 00:28:28,700 "Versuri." Și ce acest lucru se va face este, în primul rând, am antecedente mele 567 00:28:28,700 --> 00:28:31,030 pe care vreau să calculeze. 568 00:28:31,030 --> 00:28:34,330 >> Astfel modul în care pot face acest lucru este de a crea un dicționar în Python, care 569 00:28:34,330 --> 00:28:37,320 este destul de mult acelasi lucru ca un hash masă, sau e ca un iterativ 570 00:28:37,320 --> 00:28:40,480 matrice în PHP. 571 00:28:40,480 --> 00:28:44,150 Acest lucru este cum am declara un dicționar. 572 00:28:44,150 --> 00:28:53,580 Și, practic, ce înseamnă acest lucru este că antecedente ale Gaga este de 0,5, de exemplu, dacă 573 00:28:53,580 --> 00:28:57,200 50% dintre versurile sunt din Gaga, 50% sunt de Katy. 574 00:28:57,200 --> 00:28:58,450 Face sens? 575 00:28:58,450 --> 00:29:00,680 576 00:29:00,680 --> 00:29:03,680 Deci, am să dau seama cum pentru a calcula antecedente. 577 00:29:03,680 --> 00:29:07,120 >> În următorii cele pe care le au de a face, de asemenea, sunt probabilitățile și cuvintele. 578 00:29:07,120 --> 00:29:17,100 Astfel probabilitățile Gaga este lista toate probabilitățile pe care le 579 00:29:17,100 --> 00:29:19,160 au pentru fiecare dintre cuvintele pentru Gaga. 580 00:29:19,160 --> 00:29:23,880 Deci, dacă mă duc la probabilități de Gaga "Copil", de exemplu, o să-mi dea 581 00:29:23,880 --> 00:29:28,750 ceva de genul 2 peste 24 în acest caz. 582 00:29:28,750 --> 00:29:30,070 Face sens? 583 00:29:30,070 --> 00:29:36,120 Așa că du-te la "probabilități," Du-te "Gaga" găleată, care are o listă a tuturor 584 00:29:36,120 --> 00:29:40,550 cuvintele Gaga, apoi mă duc la "copil" și văd probabilitatea. 585 00:29:40,550 --> 00:29:45,940 >> Și, în sfârșit am această "Cuvinte" dicționar. 586 00:29:45,940 --> 00:29:53,620 Deci, aici, "probabilitati". Și apoi "cuvinte". Deci, dacă eu fac "cuvinte", "Gaga" 587 00:29:53,620 --> 00:29:58,330 ceea ce se va întâmpla este că e O să-mi dea 24, spunând că am 588 00:29:58,330 --> 00:30:01,990 avea 24 de cuvinte în versuri de la Gaga. 589 00:30:01,990 --> 00:30:04,110 Are sens? 590 00:30:04,110 --> 00:30:07,070 Deci, aici, "cuvinte" este egal cu dah-dah-dah. 591 00:30:07,070 --> 00:30:07,620 Bine 592 00:30:07,620 --> 00:30:12,210 >> Deci, ce am de gând să faceți este să am de gând să itera peste fiecare dintre versuri, așa 593 00:30:12,210 --> 00:30:14,490 fiecare dintre siruri de caractere care Am în listă. 594 00:30:14,490 --> 00:30:18,040 Și am de gând pentru a calcula aceste lucruri pentru fiecare dintre candidați. 595 00:30:18,040 --> 00:30:19,950 Are sens? 596 00:30:19,950 --> 00:30:21,700 Deci, am să fac o pentru buclă. 597 00:30:21,700 --> 00:30:26,300 >> Deci, în Python ceea ce pot face este "de linie în versuri. "Același lucru ca și o 598 00:30:26,300 --> 00:30:28,000 "Pentru fiecare" declarație în PHP. 599 00:30:28,000 --> 00:30:33,420 Amintiți-vă cum în cazul în care a fost PHP am putut spune "pentru fiecare versuri ca 600 00:30:33,420 --> 00:30:35,220 linie. "face sens? 601 00:30:35,220 --> 00:30:38,900 Deci, eu iau fiecare dintre liniile, în acest caz, acest șir și următoarea 602 00:30:38,900 --> 00:30:44,540 string astfel pentru fiecare dintre liniile de ceea ce am gând să faceți este în primul rând, am de gând să 603 00:30:44,540 --> 00:30:49,150 împărțit această linie într-o listă de cuvinte separate prin spații. 604 00:30:49,150 --> 00:30:53,730 >> Deci, cool thing despre Python este că ai putea la fel ca Google "cum pot 605 00:30:53,730 --> 00:30:58,220 împărțit un șir în cuvinte? "Și este O să-ți spun cum se face. 606 00:30:58,220 --> 00:31:04,890 Și modul de a face acest lucru, e doar "linie = Line.split () "și este practic 607 00:31:04,890 --> 00:31:08,640 gând să vă dau o listă cu fiecare dintre cuvintele de aici. 608 00:31:08,640 --> 00:31:09,620 Are sens? 609 00:31:09,620 --> 00:31:15,870 Deci, acum că am făcut asta vreau să știu care este cantareata de acest cântec. 610 00:31:15,870 --> 00:31:20,130 Și pentru a face asta trebuie doar pentru a obține primul element al tabloului, nu? 611 00:31:20,130 --> 00:31:26,390 Deci, eu pot să spun doar că am "cântăreț = Linie (0) "face sens? 612 00:31:26,390 --> 00:31:32,010 >> Și atunci ce trebuie să fac este, în primul rând de toate, am de gând să actualizeze cât de multe 613 00:31:32,010 --> 00:31:36,130 cuvinte am sub "Gaga." așa că eu sunt doar va pentru a calcula cât de multe cuvinte I 614 00:31:36,130 --> 00:31:38,690 au în această listă, nu? 615 00:31:38,690 --> 00:31:41,910 Deoarece acest lucru este cât de multe cuvinte am în versuri și eu voi face la fel 616 00:31:41,910 --> 00:31:44,120 adăugați-l la "Gaga" matrice. 617 00:31:44,120 --> 00:31:47,090 Asta face sens? 618 00:31:47,090 --> 00:31:49,010 Nu te concentra prea mult pe sintaxa. 619 00:31:49,010 --> 00:31:50,430 Gândiți-vă mai multe despre conceptele. 620 00:31:50,430 --> 00:31:52,400 Asta e partea cea mai importantă. 621 00:31:52,400 --> 00:31:52,720 OK. 622 00:31:52,720 --> 00:32:00,260 >> Deci, ce pot face este dacă "Gaga" este deja în această listă, astfel încât "în cazul în care cantareata în 623 00:32:00,260 --> 00:32:03,190 cuvinte ", ceea ce înseamnă că am deja au cuvinte de Gaga. 624 00:32:03,190 --> 00:32:06,640 Vreau doar să adăugați informațiile suplimentare cuvinte pentru asta. 625 00:32:06,640 --> 00:32:15,810 Deci, ceea ce fac este "de cuvinte (cântăreață) + = Len (linie) - 1 ". 626 00:32:15,810 --> 00:32:18,250 Și apoi eu pot face doar Lungimea liniei. 627 00:32:18,250 --> 00:32:21,860 Deci, cât de multe elemente I au în matrice. 628 00:32:21,860 --> 00:32:27,060 Și eu trebuie să fac minus 1 doar pentru că primul element al matricei este doar 629 00:32:27,060 --> 00:32:29,180 un cântăreț și cei care nu sunt versuri. 630 00:32:29,180 --> 00:32:31,420 Are sens? 631 00:32:31,420 --> 00:32:32,780 OK. 632 00:32:32,780 --> 00:32:35,820 >> "Altfel," înseamnă că vreau să efectiv introduceți Gaga în listă. 633 00:32:35,820 --> 00:32:45,990 Deci, eu doar fac "cuvinte (cântăreț) = Len (linie) - 1, "îmi pare rău. 634 00:32:45,990 --> 00:32:49,200 Deci, singura diferență între cele două linii este faptul că aceasta, ea nu are 635 00:32:49,200 --> 00:32:51,080 există încă, așa că eu sunt doar inițializare. 636 00:32:51,080 --> 00:32:53,820 Asta am de fapt, adăugarea. 637 00:32:53,820 --> 00:32:55,570 OK. 638 00:32:55,570 --> 00:32:59,480 Deci, acest lucru a fost adăugarea de cuvinte. 639 00:32:59,480 --> 00:33:03,040 >> Acum vreau să adăugați la antecedente. 640 00:33:03,040 --> 00:33:05,480 Deci, cum pot calcula Preoții? 641 00:33:05,480 --> 00:33:11,580 Preoții pot fi calculate de câte ori. 642 00:33:11,580 --> 00:33:15,340 Deci, cum de multe ori veți vedea că cântăreț printre toate cântăreți care vă 643 00:33:15,340 --> 00:33:16,380 avea, nu? 644 00:33:16,380 --> 00:33:18,810 Deci, pentru Gaga și Katy Perry, în acest caz, eu văd Gaga 645 00:33:18,810 --> 00:33:20,570 odată, Katy Perry dată. 646 00:33:20,570 --> 00:33:23,320 >> Deci, practic antecedente pentru Gaga și pentru Katy Perry ar fi 647 00:33:23,320 --> 00:33:24,390 doar unul, nu? 648 00:33:24,390 --> 00:33:26,500 Trebuie doar câte ori Văd artistul. 649 00:33:26,500 --> 00:33:28,740 Deci, acest lucru este foarte ușor de calculat. 650 00:33:28,740 --> 00:33:34,100 Eu pot doar ceva similar ca și cum ar fi "în cazul în care cântăreață în antecedente, "Mă duc 651 00:33:34,100 --> 00:33:38,970 pentru a adăuga 1 la cutia lor antecedente. 652 00:33:38,970 --> 00:33:51,000 Deci, "cazier (cântă)" + = 1 "și apoi" altceva " Am de gând să fac "antecedente (cântăreață) 653 00:33:51,000 --> 00:33:55,000 = 1. "Face sens? 654 00:33:55,000 --> 00:34:00,080 >> Deci, dacă nu există pur și simplu mi-am pus ca 1, altfel am doar adăuga 1. 655 00:34:00,080 --> 00:34:11,280 OK, așa că acum tot ce am de facut este, de asemenea, adaugă fiecare dintre cuvintele la 656 00:34:11,280 --> 00:34:12,290 probabilități. 657 00:34:12,290 --> 00:34:14,889 Așa că trebuie să conta de câte ori Văd fiecare dintre cuvintele. 658 00:34:14,889 --> 00:34:18,780 Deci, eu doar trebuie să fac o altă pentru buclă în linia. 659 00:34:18,780 --> 00:34:25,190 >> Deci, primul lucru pe care am de gând să faceți este să verificați dacă cantareata are deja o 660 00:34:25,190 --> 00:34:26,969 probabilități matrice. 661 00:34:26,969 --> 00:34:31,739 Deci, eu sunt de verificare în cazul în care cantareata nu au o gamă probabilități, eu sunt doar 662 00:34:31,739 --> 00:34:34,480 O să inițializa o pentru ei. 663 00:34:34,480 --> 00:34:36,400 Nu e chiar o matrice, îmi pare rău, este un dicționar. 664 00:34:36,400 --> 00:34:43,080 Astfel încât probabilitatea de cântăreață se întâmplă pentru a fi un dicționar deschis, așa că eu sunt 665 00:34:43,080 --> 00:34:45,830 doar initializarea un dicționar pentru ea. 666 00:34:45,830 --> 00:34:46,820 OK? 667 00:34:46,820 --> 00:34:58,330 >> Și acum pot face de fapt o pentru buclă pentru a calcula fiecare dintre cuvintele " 668 00:34:58,330 --> 00:35:00,604 probabilități. 669 00:35:00,604 --> 00:35:01,540 OK. 670 00:35:01,540 --> 00:35:04,160 Deci, ce pot face este un pentru buclă. 671 00:35:04,160 --> 00:35:06,590 Așa că eu sunt doar de gând să itera peste matrice. 672 00:35:06,590 --> 00:35:15,320 Astfel modul în care pot face asta în Python este "for i in gama." De la 1 673 00:35:15,320 --> 00:35:19,200 pentru că vreau să înceapă în a doua Element pentru că primul este 674 00:35:19,200 --> 00:35:20,260 Numele cântăreț. 675 00:35:20,260 --> 00:35:24,990 Deci, de la unul până la Lungimea liniei. 676 00:35:24,990 --> 00:35:29,760 Și când eu nu-l varia merge de fapt, de la ca aici, de la 1 la len a 677 00:35:29,760 --> 00:35:30,740 linie minus 1. 678 00:35:30,740 --> 00:35:33,810 Așa se face deja chestia aia de a face n minus 1 pentru matrice care este foarte 679 00:35:33,810 --> 00:35:35,500 convenabil. 680 00:35:35,500 --> 00:35:37,850 Are sens? 681 00:35:37,850 --> 00:35:42,770 >> Deci, pentru fiecare dintre acestea, ceea ce am de gând să faci este, la fel ca și în celălalt, 682 00:35:42,770 --> 00:35:50,320 Mă duc pentru a verifica dacă cuvântul în acest poziție în linia este deja în 683 00:35:50,320 --> 00:35:51,570 probabilități. 684 00:35:51,570 --> 00:35:53,400 685 00:35:53,400 --> 00:35:57,260 Și apoi cum am spus aici, probabilități cuvinte, așa cum mi-am pus în 686 00:35:57,260 --> 00:35:58,400 "probabilităților (cântăreață)". 687 00:35:58,400 --> 00:35:59,390 Deci, numele cântărețului. 688 00:35:59,390 --> 00:36:03,450 Deci, în cazul în care este deja în "Probabilit (cântăreț)", înseamnă că am 689 00:36:03,450 --> 00:36:11,960 doriți să adăugați 1 la ea, așa că am de gând să face "probabilităților (cantareata)", precum și 690 00:36:11,960 --> 00:36:14,100 Cuvântul este numit "linie (i)". 691 00:36:14,100 --> 00:36:22,630 Am de gând să adăugați 1 și "altfel" Sunt doar O să-l inițializa la 1. 692 00:36:22,630 --> 00:36:23,880 "Linia (i)". 693 00:36:23,880 --> 00:36:26,920 694 00:36:26,920 --> 00:36:28,420 Are sens? 695 00:36:28,420 --> 00:36:30,180 >> Deci, am calculat toate de tablouri. 696 00:36:30,180 --> 00:36:36,580 Deci, acum tot ce trebuie să fac pentru aceasta este doar "antecedente reveni, 697 00:36:36,580 --> 00:36:43,230 probabilităților și cuvinte. "Să a se vedea dacă există orice, OK. 698 00:36:43,230 --> 00:36:45,690 Se pare că totul este de lucru până acum. 699 00:36:45,690 --> 00:36:46,900 Astfel, că are sens? 700 00:36:46,900 --> 00:36:47,750 Într-un fel? 701 00:36:47,750 --> 00:36:49,280 OK. 702 00:36:49,280 --> 00:36:51,980 Așa că acum am toate probabilitățile. 703 00:36:51,980 --> 00:36:55,100 Deci, acum, singurul lucru pe care l-am lăsat este doar de a avea acel lucru care 704 00:36:55,100 --> 00:36:58,650 calculează produsul tuturor probabilitati când mă versurile. 705 00:36:58,650 --> 00:37:06,270 >> Deci, haideți să spunem că vreau să sun acum această funcție "clasifica ()" și 706 00:37:06,270 --> 00:37:08,880 lucru care are funcția de este doar un argument. 707 00:37:08,880 --> 00:37:13,170 Să spunem "Baby, eu sunt pe foc" și este O să dau seama ce este 708 00:37:13,170 --> 00:37:14,490 probabilitatea ca acest lucru este Gaga? 709 00:37:14,490 --> 00:37:16,405 Care este probabilitatea că acest lucru este Katie? 710 00:37:16,405 --> 00:37:19,690 Sună bine? 711 00:37:19,690 --> 00:37:25,750 Așa că eu sunt doar de gând să aibă de a crea o noua functie numita "clasifica ()" și 712 00:37:25,750 --> 00:37:29,180 se va lua ceva versuri la fel de bine. 713 00:37:29,180 --> 00:37:31,790 714 00:37:31,790 --> 00:37:36,160 Si pe langa versurile eu, de asemenea, trebuie să trimită Preoții, 715 00:37:36,160 --> 00:37:37,700 probabilități și cuvintele. 716 00:37:37,700 --> 00:37:44,000 Așa că am de gând să trimită versuri, antecedente, probabilitati, cuvinte. 717 00:37:44,000 --> 00:37:51,840 >> Deci, acest lucru este de a lua versuri, antecedente, probabilitati, cuvinte. 718 00:37:51,840 --> 00:37:53,530 Deci, ce face? 719 00:37:53,530 --> 00:37:57,180 Este practic este de gând să meargă prin toate posibile candidații pe care le 720 00:37:57,180 --> 00:37:58,510 au ca o cântăreață. 721 00:37:58,510 --> 00:37:59,425 Și în cazul în care sunt candidații? 722 00:37:59,425 --> 00:38:01,020 Sunt în antecedente, corect? 723 00:38:01,020 --> 00:38:02,710 Deci, am toate aceste acolo. 724 00:38:02,710 --> 00:38:07,870 Așa că am de gând să aibă un dicționar din toți candidații posibile. 725 00:38:07,870 --> 00:38:14,220 Și apoi pentru fiecare candidat în antecedente, așa că înseamnă că va 726 00:38:14,220 --> 00:38:17,740 fi Gaga, Katie dacă am avut mai mult, ar fi mai mult. 727 00:38:17,740 --> 00:38:20,410 Am de gând să înceapă calcularea această probabilitate. 728 00:38:20,410 --> 00:38:28,310 Probabilitatea ca ne-am văzut în PowerPoint este vremurile anterioare 729 00:38:28,310 --> 00:38:30,800 produs de fiecare dintre alte probabilități. 730 00:38:30,800 --> 00:38:32,520 >> Deci, eu pot face același lucru aici. 731 00:38:32,520 --> 00:38:36,330 Eu pot face doar probabilitatea este inițial doar prealabil. 732 00:38:36,330 --> 00:38:40,340 Deci, antecedente ale candidatului. 733 00:38:40,340 --> 00:38:40,870 Corect? 734 00:38:40,870 --> 00:38:45,360 Și acum trebuie să itera peste toate cuvinte pe care le am în versuri a fi 735 00:38:45,360 --> 00:38:48,820 posibilitatea de a adăuga probabilitatea pentru fiecare dintre ei, OK? 736 00:38:48,820 --> 00:38:57,900 Deci, "de cuvânt în versuri" ce am de gând sa faci este, în cazul în care cuvântul este în 737 00:38:57,900 --> 00:39:01,640 "probabilităților (candidat)", care înseamnă că este un cuvânt care 738 00:39:01,640 --> 00:39:03,640 candidat are în versurile lor - 739 00:39:03,640 --> 00:39:05,940 de exemplu, "baby" pentru Gaga - 740 00:39:05,940 --> 00:39:11,710 ceea ce am de gând să fac este faptul că probabilitate va fi multiplicat 741 00:39:11,710 --> 00:39:22,420 de 1 plus probabilitățile de candidatul pentru acest cuvânt. 742 00:39:22,420 --> 00:39:25,710 Și se numește "cuvânt". 743 00:39:25,710 --> 00:39:32,440 Aceasta împărțit la numărul de cuvinte pe care o am pentru acel candidat. 744 00:39:32,440 --> 00:39:37,450 Numărul total de cuvinte pe care am pentru cantareata care mă uit la. 745 00:39:37,450 --> 00:39:40,290 >> "Else". aceasta înseamnă că este un cuvânt nou așa că ar fi ca și cum, de exemplu, 746 00:39:40,290 --> 00:39:41,860 "Foc" pentru Lady Gaga. 747 00:39:41,860 --> 00:39:45,760 Deci, vreau doar să fac un peste "Cuvânt (candidat)". 748 00:39:45,760 --> 00:39:47,710 Așa că nu vreau să pun acest termen aici. 749 00:39:47,710 --> 00:39:50,010 >> Deci, va fi, practic, copierea și lipirea aceasta. 750 00:39:50,010 --> 00:39:54,380 751 00:39:54,380 --> 00:39:56,000 Dar am de gând pentru a șterge această parte. 752 00:39:56,000 --> 00:39:57,610 Deci, este doar de gând să fie de 1 peste asta. 753 00:39:57,610 --> 00:40:00,900 754 00:40:00,900 --> 00:40:02,150 Sună bine? 755 00:40:02,150 --> 00:40:03,980 756 00:40:03,980 --> 00:40:09,700 Și acum, la final, eu sunt doar de gând să imprima numele candidatului și 757 00:40:09,700 --> 00:40:15,750 probabilitatea pe care le au de având S pe versurile lor. 758 00:40:15,750 --> 00:40:16,200 Are sens? 759 00:40:16,200 --> 00:40:18,390 Și eu de fapt, nu chiar au nevoie de acest dicționar. 760 00:40:18,390 --> 00:40:19,510 Are sens? 761 00:40:19,510 --> 00:40:21,810 >> Deci, să vedem dacă asta funcționează de fapt. 762 00:40:21,810 --> 00:40:24,880 Deci, dacă am alerga aceasta, nu a mers. 763 00:40:24,880 --> 00:40:26,130 Așteaptă o secundă. 764 00:40:26,130 --> 00:40:28,870 765 00:40:28,870 --> 00:40:31,720 "Cuvinte (candidat)", "cuvinte (candidat)", asta e 766 00:40:31,720 --> 00:40:33,750 denumirea de matrice. 767 00:40:33,750 --> 00:40:41,435 OK Deci, se spune că e un bug pentru candidat în antecedente. 768 00:40:41,435 --> 00:40:46,300 769 00:40:46,300 --> 00:40:48,760 Permiteți-mi să se calmeze un pic. 770 00:40:48,760 --> 00:40:50,360 OK. 771 00:40:50,360 --> 00:40:51,305 Să încercăm. 772 00:40:51,305 --> 00:40:51,720 OK. 773 00:40:51,720 --> 00:40:58,710 >> Așa că dă Katy Perry are această probabilitate de această ori 10 la 774 00:40:58,710 --> 00:41:02,200 minus 7, iar Gaga are această ori 10 la minus 6. 775 00:41:02,200 --> 00:41:05,610 Deci, vezi că arată că Gaga are o probabilitate mai mare. 776 00:41:05,610 --> 00:41:09,260 Deci, "Baby, eu sunt pe foc" este probabil un cântec Gaga. 777 00:41:09,260 --> 00:41:10,580 Are sens? 778 00:41:10,580 --> 00:41:12,030 Deci, aceasta este ceea ce am făcut. 779 00:41:12,030 --> 00:41:16,010 >> Acest cod va fi postate on-line, asa ca voi verifica. 780 00:41:16,010 --> 00:41:20,720 Poate utiliza o parte din ea pentru, dacă doriți să face un proiect sau ceva similar. 781 00:41:20,720 --> 00:41:22,150 OK. 782 00:41:22,150 --> 00:41:25,930 Acest lucru a fost doar pentru a arăta ce de calcul 783 00:41:25,930 --> 00:41:27,230 Codul lingvistica arata ca. 784 00:41:27,230 --> 00:41:33,040 Dar acum să mergem la mai multe chestii de nivel înalt. 785 00:41:33,040 --> 00:41:33,340 OK. 786 00:41:33,340 --> 00:41:35,150 >> Deci, alte probleme am a fost vorba despre - 787 00:41:35,150 --> 00:41:37,550 Problema segmentare este primul dintre ele. 788 00:41:37,550 --> 00:41:40,820 Deci, aveți aici japoneză. 789 00:41:40,820 --> 00:41:43,420 Și atunci veți vedea că nu există spații. 790 00:41:43,420 --> 00:41:49,110 Deci, aceasta este, în principiu înseamnă că este partea de sus a scaunului, corect? 791 00:41:49,110 --> 00:41:50,550 Vorbești japoneza? 792 00:41:50,550 --> 00:41:52,840 Este partea de sus a scaunului, corect? 793 00:41:52,840 --> 00:41:54,480 >> STUDENT: Nu știu ce kanji acolo este. 794 00:41:54,480 --> 00:41:57,010 >> LUCAS FREITAS: E [Japoneza Vorbind] 795 00:41:57,010 --> 00:41:57,950 OK. 796 00:41:57,950 --> 00:42:00,960 Deci, aceasta înseamnă în esență scaun de top. 797 00:42:00,960 --> 00:42:03,620 Deci, dacă ați avut de a pune un spațiu ar fi aici. 798 00:42:03,620 --> 00:42:05,970 Și apoi ai [? Ueda-san. ?] 799 00:42:05,970 --> 00:42:09,040 Ceea ce înseamnă, practic, domnul Ueda. 800 00:42:09,040 --> 00:42:13,180 Și veți vedea că "Ueda" și aveți un spațiu și apoi "san." Deci, vedeți că 801 00:42:13,180 --> 00:42:15,470 aici "Ue" este ca de la sine. 802 00:42:15,470 --> 00:42:17,750 Și aici are un caracter lângă el. 803 00:42:17,750 --> 00:42:21,720 >> Deci, nu e ca în aceste limbi caractere însemnând un cuvânt ea, astfel încât să 804 00:42:21,720 --> 00:42:23,980 doar a pus o mulțime de spații. 805 00:42:23,980 --> 00:42:25,500 Caracterele sunt legate între ele. 806 00:42:25,500 --> 00:42:28,680 Și ei pot fi împreună cum ar fi două, trei, unu. 807 00:42:28,680 --> 00:42:34,520 Deci, va trebui de fapt să creeze un fel de mod de a pune acele spații. 808 00:42:34,520 --> 00:42:38,850 >> Și acest lucru este că ori de câte ori te Datele din aceste limbi asiatice, 809 00:42:38,850 --> 00:42:40,580 totul vine unsegmented. 810 00:42:40,580 --> 00:42:45,940 Pentru ca nici unul care scrie japoneză sau chineză scrie cu spatii. 811 00:42:45,940 --> 00:42:48,200 Ori de câte ori ai scris chineză, Japoneză scrii doar totul 812 00:42:48,200 --> 00:42:48,710 fără spații. 813 00:42:48,710 --> 00:42:52,060 Nici măcar nu are sens pentru a pune spații. 814 00:42:52,060 --> 00:42:57,960 Deci, atunci când te date de la, unele Limbă din Asia de Est, în cazul în care doriți să 815 00:42:57,960 --> 00:43:00,760 face de fapt, ceva cu care va trebui să primul segment. 816 00:43:00,760 --> 00:43:05,130 >> Gândiți-vă de a face exemplul versurile fără spații. 817 00:43:05,130 --> 00:43:07,950 Deci, singurele versuri pe care le au va fi propoziții, corect? 818 00:43:07,950 --> 00:43:09,470 Separate de perioade. 819 00:43:09,470 --> 00:43:13,930 Dar, apoi, având doar sentința va nu ajuta cu adevarat pe oferirea de informații 820 00:43:13,930 --> 00:43:17,760 de care aceste versuri sunt de. 821 00:43:17,760 --> 00:43:18,120 Corect? 822 00:43:18,120 --> 00:43:20,010 Deci, ar trebui să pune spații în primul rând. 823 00:43:20,010 --> 00:43:21,990 Deci, cum poti sa faci asta? 824 00:43:21,990 --> 00:43:24,920 >> Deci, apoi vine ideea unei limbi Modelul, care este ceva cu adevărat 825 00:43:24,920 --> 00:43:26,870 importante pentru calcul lingvistică. 826 00:43:26,870 --> 00:43:32,790 Deci, un model de limbaj este de fapt o tabelul de probabilități care arată 827 00:43:32,790 --> 00:43:36,260 în primul rând care este probabilitatea de a avea cuvânt într-o limbă? 828 00:43:36,260 --> 00:43:39,590 Deci, care arată cât de des un cuvânt este. 829 00:43:39,590 --> 00:43:43,130 Și apoi arată, de asemenea, relația între cuvinte într-o propoziție. 830 00:43:43,130 --> 00:43:51,500 >> Deci, ideea principală este, în cazul în care un străin venit pentru a vă și a spus o propoziție pentru a 831 00:43:51,500 --> 00:43:55,600 te, ceea ce este probabilitatea ca, pentru exemplu, "aceasta este sora mea [? GTF"?] 832 00:43:55,600 --> 00:43:57,480 a fost fraza care persoana a spus? 833 00:43:57,480 --> 00:44:00,380 Deci, în mod evident, unele fraze sunt mai frecvente decât altele. 834 00:44:00,380 --> 00:44:04,450 De exemplu, "bună dimineața", sau "bun noapte, "sau" hei acolo, "este mult mai mult 835 00:44:04,450 --> 00:44:08,260 frecvente decât cele mai multe propoziții că avem o limba engleză. 836 00:44:08,260 --> 00:44:11,060 Deci, de ce sunt aceste fraze mai frecvent? 837 00:44:11,060 --> 00:44:14,060 >> Mai întâi de toate, e pentru că ai cuvinte care sunt mai frecvente. 838 00:44:14,060 --> 00:44:20,180 Deci, de exemplu, dacă spui, câinele este mare, iar câinele este gigantic, ce 839 00:44:20,180 --> 00:44:23,880 de obicei, probabil auzi cainele este mare mai multe ori din cauza "mare" este mai mult 840 00:44:23,880 --> 00:44:27,260 frecvent în limba engleză decât "gigantic". Deci, una din 841 00:44:27,260 --> 00:44:30,100 lucruri este frecvența cuvânt. 842 00:44:30,100 --> 00:44:34,490 >> Al doilea lucru care este într-adevăr de important este doar 843 00:44:34,490 --> 00:44:35,490 ordinea cuvintelor. 844 00:44:35,490 --> 00:44:39,500 Deci, este comună pentru a spune "pisica este în interiorul cutiei. ", dar tu nu faci de obicei 845 00:44:39,500 --> 00:44:44,250 a se vedea în "caseta de interior este pisica." așa veți vedea că există o anumită importanță 846 00:44:44,250 --> 00:44:46,030 în ordinea cuvintelor. 847 00:44:46,030 --> 00:44:50,160 Nu se poate spune doar că cei doi sentințe au aceeași probabilitate 848 00:44:50,160 --> 00:44:53,010 doar pentru că au aceleași cuvinte. 849 00:44:53,010 --> 00:44:55,550 Trebuie de fapt să aibă grijă despre ordine, de asemenea. 850 00:44:55,550 --> 00:44:57,650 Face sens? 851 00:44:57,650 --> 00:44:59,490 >> Deci, ce facem? 852 00:44:59,490 --> 00:45:01,550 Deci, ceea ce am putea încerca să te? 853 00:45:01,550 --> 00:45:04,400 Încerc să te fac ceea ce am apel modelele n-gram. 854 00:45:04,400 --> 00:45:09,095 Deci modelele n-gram asuma practic că pentru fiecare cuvânt pe care 855 00:45:09,095 --> 00:45:10,960 aveți într-o propoziție. 856 00:45:10,960 --> 00:45:15,020 Este probabilitatea de a avea ca cuvânt nu depinde nu numai de 857 00:45:15,020 --> 00:45:18,395 frecvență de acest cuvânt în limba, dar, de asemenea, cu privire la cuvintele pe care 858 00:45:18,395 --> 00:45:19,860 îl înconjoară. 859 00:45:19,860 --> 00:45:25,810 >> Deci, de exemplu, de obicei, când vezi ceva de genul sau la esti 860 00:45:25,810 --> 00:45:28,040 probabil vom vedea o substantiv după ea, corect? 861 00:45:28,040 --> 00:45:31,750 Pentru că atunci când aveți o prepoziție de obicei, este nevoie de un substantiv după ea. 862 00:45:31,750 --> 00:45:35,540 Sau, dacă aveți un verb care este tranzitiv de obicei sunt de gând să 863 00:45:35,540 --> 00:45:36,630 au o expresie substantiv. 864 00:45:36,630 --> 00:45:38,780 Asa ca va avea un substantiv undeva în jurul ei. 865 00:45:38,780 --> 00:45:44,950 >> Deci, practic, ceea ce face este că acesta ia în considerare probabilitatea de a avea 866 00:45:44,950 --> 00:45:47,960 Cuvintele lângă altul, când esti calcularea 867 00:45:47,960 --> 00:45:49,050 probabilitate de o propoziție. 868 00:45:49,050 --> 00:45:50,960 Și asta e ceea ce o limbă Modelul este de fapt. 869 00:45:50,960 --> 00:45:54,620 Doar spune ceea ce este probabilitatea de a avea un anumit 870 00:45:54,620 --> 00:45:57,120 propoziție într-o limbă? 871 00:45:57,120 --> 00:45:59,110 Deci, de ce este util ca, de fapt? 872 00:45:59,110 --> 00:46:02,390 Și în primul rând, ceea ce este un model de n-gram, atunci? 873 00:46:02,390 --> 00:46:08,850 >> Deci, un model de n-gram înseamnă că fiecare cuvânt depinde 874 00:46:08,850 --> 00:46:12,700 următor N minus 1 cuvinte. 875 00:46:12,700 --> 00:46:18,150 Deci, în esență, aceasta înseamnă că, dacă mă uit, de exemplu, la TF CS50 când 876 00:46:18,150 --> 00:46:21,500 Am calcularea probabilității de teză, vei fi ca " 877 00:46:21,500 --> 00:46:25,280 probabilitatea de a avea cuvântul "" ori probabilitatea de a avea " 878 00:46:25,280 --> 00:46:31,720 CS50 "ori probabilitatea de a avea "TF CS50." Deci, practic, contez 879 00:46:31,720 --> 00:46:35,720 toate căile posibile de stretching-l. 880 00:46:35,720 --> 00:46:41,870 >> Și apoi, de obicei, atunci când faci acest lucru, ca într-un proiect, ai pus N să fie 881 00:46:41,870 --> 00:46:42,600 o valoare scăzută. 882 00:46:42,600 --> 00:46:45,930 Deci, de obicei, au bigrams sau trigrame. 883 00:46:45,930 --> 00:46:51,090 Astfel încât să conta doar două cuvinte, o grup de două cuvinte, sau trei cuvinte, 884 00:46:51,090 --> 00:46:52,620 doar pentru probleme de performanță. 885 00:46:52,620 --> 00:46:56,395 Și, de asemenea, că, poate, dacă aveți ceva de genul "CS50 TF." Când te 886 00:46:56,395 --> 00:47:00,510 au "TF", este foarte important ca "CS50" este alături de ea, nu? 887 00:47:00,510 --> 00:47:04,050 Aceste două lucruri sunt, de obicei, lângă altul. 888 00:47:04,050 --> 00:47:06,410 >> Dacă credeți că de "TF", este, probabil, O să aibă ce 889 00:47:06,410 --> 00:47:07,890 Clasa este TF'ing pentru. 890 00:47:07,890 --> 00:47:11,330 De asemenea, "" este cu adevărat important pentru CS50 TF. 891 00:47:11,330 --> 00:47:14,570 Dar, dacă aveți ceva de genul "CS50 TF a mers la clasa și-a dat lor 892 00:47:14,570 --> 00:47:20,060 elevii unele bomboane. "" Candy "și" " nu au nici o legătură cu adevărat, nu? 893 00:47:20,060 --> 00:47:23,670 Sunt atât de îndepărtate unul de altul, care nu contează cu adevărat ceea ce 894 00:47:23,670 --> 00:47:25,050 cuvintele pe care le au. 895 00:47:25,050 --> 00:47:31,210 >> Deci, de a face un bigram sau o trigram, ea înseamnă doar că sunteți limitarea 896 00:47:31,210 --> 00:47:33,430 te la unele cuvinte , care sunt în jur. 897 00:47:33,430 --> 00:47:35,810 Face sens? 898 00:47:35,810 --> 00:47:40,630 Deci, atunci când vrei să faci de segmentare, de fapt, ceea ce doriți să faceți este să vezi 899 00:47:40,630 --> 00:47:44,850 care sunt toate căile posibile care puteți segment sentința. 900 00:47:44,850 --> 00:47:49,090 >> Astfel că veți vedea ce este probabilitate de fiecare dintre aceste propoziții 901 00:47:49,090 --> 00:47:50,880 existentă în limba? 902 00:47:50,880 --> 00:47:53,410 Deci, ceea ce faci este ca, ei bine, să mă să încerc să pun un spațiu aici. 903 00:47:53,410 --> 00:47:55,570 Deci, ai pus un spațiu acolo și veți vedea ce este 904 00:47:55,570 --> 00:47:57,590 probabilitate de această frază? 905 00:47:57,590 --> 00:48:00,240 Atunci esti ca, OK, poate că nu a fost atât de bun. 906 00:48:00,240 --> 00:48:03,420 Așa că am pus un spațiu acolo și un spațiu acolo, și să calculeze 907 00:48:03,420 --> 00:48:06,240 probabilitate acum, și veți vedea că este o probabilitate mai mare. 908 00:48:06,240 --> 00:48:12,160 >> Deci, acest lucru este un algoritm numit Tango algoritm de segmentare, care este 909 00:48:12,160 --> 00:48:14,990 de fapt, ceva care ar fi cu adevărat rece pentru un proiect, care 910 00:48:14,990 --> 00:48:20,860 de fapt ia de text unsegmented care poate fi japoneză sau chineză sau, poate, 911 00:48:20,860 --> 00:48:26,080 Engleză fără spații și încearcă să pună spații între cuvinte și o face 912 00:48:26,080 --> 00:48:29,120 că prin utilizarea unui model de limbaj și încercarea de a vedea ceea ce este cea mai mare 913 00:48:29,120 --> 00:48:31,270 probabilitate puteți obține. 914 00:48:31,270 --> 00:48:32,230 OK. 915 00:48:32,230 --> 00:48:33,800 Deci, aceasta este de segmentare. 916 00:48:33,800 --> 00:48:35,450 >> Acum sintaxă. 917 00:48:35,450 --> 00:48:40,940 Deci, sintaxa este utilizat pentru atât de multe lucruri acum. 918 00:48:40,940 --> 00:48:44,880 Deci, pentru Graph Căutare, pentru Siri pentru destul de mult orice fel de naturale 919 00:48:44,880 --> 00:48:46,490 procesarea limbajului ai. 920 00:48:46,490 --> 00:48:49,140 Deci, ce sunt importante lucruri despre sintaxa? 921 00:48:49,140 --> 00:48:52,390 Deci, fraze, în general, au ceea ce numim elementele constitutive. 922 00:48:52,390 --> 00:48:57,080 Care sunt un fel de grupuri de cuvinte care au o funcție în propoziție. 923 00:48:57,080 --> 00:49:02,220 Și ele nu pot fi într-adevăr una de alta. 924 00:49:02,220 --> 00:49:07,380 >> Așa că, dacă spun, de exemplu, "Lauren iubește Milo. "Știu că" Lauren "este un 925 00:49:07,380 --> 00:49:10,180 constitutiv și apoi "iubiri Milo "este, de asemenea, un altul. 926 00:49:10,180 --> 00:49:16,860 Pentru că nu se poate spune ca "Lauren Milo iubește "să aibă aceeași semnificație. 927 00:49:16,860 --> 00:49:18,020 Ea nu va avea același înțeles. 928 00:49:18,020 --> 00:49:22,500 Sau eu nu pot spune ca "Milo Lauren iubește. "Nu tot ceea ce are la fel 929 00:49:22,500 --> 00:49:25,890 ceea ce înseamnă a face asta. 930 00:49:25,890 --> 00:49:31,940 >> Deci, cele două lucruri mai importante despre sintaxă sunt tipurile lexicale care este 931 00:49:31,940 --> 00:49:35,390 practic funcția pe care au de cuvinte de la sine. 932 00:49:35,390 --> 00:49:39,180 Deci, va trebui să știți că "Lauren" și "Milo" sunt substantive. 933 00:49:39,180 --> 00:49:41,040 "Love" este un verb. 934 00:49:41,040 --> 00:49:45,660 Și al doilea lucru important este că acestea sunt tipurile de idiomatic. 935 00:49:45,660 --> 00:49:48,990 Astfel încât să știți că "iubește Milo" este de fapt o expresie verbală. 936 00:49:48,990 --> 00:49:52,390 Deci, atunci când spun "Lauren," Eu știu că Lauren este de a face ceva. 937 00:49:52,390 --> 00:49:53,620 Ce face ea? 938 00:49:53,620 --> 00:49:54,570 E iubitor Milo. 939 00:49:54,570 --> 00:49:56,440 Deci, este un lucru întreg. 940 00:49:56,440 --> 00:50:01,640 Dar componentele sale sunt un substantiv și un verb. 941 00:50:01,640 --> 00:50:04,210 Dar împreună, fac un verb. 942 00:50:04,210 --> 00:50:08,680 >> Deci, ce putem face de fapt cu lingvistică computațională? 943 00:50:08,680 --> 00:50:13,810 Deci, dacă am ceva de exemplu, "prieteni de Allison." Eu văd dacă am doar 944 00:50:13,810 --> 00:50:17,440 au un arbore sintactic aș ști că "Prieteni" este o fraza substantiv este o 945 00:50:17,440 --> 00:50:21,480 substantiv și apoi "de Allison" este un frază prepozițională în care "a" este 946 00:50:21,480 --> 00:50:24,810 o propunere și "Allison" este un substantiv. 947 00:50:24,810 --> 00:50:30,910 Ce-am putea face este preda computerul meu că, atunci când am o frază substantiv unul și 948 00:50:30,910 --> 00:50:33,080 apoi o frază prepozițională. 949 00:50:33,080 --> 00:50:39,020 Deci, în acest caz, "prieteni" și apoi "a Milo "Știu că acest lucru înseamnă că 950 00:50:39,020 --> 00:50:43,110 NP2, al doilea, detine NP1. 951 00:50:43,110 --> 00:50:47,680 >> Deci, eu pot crea un fel de relație, un fel de funcție pentru ea. 952 00:50:47,680 --> 00:50:52,370 Așa că ori de câte ori văd această structură, care se potrivește exact cu "prietenii de 953 00:50:52,370 --> 00:50:56,030 Allison, "Știu că Allison detine prietenii. 954 00:50:56,030 --> 00:50:58,830 Deci, prietenii sunt ceva că Allison are. 955 00:50:58,830 --> 00:50:59,610 Are sens? 956 00:50:59,610 --> 00:51:01,770 Deci, aceasta este de fapt ceea ce Grafic de căutare nu. 957 00:51:01,770 --> 00:51:04,360 Este doar creează reguli pentru o mulțime de lucruri. 958 00:51:04,360 --> 00:51:08,190 Deci, "prietenii de Allison", "prietenii mei care trăiesc în Cambridge "," Prietenii mei 959 00:51:08,190 --> 00:51:12,970 care merg la Harvard. "Se creează reguli pentru toate aceste lucruri. 960 00:51:12,970 --> 00:51:14,930 >> Acum, de traducere automată. 961 00:51:14,930 --> 00:51:18,850 Deci, de traducere automată este, de asemenea, ceva statistic. 962 00:51:18,850 --> 00:51:21,340 Și de fapt, dacă te implici în lingvistică computațională, o mulțime de 963 00:51:21,340 --> 00:51:23,580 lucrurile dvs. va fi statistici. 964 00:51:23,580 --> 00:51:26,670 Deci, după cum am fost a face exemplul cu o mulțime de probabilități că am fost 965 00:51:26,670 --> 00:51:30,540 calcularea, iar apoi vei ajunge la acest număr foarte mic care este finala 966 00:51:30,540 --> 00:51:33,180 probabilitate, și asta e ceea ce vă oferă răspunsul. 967 00:51:33,180 --> 00:51:37,540 Traducere automată folosește, de asemenea, un model statistic. 968 00:51:37,540 --> 00:51:44,790 Și, dacă doriți să se gândească de mașină traducere în cel mai simplu posibil 969 00:51:44,790 --> 00:51:48,970 Astfel, ceea ce se poate gândi este doar traduce cuvânt cu cuvânt, nu? 970 00:51:48,970 --> 00:51:52,150 >> Când sunteți de învățare o limbă pentru prima dată, asta e, de obicei, ceea ce 971 00:51:52,150 --> 00:51:52,910 ce faci, nu? 972 00:51:52,910 --> 00:51:57,050 Dacă doriți să traduceți o propoziție în limba la limba 973 00:51:57,050 --> 00:52:00,060 sunteți de învățare, de obicei, în primul rând, vă traduce fiecare dintre cuvintele 974 00:52:00,060 --> 00:52:03,180 individual, și apoi încercați pentru a pune cuvintele în loc. 975 00:52:03,180 --> 00:52:07,100 >> Deci, dacă am vrut să traduce aceasta, [VORBIND PORTUGHEZĂ] 976 00:52:07,100 --> 00:52:10,430 ceea ce înseamnă "pisica albă a fugit." În cazul în care am vrut să-l traducă din 977 00:52:10,430 --> 00:52:13,650 Din portugheză în engleză, ceea ce am ar putea face este, în primul rând, eu doar 978 00:52:13,650 --> 00:52:14,800 traduce cuvânt cu cuvânt. 979 00:52:14,800 --> 00:52:20,570 Deci, "o" este "," "Gato", "pisică", "Branco", "alb", iar apoi "fugio" este 980 00:52:20,570 --> 00:52:21,650 "Fugit." 981 00:52:21,650 --> 00:52:26,130 >> Deci am toate cuvintele aici, dar ele nu sunt în ordine. 982 00:52:26,130 --> 00:52:29,590 E ca și cum "alb pisica a fugit" care este negramatical. 983 00:52:29,590 --> 00:52:34,490 Deci, atunci eu pot avea o a doua etapă, care se va găsi idealul 984 00:52:34,490 --> 00:52:36,610 poziție pentru fiecare dintre cuvintele. 985 00:52:36,610 --> 00:52:40,240 Deci, eu știu că am de fapt, doresc să aibă "Pisică alb" în loc de "pisică alb." Așa 986 00:52:40,240 --> 00:52:46,050 ce pot face este, metoda cea mai naiv ar fi de a crea toate 987 00:52:46,050 --> 00:52:49,720 permutări posibile de cuvinte, de poziții. 988 00:52:49,720 --> 00:52:53,300 Și apoi a se vedea care unul are cea mai mare probabilitate în conformitate 989 00:52:53,300 --> 00:52:54,970 la modelul meu limbaj. 990 00:52:54,970 --> 00:52:58,390 Și apoi, când am găsi unul care are cea mai mare probabilitate aceasta, care este 991 00:52:58,390 --> 00:53:01,910 probabil "pisica alb fugit," asta e traducerea mea. 992 00:53:01,910 --> 00:53:06,710 >> Și aceasta este o modalitate simplă de a explica modul în care o mulțime de traducere automată 993 00:53:06,710 --> 00:53:07,910 algoritmi de lucru. 994 00:53:07,910 --> 00:53:08,920 Asta face sens? 995 00:53:08,920 --> 00:53:12,735 Acest lucru este, de asemenea, ceva cu adevarat interesant că voi puteți explora, poate pentru o 996 00:53:12,735 --> 00:53:13,901 final al proiectului, da? 997 00:53:13,901 --> 00:53:15,549 >> STUDENT: Ei bine, ai spus că a fost modul naiv, asa ca ce-i 998 00:53:15,549 --> 00:53:17,200 modul în care non-naiv? 999 00:53:17,200 --> 00:53:18,400 >> LUCAS FREITAS: Modul non-naiv? 1000 00:53:18,400 --> 00:53:19,050 OK. 1001 00:53:19,050 --> 00:53:22,860 Deci, primul lucru care este rău despre această metodă este că tocmai am tradus 1002 00:53:22,860 --> 00:53:24,330 cuvinte, cuvânt cu cuvânt. 1003 00:53:24,330 --> 00:53:30,570 Dar, uneori, aveți cuvinte care poate avea mai multe traduceri. 1004 00:53:30,570 --> 00:53:32,210 Am de gând să încercați să vă gândiți de ceva. 1005 00:53:32,210 --> 00:53:37,270 De exemplu, "manga", în cutie portugheză fi fie "mangle" sau "manșon." Așa 1006 00:53:37,270 --> 00:53:40,450 atunci când sunteți încercarea de a traduce cuvânt prin cuvânt, acesta ar putea fi oferindu-vă 1007 00:53:40,450 --> 00:53:42,050 ceva ce nu are sens. 1008 00:53:42,050 --> 00:53:45,770 >> Deci vrei de fapt sa te uiti la toate posibile traducerile 1009 00:53:45,770 --> 00:53:49,840 cuvinte și a se vedea, în primul rând, ceea ce este ordinea. 1010 00:53:49,840 --> 00:53:52,000 Vorbeam despre permutating lucrurile? 1011 00:53:52,000 --> 00:53:54,150 Pentru a vedea toate comenzile posibile și alege pe cel cu cea mai mare 1012 00:53:54,150 --> 00:53:54,990 probabilitate? 1013 00:53:54,990 --> 00:53:57,860 Puteți alege, de asemenea, tot posibilul traduceri pentru fiecare 1014 00:53:57,860 --> 00:54:00,510 cuvânt și apoi a se vedea - 1015 00:54:00,510 --> 00:54:01,950 combinate cu permutări - 1016 00:54:01,950 --> 00:54:03,710 care are cea mai mare probabilitate. 1017 00:54:03,710 --> 00:54:08,590 >> În plus, poti sa te uiti, de asemenea, la nu doar cuvinte, ci fraze. 1018 00:54:08,590 --> 00:54:11,700 astfel încât să puteți analiza relațiile dintre cuvintele și apoi a lua o 1019 00:54:11,700 --> 00:54:13,210 mai bine de traducere. 1020 00:54:13,210 --> 00:54:16,690 De asemenea, altceva, astfel încât acest semestru Eu de fapt, a face cercetare în 1021 00:54:16,690 --> 00:54:19,430 Chineză-engleză traducere automată, astfel traducerea din 1022 00:54:19,430 --> 00:54:20,940 Chineză în engleză. 1023 00:54:20,940 --> 00:54:26,760 >> Și ceva ce facem este, în afară de utilizarea un model statistic, care este doar 1024 00:54:26,760 --> 00:54:30,570 văzând probabilitățile de a vedea unele poziție într-o propoziție, sunt 1025 00:54:30,570 --> 00:54:35,360 de fapt, adăugând, de asemenea, unele sintaxa pentru a-mi modelul, spunând, oh, dacă am vedea acest gen 1026 00:54:35,360 --> 00:54:39,420 de construcție, acest lucru este ceea ce vreau să-l schimbe pentru a atunci când am traduce. 1027 00:54:39,420 --> 00:54:43,880 Astfel încât să puteți adăuga, de asemenea, un fel de element de sintaxă pentru a face 1028 00:54:43,880 --> 00:54:47,970 traducere mai eficient și mai precis. 1029 00:54:47,970 --> 00:54:48,550 OK. 1030 00:54:48,550 --> 00:54:51,010 >> Deci, cum poți începe, dacă doriți de a face ceva în calcul 1031 00:54:51,010 --> 00:54:51,980 lingvistică? 1032 00:54:51,980 --> 00:54:54,560 >> În primul rând, alegeți un proiect care implică limbi. 1033 00:54:54,560 --> 00:54:56,310 Deci, există atât de multe acolo. 1034 00:54:56,310 --> 00:54:58,420 Există atât de multe lucruri pe care le puteți face. 1035 00:54:58,420 --> 00:55:00,510 Și atunci se poate gândi la un model de pe care le puteți folosi. 1036 00:55:00,510 --> 00:55:04,710 De obicei, ceea ce înseamnă gândirea de ipoteze, cum ar fi ca, oh, când am fost 1037 00:55:04,710 --> 00:55:05,770 cum ar fi de gândire de versuri. 1038 00:55:05,770 --> 00:55:09,510 Am fost ca, ei bine, dacă vreau să dau o care a scris aceasta, probabil vreau 1039 00:55:09,510 --> 00:55:15,400 să se uite la cuvintele persoana utilizat și vedea cine foloseste acest cuvânt de foarte multe ori. 1040 00:55:15,400 --> 00:55:18,470 Deci, încercați să facă presupuneri și încercați să vă gândiți de modele. 1041 00:55:18,470 --> 00:55:21,395 Și atunci puteți căuta, de asemenea on-line pentru un fel de probleme pe care le au, 1042 00:55:21,395 --> 00:55:24,260 și-l va sugera pentru a vă modele care poate 1043 00:55:24,260 --> 00:55:26,560 modelat chestia aia bine. 1044 00:55:26,560 --> 00:55:29,080 >> Și, de asemenea, puteți trimite un email mereu de mine. 1045 00:55:29,080 --> 00:55:31,140 me@lfreitas.com. 1046 00:55:31,140 --> 00:55:34,940 Și eu pot răspunde doar la întrebările dumneavoastră. 1047 00:55:34,940 --> 00:55:38,600 Putem chiar s-ar putea întâlni, așa că am putea da sugestii privind modalitățile de 1048 00:55:38,600 --> 00:55:41,490 punerea în aplicare a proiectului. 1049 00:55:41,490 --> 00:55:45,610 Și vreau să spun dacă te implici cu lingvistică computațională, se va 1050 00:55:45,610 --> 00:55:46,790 să fie mare. 1051 00:55:46,790 --> 00:55:48,370 Vei vedea acolo este atât de mult potențial. 1052 00:55:48,370 --> 00:55:52,060 Și industria vrea să angajeze ești atât de rău din cauza asta. 1053 00:55:52,060 --> 00:55:54,720 Așa că sper că voi sa bucurat de acest lucru. 1054 00:55:54,720 --> 00:55:57,030 Dacă voi aveți întrebări, poți să mă întrebi după aceasta. 1055 00:55:57,030 --> 00:55:58,280 Dar vă mulțumesc. 1056 00:55:58,280 --> 00:56:00,150