1 00:00:00,000 --> 00:00:08,364 2 00:00:08,364 --> 00:00:08,870 >> LUCAS FREITAS: Hey. 3 00:00:08,870 --> 00:00:09,980 Menyambut semua orang. 4 00:00:09,980 --> 00:00:11,216 Nama saya Lucas Freitas. 5 00:00:11,216 --> 00:00:15,220 Aku junior di [Tak terdengar] belajar ilmu komputer dengan fokus di 6 00:00:15,220 --> 00:00:16,410 komputasi linguistik. 7 00:00:16,410 --> 00:00:19,310 Jadi sekunder saya adalah dalam bahasa dan teori linguistik. 8 00:00:19,310 --> 00:00:21,870 Aku benar-benar bersemangat untuk mengajar kalian sedikit tentang lapangan. 9 00:00:21,870 --> 00:00:24,300 Ini adalah daerah yang sangat menarik untuk belajar. 10 00:00:24,300 --> 00:00:27,260 Juga dengan banyak potensi untuk masa depan. 11 00:00:27,260 --> 00:00:30,160 Jadi, aku benar-benar senang bahwa kalian mempertimbangkan proyek-proyek dalam 12 00:00:30,160 --> 00:00:31,160 komputasi linguistik. 13 00:00:31,160 --> 00:00:35,460 Dan aku akan lebih dari senang untuk memberitahu salah satu dari Anda jika Anda memutuskan untuk 14 00:00:35,460 --> 00:00:37,090 mengejar salah satu dari mereka. 15 00:00:37,090 --> 00:00:40,010 >> Jadi pertama-tama apa komputasi linguistik? 16 00:00:40,010 --> 00:00:44,630 Jadi linguistik komputasi adalah persimpangan antara linguistik dan 17 00:00:44,630 --> 00:00:46,390 ilmu komputer. 18 00:00:46,390 --> 00:00:47,415 Jadi, apa linguistik? 19 00:00:47,415 --> 00:00:48,490 Apa ilmu komputer? 20 00:00:48,490 --> 00:00:51,580 Nah dari linguistik, apa kita ambil adalah bahasa. 21 00:00:51,580 --> 00:00:54,960 Jadi linguistik sebenarnya studi dari bahasa alami secara umum. 22 00:00:54,960 --> 00:00:58,330 Bahasa begitu alami - kita berbicara tentang bahasa yang kita benar-benar digunakan untuk 23 00:00:58,330 --> 00:00:59,770 berkomunikasi satu sama lain. 24 00:00:59,770 --> 00:01:02,200 Jadi kita tidak benar-benar berbicara tentang C atau Java. 25 00:01:02,200 --> 00:01:05,900 Kita bicara tentang bahasa Inggris dan Bahasa Cina dan lainnya yang kita 26 00:01:05,900 --> 00:01:07,780 gunakan untuk berkomunikasi satu sama lain. 27 00:01:07,780 --> 00:01:12,470 >> Hal menantang tentang itu adalah bahwa sekarang kami memiliki hampir 7.000 28 00:01:12,470 --> 00:01:14,260 bahasa di dunia. 29 00:01:14,260 --> 00:01:19,520 Jadi ada cukup berbagai tinggi bahasa yang bisa kita pelajari. 30 00:01:19,520 --> 00:01:22,600 Dan kemudian Anda berpikir bahwa itu mungkin sangat sulit untuk dilakukan, misalnya, 31 00:01:22,600 --> 00:01:26,960 terjemahan dari satu bahasa ke lainnya, mengingat bahwa Anda memiliki 32 00:01:26,960 --> 00:01:28,240 hampir 7.000 dari mereka. 33 00:01:28,240 --> 00:01:31,450 Jadi, jika Anda berpikir untuk melakukan penerjemahan dari satu bahasa ke lain Anda 34 00:01:31,450 --> 00:01:35,840 hampir lebih dari satu juta kombinasi yang berbeda yang dapat Anda 35 00:01:35,840 --> 00:01:37,330 harus dari bahasa ke bahasa. 36 00:01:37,330 --> 00:01:40,820 Jadi itu benar-benar menantang untuk melakukan beberapa jenis sistem contoh terjemahan untuk 37 00:01:40,820 --> 00:01:43,540 setiap bahasa tunggal. 38 00:01:43,540 --> 00:01:47,120 >> Jadi, linguistik memperlakukan dengan sintaks, semantik, pragmatik. 39 00:01:47,120 --> 00:01:49,550 Kalian tidak benar-benar perlu untuk mengetahui apa yang mereka. 40 00:01:49,550 --> 00:01:55,090 Namun hal yang sangat menarik adalah bahwa sebagai penutur asli, ketika Anda belajar 41 00:01:55,090 --> 00:01:59,010 bahasa sebagai anak, Anda benar-benar belajar semua hal-hal - semantik sintaks 42 00:01:59,010 --> 00:02:00,500 dan pragmatik - 43 00:02:00,500 --> 00:02:01,430 sendiri. 44 00:02:01,430 --> 00:02:04,820 Dan tak seorangpun harus mengajarkan sintaks untuk Anda untuk memahami bagaimana kalimat yang 45 00:02:04,820 --> 00:02:05,290 terstruktur. 46 00:02:05,290 --> 00:02:07,980 Jadi, itu benar-benar menarik karena itu adalah sesuatu yang datang sangat 47 00:02:07,980 --> 00:02:10,389 intuitif. 48 00:02:10,389 --> 00:02:13,190 >> Dan apa yang Anda ambil dari ilmu komputer? 49 00:02:13,190 --> 00:02:16,700 Nah, hal yang paling penting bahwa kita memiliki dalam ilmu komputer pertama 50 00:02:16,700 --> 00:02:19,340 semua, kecerdasan buatan dan mesin belajar. 51 00:02:19,340 --> 00:02:22,610 Jadi, apa yang kita mencoba untuk melakukan komputasi linguistik adalah mengajar 52 00:02:22,610 --> 00:02:26,990 komputer Anda bagaimana melakukan sesuatu dengan bahasa. 53 00:02:26,990 --> 00:02:28,630 >> Jadi, misalnya, dalam mesin terjemahan. 54 00:02:28,630 --> 00:02:32,490 Saya mencoba untuk mengajarkan bagaimana komputer saya untuk mengetahui bagaimana transisi dari satu 55 00:02:32,490 --> 00:02:33,310 bahasa yang lain. 56 00:02:33,310 --> 00:02:35,790 Jadi, pada dasarnya suka mengajar komputer dua bahasa. 57 00:02:35,790 --> 00:02:38,870 Jika saya melakukan pengolahan bahasa alami, yang merupakan kasus untuk contoh 58 00:02:38,870 --> 00:02:41,810 Facebook Graph Search, Anda mengajar komputer Anda bagaimana memahami 59 00:02:41,810 --> 00:02:42,730 pertanyaan dengan baik. 60 00:02:42,730 --> 00:02:48,130 >> Jadi, jika Anda mengatakan "foto-foto saya teman-teman. "Facebook tidak memperlakukan bahwa 61 00:02:48,130 --> 00:02:51,130 secara keseluruhan string yang memiliki hanya sekelompok kata-kata. 62 00:02:51,130 --> 00:02:56,020 Ini benar-benar memahami relasi antara "foto" dan "teman-teman saya" dan 63 00:02:56,020 --> 00:02:59,620 memahami bahwa "foto" yang milik "teman-teman saya." 64 00:02:59,620 --> 00:03:02,350 >> Jadi, itu adalah bagian dari, misalnya, pengolahan bahasa alami. 65 00:03:02,350 --> 00:03:04,790 Itu mencoba untuk memahami apa yang adalah hubungan antara 66 00:03:04,790 --> 00:03:07,520 kata-kata dalam kalimat. 67 00:03:07,520 --> 00:03:11,170 Dan pertanyaan besar adalah, dapat Anda mengajarkan komputer bagaimana berbicara 68 00:03:11,170 --> 00:03:12,650 bahasa secara umum? 69 00:03:12,650 --> 00:03:17,810 Yang merupakan pertanyaan yang sangat menarik untuk berpikir, seolah-olah mungkin di masa depan, 70 00:03:17,810 --> 00:03:19,930 Anda akan dapat berbicara dengan ponsel Anda. 71 00:03:19,930 --> 00:03:23,290 Jenis seperti apa yang kita lakukan dengan Siri namun sesuatu yang lebih seperti, Anda benar-benar dapat 72 00:03:23,290 --> 00:03:25,690 mengatakan apa pun yang Anda inginkan dan telepon akan memahami segalanya. 73 00:03:25,690 --> 00:03:28,350 Dan itu dapat memiliki menindaklanjuti pertanyaan dan terus berbicara. 74 00:03:28,350 --> 00:03:30,880 Itu sesuatu yang benar-benar menarik, menurut pendapat saya. 75 00:03:30,880 --> 00:03:33,070 >> Jadi, sesuatu tentang bahasa alami. 76 00:03:33,070 --> 00:03:36,220 Sesuatu yang sangat menarik tentang bahasa alami adalah bahwa, dan ini adalah 77 00:03:36,220 --> 00:03:38,470 kredit kepada saya profesor linguistik, Maria Polinsky. 78 00:03:38,470 --> 00:03:40,830 Dia memberikan contoh dan saya pikir itu benar-benar menarik. 79 00:03:40,830 --> 00:03:47,060 Karena kita belajar bahasa dari ketika kita lahir dan kemudian ibu kita 80 00:03:47,060 --> 00:03:49,170 Bahasa semacam tumbuh pada kami. 81 00:03:49,170 --> 00:03:52,570 >> Dan pada dasarnya Anda belajar bahasa dari input minimal, kan? 82 00:03:52,570 --> 00:03:56,700 Anda hanya mendapatkan masukan dari Anda orang tua dari apa yang terdengar bahasa Anda 83 00:03:56,700 --> 00:03:58,770 suka dan Anda hanya mempelajarinya. 84 00:03:58,770 --> 00:04:02,240 Jadi, itu menarik karena jika Anda melihat pada kalimat-kalimat, misalnya. 85 00:04:02,240 --> 00:04:06,980 Anda lihat, "Mary memakai mantel setiap waktu dia meninggalkan rumah. " 86 00:04:06,980 --> 00:04:10,650 >> Dalam hal ini, sangat memungkinkan untuk memiliki kata "dia" merujuk kepada Mary, kan? 87 00:04:10,650 --> 00:04:13,500 Anda dapat mengatakan "Mary memakai mantel setiap kali Mary meninggalkan 88 00:04:13,500 --> 00:04:14,960 rumah. "jadi itu baik-baik saja. 89 00:04:14,960 --> 00:04:19,370 Tapi kemudian jika Anda melihat kalimat "Dia memakai mantel setiap kali Mary 90 00:04:19,370 --> 00:04:22,850 meninggalkan rumah. "Anda tahu itu mustahil untuk mengatakan bahwa "dia" adalah 91 00:04:22,850 --> 00:04:24,260 mengacu pada Mary. 92 00:04:24,260 --> 00:04:27,070 >> Tidak ada cara untuk mengatakan bahwa "Maria menempatkan mantel setiap kali Mary daun 93 00:04:27,070 --> 00:04:30,790 rumah. "Jadi menarik karena ini adalah jenis intuisi 94 00:04:30,790 --> 00:04:32,890 bahwa setiap penutur asli memiliki. 95 00:04:32,890 --> 00:04:36,370 Dan tidak ada yang mengajarkan bahwa ini adalah cara sintaks bekerja. 96 00:04:36,370 --> 00:04:41,930 Dan bahwa Anda hanya bisa memiliki "dia" mengacu Maria dalam kasus pertama ini, 97 00:04:41,930 --> 00:04:44,260 dan benar-benar dalam hal ini lain juga, tapi tidak dalam satu ini. 98 00:04:44,260 --> 00:04:46,500 Tapi semua orang semacam mendapat dengan jawaban yang sama. 99 00:04:46,500 --> 00:04:48,580 Semua orang setuju itu. 100 00:04:48,580 --> 00:04:53,280 Jadi itu benar-benar menarik bagaimana meskipun Anda tidak tahu semua aturan 101 00:04:53,280 --> 00:04:55,575 dalam bahasa Anda Anda jenis memahami bagaimana bahasa bekerja. 102 00:04:55,575 --> 00:04:59,020 103 00:04:59,020 --> 00:05:01,530 >> Jadi hal yang menarik tentang alam bahasa adalah bahwa Anda tidak perlu 104 00:05:01,530 --> 00:05:06,970 mengetahui sintaks apapun untuk mengetahui apakah kalimat adalah tata bahasa atau gramatikal untuk 105 00:05:06,970 --> 00:05:08,810 kebanyakan kasus. 106 00:05:08,810 --> 00:05:13,220 Yang membuat Anda berpikir bahwa mungkin apa terjadi adalah bahwa melalui hidup Anda, Anda 107 00:05:13,220 --> 00:05:17,410 hanya terus mendapatkan lebih banyak dan lebih kalimat diberitahu untuk Anda. 108 00:05:17,410 --> 00:05:19,800 Dan kemudian Anda terus menghafal semua kalimat. 109 00:05:19,800 --> 00:05:24,230 Dan kemudian ketika seseorang memberitahu Anda sesuatu, Anda mendengar kalimat itu dan 110 00:05:24,230 --> 00:05:27,040 Anda melihat kosakata Anda kalimat dan melihat apakah 111 00:05:27,040 --> 00:05:28,270 kalimat yang ada. 112 00:05:28,270 --> 00:05:29,830 Dan jika ada Anda mengatakan itu tata bahasa. 113 00:05:29,830 --> 00:05:31,740 Jika tidak Anda mengatakan itu gramatikal. 114 00:05:31,740 --> 00:05:35,150 >> Jadi, dalam hal ini, Anda akan mengatakan, oh, sehingga Anda memiliki daftar besar semua 115 00:05:35,150 --> 00:05:36,140 mungkin kalimat. 116 00:05:36,140 --> 00:05:38,240 Dan kemudian ketika Anda mendengar kalimat, Anda tahu apakah itu tata bahasa atau 117 00:05:38,240 --> 00:05:39,450 tidak berdasarkan itu. 118 00:05:39,450 --> 00:05:42,360 Masalahnya adalah bahwa jika Anda melihat kalimat, misalnya, "The 119 00:05:42,360 --> 00:05:47,540 lima berkepala CS50 TF dimasak buta gurita menggunakan mug DAPA. "Ini 120 00:05:47,540 --> 00:05:49,630 pasti tidak kalimat bahwa Anda dengar sebelumnya. 121 00:05:49,630 --> 00:05:52,380 Tetapi pada saat yang sama Anda tahu itu cukup banyak tata bahasa, kan? 122 00:05:52,380 --> 00:05:55,570 Tidak ada kesalahan tata bahasa dan Anda dapat mengatakan bahwa 123 00:05:55,570 --> 00:05:57,020 itu adalah kalimat yang mungkin. 124 00:05:57,020 --> 00:06:01,300 >> Jadi itu membuat kita berpikir bahwa sebenarnya cara kita belajar bahasa tidak hanya 125 00:06:01,300 --> 00:06:07,090 dengan memiliki database besar mungkin kata atau kalimat, tetapi lebih dari 126 00:06:07,090 --> 00:06:11,490 memahami hubungan antara kata-kata dalam kalimat-kalimat. 127 00:06:11,490 --> 00:06:14,570 Apakah itu masuk akal? 128 00:06:14,570 --> 00:06:19,370 Jadi, maka pertanyaannya adalah, bisa komputer belajar bahasa? 129 00:06:19,370 --> 00:06:21,490 Bisakah kita mengajarkan bahasa komputer? 130 00:06:21,490 --> 00:06:24,230 >> Jadi, mari kita berpikir tentang perbedaan antara penutur asli bahasa 131 00:06:24,230 --> 00:06:25,460 dan komputer. 132 00:06:25,460 --> 00:06:27,340 Jadi, apa yang terjadi pada pembicara? 133 00:06:27,340 --> 00:06:30,430 Nah, penutur asli belajar a bahasa dari paparan itu. 134 00:06:30,430 --> 00:06:34,200 Biasanya masa kanak-kanak awal. 135 00:06:34,200 --> 00:06:38,570 Jadi, pada dasarnya, Anda hanya punya bayi, dan Anda terus berbicara untuk itu, dan itu 136 00:06:38,570 --> 00:06:40,540 hanya belajar bagaimana berbicara bahasa, kan? 137 00:06:40,540 --> 00:06:42,660 Jadi, pada dasarnya Anda memberi masukan untuk bayi. 138 00:06:42,660 --> 00:06:45,200 Jadi, maka Anda dapat mengatakan bahwa komputer dapat melakukan hal yang sama, kan? 139 00:06:45,200 --> 00:06:49,510 Anda hanya bisa memberikan bahasa sebagai masukan ke komputer. 140 00:06:49,510 --> 00:06:53,410 >> Seperti misalnya sekelompok file yang memiliki buku-buku dalam bahasa Inggris. 141 00:06:53,410 --> 00:06:56,190 Mungkin itulah salah satu cara yang Anda mungkin bisa mengajarkan 142 00:06:56,190 --> 00:06:57,850 komputer Inggris, kan? 143 00:06:57,850 --> 00:07:01,000 Dan pada kenyataannya, jika Anda berpikir tentang hal ini, Anda membutuhkan waktu mungkin beberapa 144 00:07:01,000 --> 00:07:02,680 hari untuk membaca buku. 145 00:07:02,680 --> 00:07:05,760 Untuk komputer dibutuhkan satu detik untuk melihat semua kata dalam sebuah buku. 146 00:07:05,760 --> 00:07:10,810 Sehingga Anda dapat berpikir bahwa mungkin hanya ini Argumen masukan dari sekitar Anda, 147 00:07:10,810 --> 00:07:15,440 itu tidak cukup untuk mengatakan bahwa itu sesuatu yang dapat Anda lakukan hanya manusia. 148 00:07:15,440 --> 00:07:17,680 Anda dapat menganggap komputer juga bisa mendapatkan masukan. 149 00:07:17,680 --> 00:07:21,170 >> Hal kedua adalah bahwa penutur asli juga memiliki otak yang memiliki 150 00:07:21,170 --> 00:07:23,870 kemampuan belajar bahasa. 151 00:07:23,870 --> 00:07:27,020 Tapi jika Anda berpikir tentang hal ini, otak adalah hal yang solid. 152 00:07:27,020 --> 00:07:30,450 Ketika Anda lahir, itu sudah diatur - 153 00:07:30,450 --> 00:07:31,320 ini adalah otak Anda. 154 00:07:31,320 --> 00:07:34,660 Dan ketika Anda tumbuh, Anda hanya mendapatkan lebih banyak input bahasa dan mungkin nutrisi 155 00:07:34,660 --> 00:07:35,960 dan hal-hal lain. 156 00:07:35,960 --> 00:07:38,170 Tapi cukup banyak otak Anda adalah hal yang solid. 157 00:07:38,170 --> 00:07:41,290 >> Jadi, Anda bisa mengatakan, baik, mungkin Anda bisa membangun sebuah komputer yang memiliki banyak 158 00:07:41,290 --> 00:07:45,890 fungsi dan metode yang hanya meniru kemampuan belajar bahasa. 159 00:07:45,890 --> 00:07:49,630 Jadi dalam hal ini, Anda bisa mengatakan, baik, saya dapat memiliki komputer yang memiliki semua 160 00:07:49,630 --> 00:07:52,270 hal yang saya perlu belajar bahasa. 161 00:07:52,270 --> 00:07:56,200 Dan hal terakhir adalah bahwa penduduk asli speaker belajar dari trial and error. 162 00:07:56,200 --> 00:08:01,090 Jadi pada dasarnya hal lain yang penting dalam pembelajaran bahasa adalah bahwa Anda jenis 163 00:08:01,090 --> 00:08:05,340 dari belajar hal-hal dengan membuat generalisasi dari apa yang Anda dengar. 164 00:08:05,340 --> 00:08:10,280 >> Jadi seperti Anda tumbuh Anda belajar bahwa beberapa kata yang lebih seperti kata benda, 165 00:08:10,280 --> 00:08:11,820 beberapa yang lainnya adalah kata sifat. 166 00:08:11,820 --> 00:08:14,250 Dan Anda tidak harus memiliki pengetahuan linguistik 167 00:08:14,250 --> 00:08:15,040 untuk memahami bahwa. 168 00:08:15,040 --> 00:08:18,560 Tapi kau hanya tahu ada beberapa kata diposisikan di beberapa bagian dari 169 00:08:18,560 --> 00:08:22,570 kalimat dan beberapa orang lain di lain bagian dari kalimat. 170 00:08:22,570 --> 00:08:26,110 >> Dan bahwa ketika Anda melakukan sesuatu yang seperti kalimat yang tidak benar - 171 00:08:26,110 --> 00:08:28,770 mungkin karena generalisasi atas misalnya. 172 00:08:28,770 --> 00:08:32,210 Mungkin ketika Anda tumbuh dewasa, Anda melihat bahwa jamak biasanya 173 00:08:32,210 --> 00:08:35,809 dibentuk dengan menempatkan S di akhir kata. 174 00:08:35,809 --> 00:08:40,042 Dan kemudian Anda mencoba untuk melakukan jamak dari "Rusa" sebagai "rusa" atau "gigi" sebagai 175 00:08:40,042 --> 00:08:44,780 "Tooths." Jadi orang tua atau seseorang mengoreksi Anda dan berkata, tidak, 176 00:08:44,780 --> 00:08:49,020 jamak dari "rusa" adalah "rusa," dan jamak dari "gigi" adalah "gigi." Dan kemudian 177 00:08:49,020 --> 00:08:50,060 Anda belajar hal-hal. 178 00:08:50,060 --> 00:08:51,520 Jadi, Anda belajar dari trial and error. 179 00:08:51,520 --> 00:08:53,100 >> Tapi Anda juga bisa melakukan itu dengan komputer. 180 00:08:53,100 --> 00:08:55,310 Anda dapat memiliki sesuatu yang disebut penguatan pembelajaran. 181 00:08:55,310 --> 00:08:58,560 Yang pada dasarnya adalah seperti memberikan komputer reward setiap kali melakukan 182 00:08:58,560 --> 00:08:59,410 sesuatu dengan benar. 183 00:08:59,410 --> 00:09:04,710 Dan memberikan kebalikan dari hadiah dan ketika itu terjadi sesuatu yang salah. 184 00:09:04,710 --> 00:09:07,410 Anda benar-benar dapat melihat bahwa jika Anda pergi ke Google Translate dan Anda mencoba untuk 185 00:09:07,410 --> 00:09:10,220 menerjemahkan kalimat, meminta Anda untuk umpan balik. 186 00:09:10,220 --> 00:09:13,240 Jadi jika Anda berkata, oh, ada yang lebih baik terjemahan untuk kalimat ini. 187 00:09:13,240 --> 00:09:18,140 Anda dapat mengetik itu dan kemudian jika banyak orang terus mengatakan bahwa adalah lebih baik 188 00:09:18,140 --> 00:09:21,560 terjemahan, itu hanya belajar bahwa hal itu harus menggunakan terjemahan yang bukan 189 00:09:21,560 --> 00:09:22,960 satu itu memberi. 190 00:09:22,960 --> 00:09:28,830 >> Jadi, itu adalah pertanyaan yang sangat filosofis untuk melihat apakah komputer akan menjadi 191 00:09:28,830 --> 00:09:30,340 mampu berbicara atau tidak di masa depan. 192 00:09:30,340 --> 00:09:34,440 Tapi aku punya harapan tinggi bahwa mereka dapat hanya didasarkan pada argumen-argumen. 193 00:09:34,440 --> 00:09:38,570 Tapi itu hanya lebih dari filosofis pertanyaan. 194 00:09:38,570 --> 00:09:43,460 >> Jadi sementara komputer masih belum bisa bicara, apa saja hal-hal yang bisa kita lakukan? 195 00:09:43,460 --> 00:09:47,070 Beberapa hal yang benar-benar keren klasifikasi data. 196 00:09:47,070 --> 00:09:53,210 Jadi, misalnya, kalian tahu bahwa layanan email lakukan, untuk 197 00:09:53,210 --> 00:09:55,580 Misalnya, penyaringan spam. 198 00:09:55,580 --> 00:09:59,070 Jadi, setiap kali Anda menerima spam, mencoba untuk menyaring ke kotak lain. 199 00:09:59,070 --> 00:10:00,270 Jadi bagaimana cara melakukan itu? 200 00:10:00,270 --> 00:10:06,080 Ini tidak seperti komputer hanya tahu alamat email apa yang mengirim spam. 201 00:10:06,080 --> 00:10:09,130 Jadi itu lebih didasarkan pada isi pesan, atau mungkin judul, atau 202 00:10:09,130 --> 00:10:11,310 mungkin beberapa pola yang Anda miliki. 203 00:10:11,310 --> 00:10:15,690 >> Jadi, pada dasarnya, apa yang dapat Anda lakukan adalah mendapatkan banyak data email yang spam, 204 00:10:15,690 --> 00:10:19,980 email yang bukan spam, dan mempelajari apa jenis pola yang Anda miliki di 205 00:10:19,980 --> 00:10:21,000 orang-orang yang spam. 206 00:10:21,000 --> 00:10:23,260 Dan ini adalah bagian dari komputasi linguistik. 207 00:10:23,260 --> 00:10:24,720 Ini disebut klasifikasi data. 208 00:10:24,720 --> 00:10:28,100 Dan kami benar-benar akan melihat contoh bahwa dalam slide berikutnya. 209 00:10:28,100 --> 00:10:32,910 >> Hal kedua adalah bahasa alami pengolahan yang merupakan hal yang 210 00:10:32,910 --> 00:10:36,580 Grafik Pencarian lakukan membiarkan Anda menulis kalimat. 211 00:10:36,580 --> 00:10:38,690 Dan itu mempercayai Anda memahami apa adalah makna dan memberikan 212 00:10:38,690 --> 00:10:39,940 Anda hasil yang lebih baik. 213 00:10:39,940 --> 00:10:43,880 Sebenarnya, jika Anda pergi ke Google atau Bing dan Anda mencari sesuatu seperti Lady 214 00:10:43,880 --> 00:10:47,060 Gaga tinggi, Anda benar-benar akan untuk mendapatkan 5 '1 "bukan informasi 215 00:10:47,060 --> 00:10:50,170 darinya karena benar-benar mengerti apa yang Anda bicarakan. 216 00:10:50,170 --> 00:10:52,140 Jadi itu bagian dari alam pengolahan bahasa. 217 00:10:52,140 --> 00:10:57,000 >> Atau juga ketika Anda menggunakan Siri, pertama Anda memiliki algoritma yang mencoba untuk 218 00:10:57,000 --> 00:11:01,130 menerjemahkan apa yang Anda katakan dalam kata-kata, dalam teks. 219 00:11:01,130 --> 00:11:03,690 Dan kemudian mencoba untuk menerjemahkan yang menjadi makna. 220 00:11:03,690 --> 00:11:06,570 Jadi itu semua adalah bagian dari alam pengolahan bahasa. 221 00:11:06,570 --> 00:11:08,320 >> Maka Anda memiliki terjemahan mesin - 222 00:11:08,320 --> 00:11:10,300 yang sebenarnya adalah salah satu favorit saya - 223 00:11:10,300 --> 00:11:14,060 yang hanya menerjemahkan dari suatu bahasa ke bahasa lain. 224 00:11:14,060 --> 00:11:17,950 Sehingga Anda dapat berpikir bahwa ketika Anda sedang melakukan mesin penerjemahan, Anda memiliki 225 00:11:17,950 --> 00:11:19,750 kemungkinan yang tidak terbatas dari kalimat. 226 00:11:19,750 --> 00:11:22,960 Jadi tidak ada cara untuk hanya menyimpan setiap terjemahan tunggal. 227 00:11:22,960 --> 00:11:27,440 Jadi, Anda harus datang dengan menarik algoritma untuk dapat 228 00:11:27,440 --> 00:11:30,110 menerjemahkan setiap satu kalimat dalam beberapa cara. 229 00:11:30,110 --> 00:11:32,483 >> Kalian memiliki pertanyaan sejauh ini? 230 00:11:32,483 --> 00:11:34,450 Tidak ada? 231 00:11:34,450 --> 00:11:34,830 OK. 232 00:11:34,830 --> 00:11:36,900 >> Jadi apa yang kita akan melihat hari ini? 233 00:11:36,900 --> 00:11:39,300 Pertama-tama, saya akan berbicara tentang masalah klasifikasi. 234 00:11:39,300 --> 00:11:41,440 Jadi salah satu yang saya katakan tentang spam. 235 00:11:41,440 --> 00:11:46,820 Apa yang akan saya lakukan adalah, mengingat lirik sebuah lagu, dapat Anda mencoba untuk mencari tahu 236 00:11:46,820 --> 00:11:49,810 dengan probabilitas tinggi siapa penyanyi? 237 00:11:49,810 --> 00:11:53,590 Mari kita mengatakan bahwa saya memiliki lagu-lagu dari Lady Gaga dan Katy Perry, jika saya memberi Anda 238 00:11:53,590 --> 00:11:58,130 lagu baru, Anda dapat mengetahui apakah itu Katy Perry atau Lady Gaga? 239 00:11:58,130 --> 00:12:01,490 >> Yang kedua, aku hanya akan berbicara tentang masalah segmentasi. 240 00:12:01,490 --> 00:12:05,780 Jadi saya tidak tahu apakah kalian tahu, tapi Cina, Jepang, Asia Timur lainnya 241 00:12:05,780 --> 00:12:08,090 bahasa, dan bahasa lainnya pada umumnya, tidak memiliki 242 00:12:08,090 --> 00:12:09,830 spasi di antara kata-kata. 243 00:12:09,830 --> 00:12:13,540 Dan kemudian jika Anda berpikir tentang cara yang jenis komputer Anda dari mencoba untuk 244 00:12:13,540 --> 00:12:18,600 memahami pengolahan bahasa alami, terlihat pada kata-kata dan 245 00:12:18,600 --> 00:12:21,500 mencoba untuk memahami hubungan di antara mereka, kan? 246 00:12:21,500 --> 00:12:25,440 Tapi kemudian jika Anda memiliki Cina, dan Anda memiliki nol ruang, itu benar-benar sulit untuk 247 00:12:25,440 --> 00:12:28,360 mencari tahu apa hubungan antara kata-kata, karena mereka tidak memiliki 248 00:12:28,360 --> 00:12:29,530 kata-kata pada awalnya. 249 00:12:29,530 --> 00:12:32,600 Jadi Anda harus melakukan sesuatu yang disebut segmentasi yang hanya berarti menempatkan 250 00:12:32,600 --> 00:12:36,490 spasi antara apa yang kita sebut kata-kata dalam bahasa-bahasa tersebut. 251 00:12:36,490 --> 00:12:37,740 Masuk akal? 252 00:12:37,740 --> 00:12:39,680 253 00:12:39,680 --> 00:12:41,540 >> Dan kemudian kita akan berbicara tentang sintaks. 254 00:12:41,540 --> 00:12:44,050 Jadi hanya sedikit tentang alam pengolahan bahasa. 255 00:12:44,050 --> 00:12:45,420 Ini akan menjadi hanya gambaran. 256 00:12:45,420 --> 00:12:50,700 Jadi hari ini, pada dasarnya apa yang ingin saya lakukan adalah memberikan kalian sedikit dari 257 00:12:50,700 --> 00:12:53,930 dalam apa yang kemungkinan yang dapat Anda lakukan dengan komputasi 258 00:12:53,930 --> 00:12:54,960 linguistik. 259 00:12:54,960 --> 00:13:00,410 Dan kemudian Anda dapat melihat apa yang Anda pikirkan dingin antara hal-hal. 260 00:13:00,410 --> 00:13:02,270 Dan mungkin Anda bisa memikirkan proyek dan datang bicara padaku. 261 00:13:02,270 --> 00:13:05,260 Dan saya bisa memberikan nasihat tentang bagaimana untuk menerapkannya. 262 00:13:05,260 --> 00:13:09,060 >> Jadi sintaks akan menjadi sedikit tentang Grafik Cari dan mesin 263 00:13:09,060 --> 00:13:09,670 terjemahan. 264 00:13:09,670 --> 00:13:13,650 Aku hanya akan memberikan contoh bagaimana Anda bisa, misalnya, menerjemahkan 265 00:13:13,650 --> 00:13:16,020 sesuatu dari Portugis ke Inggris. 266 00:13:16,020 --> 00:13:17,830 Kedengarannya bagus? 267 00:13:17,830 --> 00:13:19,293 >> Jadi pertama, masalah klasifikasi. 268 00:13:19,293 --> 00:13:23,590 Saya akan mengatakan bahwa ini bagian dari seminar akan menjadi yang paling menantang 269 00:13:23,590 --> 00:13:27,560 satu hanya karena ada akan ada beberapa coding. 270 00:13:27,560 --> 00:13:29,470 Tapi itu akan menjadi Python. 271 00:13:29,470 --> 00:13:34,380 Aku tahu kalian tidak tahu Python, sehingga Aku hanya akan menjelaskan pada tinggi 272 00:13:34,380 --> 00:13:35,750 tingkat apa yang saya lakukan. 273 00:13:35,750 --> 00:13:40,900 Dan Anda tidak harus benar-benar peduli terlalu banyak tentang sintaks karena itulah 274 00:13:40,900 --> 00:13:42,140 sesuatu yang kalian bisa belajar. 275 00:13:42,140 --> 00:13:42,540 OK? 276 00:13:42,540 --> 00:13:43,580 Kedengarannya bagus. 277 00:13:43,580 --> 00:13:46,020 >> Jadi apa adalah masalah klasifikasi? 278 00:13:46,020 --> 00:13:49,140 Jadi Anda diberi beberapa lirik lagu, dan Anda ingin menebak 279 00:13:49,140 --> 00:13:50,620 yang menyanyikan lagu itu. 280 00:13:50,620 --> 00:13:54,045 Dan ini bisa untuk setiap jenis masalah lain. 281 00:13:54,045 --> 00:13:59,980 Jadi dapat, misalnya, Anda memiliki kampanye presiden dan Anda memiliki 282 00:13:59,980 --> 00:14:02,610 pidato, dan Anda ingin mencari apakah itu, misalnya, 283 00:14:02,610 --> 00:14:04,470 Obama atau Mitt Romney. 284 00:14:04,470 --> 00:14:07,700 Atau Anda dapat memiliki banyak email dan Anda ingin mencari tahu apakah mereka 285 00:14:07,700 --> 00:14:08,890 spam yang atau tidak. 286 00:14:08,890 --> 00:14:11,440 Jadi itu hanya mengelompokkan beberapa data berdasarkan kata-kata 287 00:14:11,440 --> 00:14:13,790 yang telah ada. 288 00:14:13,790 --> 00:14:16,295 >> Jadi untuk melakukan itu, Anda harus membuat beberapa asumsi. 289 00:14:16,295 --> 00:14:20,570 Jadi banyak tentang komputasi linguistik membuat asumsi, 290 00:14:20,570 --> 00:14:24,100 asumsi biasanya cerdas, sehingga Anda bisa mendapatkan hasil yang baik. 291 00:14:24,100 --> 00:14:26,670 Mencoba untuk membuat model untuk itu. 292 00:14:26,670 --> 00:14:31,290 Dan kemudian mencobanya dan melihat apakah ia bekerja, jika Anda memberikan presisi yang baik. 293 00:14:31,290 --> 00:14:33,940 Dan jika tidak, maka Anda mencoba untuk memperbaikinya. 294 00:14:33,940 --> 00:14:37,640 Jika tidak, Anda seperti, OK, mungkin aku harus membuat asumsi yang berbeda. 295 00:14:37,640 --> 00:14:44,030 >> Jadi asumsi bahwa kita akan membuat adalah bahwa seorang seniman biasanya bernyanyi 296 00:14:44,030 --> 00:14:49,220 tentang beberapa kali topik, dan mungkin menggunakan kata-kata beberapa kali hanya 297 00:14:49,220 --> 00:14:50,270 karena mereka terbiasa untuk itu. 298 00:14:50,270 --> 00:14:51,890 Anda hanya bisa memikirkan teman Anda. 299 00:14:51,890 --> 00:14:57,350 Saya yakin kalian semua memiliki teman yang mengatakan kalimat tanda tangan mereka, 300 00:14:57,350 --> 00:14:59,260 harfiah untuk setiap kalimat - 301 00:14:59,260 --> 00:15:02,660 seperti beberapa kata tertentu atau spesifik frase yang mereka katakan untuk 302 00:15:02,660 --> 00:15:04,020 setiap kalimat tunggal. 303 00:15:04,020 --> 00:15:07,920 >> Dan apa yang dapat Anda katakan adalah bahwa jika Anda melihat kalimat yang memiliki tanda tangan 304 00:15:07,920 --> 00:15:11,450 frase, Anda bisa menebak bahwa mungkin teman Anda adalah 305 00:15:11,450 --> 00:15:13,310 satu mengatakan itu, kan? 306 00:15:13,310 --> 00:15:18,410 Jadi Anda membuat asumsi itu dan kemudian itulah bagaimana Anda membuat model. 307 00:15:18,410 --> 00:15:24,440 >> Contoh yang akan saya berikan pada bagaimana Lady Gaga, misalnya, orang-orang 308 00:15:24,440 --> 00:15:27,430 mengatakan bahwa dia menggunakan "baby" untuk semua nya nomor satu lagu. 309 00:15:27,430 --> 00:15:32,270 Dan sebenarnya ini adalah video yang menunjukkan dia mengatakan kata "bayi" untuk 310 00:15:32,270 --> 00:15:33,410 lagu yang berbeda. 311 00:15:33,410 --> 00:15:33,860 >> [VIDEO PLAYBACK] 312 00:15:33,860 --> 00:15:34,310 >> - (Menyanyi) 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 PEMUTARAN- 323 00:15:41,090 --> 00:15:44,020 >> LUCAS FREITAS: Jadi ada, saya pikir, 40 lagu di sini di mana dia mengatakan 324 00:15:44,020 --> 00:15:48,690 kata "bayi." Jadi pada dasarnya anda bisa menebak bahwa jika Anda melihat sebuah lagu yang memiliki 325 00:15:48,690 --> 00:15:52,180 kata "bayi," ada beberapa tinggi probabilitas bahwa itu Lady Gaga. 326 00:15:52,180 --> 00:15:56,450 Tapi mari kita mencoba untuk mengembangkan ini lebih lanjut lebih formal. 327 00:15:56,450 --> 00:16:00,470 >> Jadi ini adalah lirik lagu dengan Lady Gaga dan Katy Perry. 328 00:16:00,470 --> 00:16:04,120 Jadi Anda melihat Lady Gaga, Anda melihat mereka memiliki banyak kejadian "bayi," a 329 00:16:04,120 --> 00:16:07,710 banyak kejadian-kejadian dari "jalan." Dan kemudian Katy Perry memiliki banyak kejadian 330 00:16:07,710 --> 00:16:10,360 "The," banyak kejadian "api." 331 00:16:10,360 --> 00:16:14,560 >> Jadi pada dasarnya apa yang kita ingin lakukan adalah, Anda mendapatkan sebuah lirik. 332 00:16:14,560 --> 00:16:20,480 Katakanlah bahwa Anda mendapatkan lirik untuk lagu yang "bayi," hanya "bayi." Jika 333 00:16:20,480 --> 00:16:24,750 Anda hanya mendapatkan kata "bayi," dan ini adalah semua data yang Anda miliki dari 334 00:16:24,750 --> 00:16:27,880 Lady Gaga dan Katy Perry, yang akan Anda menebak adalah orang 335 00:16:27,880 --> 00:16:29,370 yang menyanyikan lagu tersebut? 336 00:16:29,370 --> 00:16:32,360 Lady Gaga atau Katy Perry? 337 00:16:32,360 --> 00:16:33,150 Lady Gaga, kan? 338 00:16:33,150 --> 00:16:37,400 Karena dia satu-satunya yang mengatakan "Bayi." Ini terdengar bodoh, kan? 339 00:16:37,400 --> 00:16:38,760 OK, ini benar-benar mudah. 340 00:16:38,760 --> 00:16:41,860 Aku hanya melihat dua lagu dan Tentu saja, dia satu-satunya orang yang memiliki 341 00:16:41,860 --> 00:16:42,660 "Bayi." 342 00:16:42,660 --> 00:16:44,740 >> Tetapi bagaimana jika Anda memiliki banyak kata-kata? 343 00:16:44,740 --> 00:16:50,900 Jika Anda memiliki lirik yang sebenarnya, sesuatu seperti, "Sayang, aku hanya 344 00:16:50,900 --> 00:16:51,610 pergi untuk melihat [? CFT?] 345 00:16:51,610 --> 00:16:54,020 kuliah, "atau sesuatu seperti itu, dan maka Anda benar-benar harus mencari tahu - 346 00:16:54,020 --> 00:16:55,780 berdasarkan semua kata-kata - 347 00:16:55,780 --> 00:16:58,350 yang artis yang mungkin menyanyikan lagu ini? 348 00:16:58,350 --> 00:17:01,860 Jadi mari kita coba untuk mengembangkan ini sedikit lebih jauh. 349 00:17:01,860 --> 00:17:05,630 >> OK, jadi hanya didasarkan pada data yang kita punya, tampaknya Gaga mungkin 350 00:17:05,630 --> 00:17:06,260 penyanyi. 351 00:17:06,260 --> 00:17:07,904 Tapi bagaimana kita bisa menulis ini lebih formal? 352 00:17:07,904 --> 00:17:10,579 353 00:17:10,579 --> 00:17:13,140 Dan ada akan menjadi sedikit sedikit statistik. 354 00:17:13,140 --> 00:17:15,880 Jadi jika Anda tersesat, hanya mencoba untuk memahami konsep. 355 00:17:15,880 --> 00:17:18,700 Tidak masalah jika Anda memahami persamaan dengan baik. 356 00:17:18,700 --> 00:17:22,150 Ini semua akan menjadi online. 357 00:17:22,150 --> 00:17:25,490 >> Jadi pada dasarnya apa yang saya menghitung adalah probabilitas bahwa lagu ini adalah dengan 358 00:17:25,490 --> 00:17:28,040 Lady Gaga mengingat bahwa - 359 00:17:28,040 --> 00:17:30,660 jadi bar ini berarti mengingat bahwa - 360 00:17:30,660 --> 00:17:33,680 Saya melihat kata "bayi." Apakah itu masuk akal? 361 00:17:33,680 --> 00:17:35,540 Jadi aku mencoba untuk menghitung probabilitas. 362 00:17:35,540 --> 00:17:38,540 >> Jadi ada teorema ini disebut Bayes teorema yang mengatakan bahwa 363 00:17:38,540 --> 00:17:43,330 probabilitas A diberikan B, adalah probabilitas B diberikan A, kali 364 00:17:43,330 --> 00:17:47,660 probabilitas A, atas probabilitas B. Ini adalah persamaan panjang. 365 00:17:47,660 --> 00:17:51,970 Tapi apa yang Anda harus memahami dari itu adalah bahwa ini adalah apa yang saya ingin 366 00:17:51,970 --> 00:17:52,830 menghitung, kan? 367 00:17:52,830 --> 00:17:56,570 Jadi probabilitas bahwa lagu itu adalah dengan Lady Gaga mengingat bahwa saya melihat kata 368 00:17:56,570 --> 00:17:58,230 "Bayi." 369 00:17:58,230 --> 00:18:02,960 >> Dan sekarang apa yang saya mendapatkan adalah probabilitas dari kata "bayi" yang diberikan 370 00:18:02,960 --> 00:18:04,390 bahwa saya memiliki Lady Gaga. 371 00:18:04,390 --> 00:18:07,220 Dan apa yang pada dasarnya? 372 00:18:07,220 --> 00:18:10,500 Apa itu artinya, apa yang probabilitas melihat kata "bayi" 373 00:18:10,500 --> 00:18:12,130 di Gaga lirik? 374 00:18:12,130 --> 00:18:16,240 Jika saya ingin menghitung bahwa dalam sangat cara sederhana, itu hanya jumlah 375 00:18:16,240 --> 00:18:23,640 kali saya melihat "bayi" di atas jumlah kata-kata dalam lirik Gaga, kan? 376 00:18:23,640 --> 00:18:27,600 Apa frekuensi yang saya lihat kata dalam karya Gaga? 377 00:18:27,600 --> 00:18:30,530 Masuk akal? 378 00:18:30,530 --> 00:18:33,420 >> Istilah kedua adalah probabilitas Gaga. 379 00:18:33,420 --> 00:18:34,360 Apa artinya? 380 00:18:34,360 --> 00:18:38,550 Itu pada dasarnya berarti, apa yang probabilitas mengelompokkan 381 00:18:38,550 --> 00:18:40,690 beberapa lirik sebagai Gaga? 382 00:18:40,690 --> 00:18:45,320 Dan itu agak aneh, tapi mari kita pikirkan sebuah contoh. 383 00:18:45,320 --> 00:18:49,230 Jadi mari kita mengatakan bahwa probabilitas memiliki "bayi" dalam sebuah lagu adalah sama 384 00:18:49,230 --> 00:18:51,760 untuk Gaga dan Britney Spears. 385 00:18:51,760 --> 00:18:54,950 Tapi Britney Spears memiliki dua kali lebih banyak lagu dari Lady Gaga. 386 00:18:54,950 --> 00:19:00,570 Jadi jika seseorang hanya secara acak memberi Anda lirik "bayi," hal pertama yang Anda 387 00:19:00,570 --> 00:19:04,710 lihat adalah, apa probabilitas memiliki "bayi" dalam sebuah lagu Gaga, "bayi" 388 00:19:04,710 --> 00:19:05,410 dalam sebuah lagu Britney? 389 00:19:05,410 --> 00:19:06,460 Dan itu hal yang sama. 390 00:19:06,460 --> 00:19:10,040 >> Jadi hal kedua yang akan Anda lihat adalah, baik, apa probabilitas 391 00:19:10,040 --> 00:19:13,770 lyric ini dengan sendirinya menjadi lyric Gaga, dan apa probabilitas 392 00:19:13,770 --> 00:19:15,380 menjadi lyric Britney? 393 00:19:15,380 --> 00:19:18,950 Jadi sejak Britney memiliki begitu banyak lagi lirik dari Gaga, Anda mungkin akan 394 00:19:18,950 --> 00:19:21,470 mengatakan, baik, ini mungkin lirik Britney. 395 00:19:21,470 --> 00:19:23,340 Jadi itulah sebabnya kami punya ini istilah di sini. 396 00:19:23,340 --> 00:19:24,670 Probability of Gaga. 397 00:19:24,670 --> 00:19:26,950 Masuk akal? 398 00:19:26,950 --> 00:19:28,660 Apakah itu? 399 00:19:28,660 --> 00:19:29,370 OK. 400 00:19:29,370 --> 00:19:33,500 >> Dan yang terakhir adalah hanya probabilitas dari "bayi" yang tidak 401 00:19:33,500 --> 00:19:34,810 benar-benar peduli bahwa banyak. 402 00:19:34,810 --> 00:19:39,940 Tapi itu probabilitas melihat "bayi" dalam bahasa Inggris. 403 00:19:39,940 --> 00:19:42,725 Kami biasanya tidak peduli bahwa banyak tentang istilah tersebut. 404 00:19:42,725 --> 00:19:44,490 Apakah itu masuk akal? 405 00:19:44,490 --> 00:19:48,110 Jadi kemungkinan Gaga disebut probabilitas sebelumnya 406 00:19:48,110 --> 00:19:49,530 dari Gaga kelas. 407 00:19:49,530 --> 00:19:53,840 Karena itu hanya berarti bahwa, apa yang kemungkinan memiliki kelas yang - 408 00:19:53,840 --> 00:19:55,520 yang merupakan Gaga - 409 00:19:55,520 --> 00:19:59,350 hanya secara umum, hanya tanpa kondisi. 410 00:19:59,350 --> 00:20:02,560 >> Dan kemudian ketika saya memiliki probabilitas Gaga diberikan "bayi," kita menyebutnya ditambah 411 00:20:02,560 --> 00:20:06,160 berlinang air probabilitas karena itu kemungkinan memiliki 412 00:20:06,160 --> 00:20:08,300 Gaga diberikan beberapa bukti. 413 00:20:08,300 --> 00:20:11,050 Jadi aku memberikan bukti bahwa aku melihat bayi kata dan 414 00:20:11,050 --> 00:20:12,690 lagu masuk akal? 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 >> Jadi Jika saya menghitung bahwa untuk setiap lagu untuk Lady Gaga, 418 00:20:22,400 --> 00:20:25,916 apa yang akan - 419 00:20:25,916 --> 00:20:27,730 ternyata, saya tidak bisa bergerak ini. 420 00:20:27,730 --> 00:20:31,850 421 00:20:31,850 --> 00:20:36,920 Probabilitas Gaga akan sesuatu seperti, 2 lebih dari 24 kali 1/2, 422 00:20:36,920 --> 00:20:38,260 lebih dari 2 lebih dari 53. 423 00:20:38,260 --> 00:20:40,640 Tidak masalah jika Anda tahu apa angka-angka ini berasal. 424 00:20:40,640 --> 00:20:44,750 Tapi itu hanya nomor yang akan menjadi lebih dari 0, kan? 425 00:20:44,750 --> 00:20:48,610 >> Dan kemudian ketika saya melakukan Katy Perry, yang probabilitas "bayi" yang diberikan Katy adalah 426 00:20:48,610 --> 00:20:49,830 sudah 0, kan? 427 00:20:49,830 --> 00:20:52,820 Karena tidak ada "bayi" di Katy Perry. 428 00:20:52,820 --> 00:20:56,360 Jadi ini menjadi 0, dan Gaga menang, yang berarti bahwa Gaga adalah 429 00:20:56,360 --> 00:20:57,310 mungkin penyanyi. 430 00:20:57,310 --> 00:20:58,560 Apakah itu masuk akal? 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 >> Jadi jika saya ingin membuat lebih resmi ini, Aku benar-benar bisa melakukan model 435 00:21:11,750 --> 00:21:12,700 untuk beberapa kata. 436 00:21:12,700 --> 00:21:14,610 Jadi, mari kita mengatakan bahwa saya memiliki sesuatu seperti, "bayi, saya 437 00:21:14,610 --> 00:21:16,030 terbakar, "atau sesuatu. 438 00:21:16,030 --> 00:21:17,760 Sehingga memiliki beberapa kata. 439 00:21:17,760 --> 00:21:20,880 Dan dalam hal ini, Anda dapat melihat bahwa "bayi" di Gaga, 440 00:21:20,880 --> 00:21:21,710 tapi tidak di Katy. 441 00:21:21,710 --> 00:21:24,940 Dan "api" di Katy, namun itu tidak Gaga, kan? 442 00:21:24,940 --> 00:21:27,200 Jadi itu semakin rumit, kan? 443 00:21:27,200 --> 00:21:31,440 Karena tampaknya bahwa Anda hampir memiliki dasi antara keduanya. 444 00:21:31,440 --> 00:21:36,980 >> Jadi apa yang harus Anda lakukan adalah mengasumsikan independensi antara kata-kata. 445 00:21:36,980 --> 00:21:41,210 Jadi pada dasarnya apa yang berarti bahwa Aku hanya menghitung apa yang 446 00:21:41,210 --> 00:21:44,330 probabilitas melihat "bayi," apa yang kemungkinan melihat "Aku," dan 447 00:21:44,330 --> 00:21:46,670 "Am", dan "on", dan "api," semua secara terpisah. 448 00:21:46,670 --> 00:21:48,670 Lalu aku mengalikan semua dari mereka. 449 00:21:48,670 --> 00:21:52,420 Dan aku melihat apa probabilitas melihat seluruh kalimat. 450 00:21:52,420 --> 00:21:55,210 Masuk akal? 451 00:21:55,210 --> 00:22:00,270 >> Jadi pada dasarnya, jika saya memiliki hanya satu kata, apa yang ingin saya temukan adalah max arg, 452 00:22:00,270 --> 00:22:05,385 yang berarti, apa kelas yang memberi saya probabilitas tertinggi? 453 00:22:05,385 --> 00:22:10,010 Jadi apa adalah kelas yang memberikan saya probabilitas tertinggi untuk 454 00:22:10,010 --> 00:22:11,940 probabilitas kelas diberikan kata. 455 00:22:11,940 --> 00:22:17,610 Jadi dalam hal ini, Gaga diberikan "bayi." Atau Katy diberikan "bayi." Masuk akal? 456 00:22:17,610 --> 00:22:21,040 >> Dan hanya dari Bayes, yang persamaan yang saya menunjukkan, 457 00:22:21,040 --> 00:22:24,780 kita menciptakan fraksi ini. 458 00:22:24,780 --> 00:22:28,750 Satu-satunya hal adalah bahwa Anda melihat bahwa probabilitas kata diberi 459 00:22:28,750 --> 00:22:31,370 perubahan kelas tergantung di kelas, kan? 460 00:22:31,370 --> 00:22:34,260 Jumlah "baby" s yang saya miliki di Gaga berbeda dengan Katy. 461 00:22:34,260 --> 00:22:37,640 Probabilitas kelas juga perubahan karena hanya nomor 462 00:22:37,640 --> 00:22:39,740 lagu masing-masing memiliki. 463 00:22:39,740 --> 00:22:43,980 >> Tapi kemungkinan kata itu sendiri akan menjadi sama untuk semua 464 00:22:43,980 --> 00:22:44,740 seniman, kan? 465 00:22:44,740 --> 00:22:47,150 Jadi kemungkinan kata tersebut hanya, berapa probabilitas dari 466 00:22:47,150 --> 00:22:49,820 melihat kata itu di Bahasa Inggris? 467 00:22:49,820 --> 00:22:51,420 Jadi itu sama untuk mereka semua. 468 00:22:51,420 --> 00:22:55,790 Jadi karena ini adalah konstan, kita bisa hanya menjatuhkan ini dan tidak peduli tentang hal itu. 469 00:22:55,790 --> 00:23:00,230 Jadi ini akan menjadi benar-benar persamaan yang kita cari. 470 00:23:00,230 --> 00:23:03,360 >> Dan jika saya memiliki beberapa kata-kata, aku masih akan memiliki sebelum 471 00:23:03,360 --> 00:23:04,610 probabilitas di sini. 472 00:23:04,610 --> 00:23:06,980 Satu-satunya hal adalah bahwa aku mengalikan probabilitas 473 00:23:06,980 --> 00:23:08,490 semua kata-kata lain. 474 00:23:08,490 --> 00:23:10,110 Jadi aku mengalikan semua dari mereka. 475 00:23:10,110 --> 00:23:12,610 Masuk akal? 476 00:23:12,610 --> 00:23:18,440 Kelihatannya aneh tapi pada dasarnya berarti, menghitung sebelum kelas, dan 477 00:23:18,440 --> 00:23:22,100 kemudian kalikan dengan probabilitas masing-masing kata-kata berada di kelas itu. 478 00:23:22,100 --> 00:23:24,620 479 00:23:24,620 --> 00:23:29,150 >> Dan Anda tahu bahwa probabilitas kata yang diberikan kelas akan menjadi 480 00:23:29,150 --> 00:23:34,520 berapa kali Anda melihat kata itu di kelas, dibagi dengan jumlah 481 00:23:34,520 --> 00:23:37,020 kata-kata yang Anda miliki dalam kelas pada umumnya. 482 00:23:37,020 --> 00:23:37,990 Masuk akal? 483 00:23:37,990 --> 00:23:41,680 Hanya saja bagaimana "bayi" adalah 2 lebih jumlah kata yang 484 00:23:41,680 --> 00:23:43,020 Aku punya dalam lirik. 485 00:23:43,020 --> 00:23:45,130 Jadi hanya frekuensi. 486 00:23:45,130 --> 00:23:46,260 >> Tapi ada satu hal. 487 00:23:46,260 --> 00:23:51,250 Ingat bagaimana saya menunjukkan bahwa probabilitas "bayi" menjadi lirik 488 00:23:51,250 --> 00:23:56,350 dari Katy Perry adalah 0 hanya karena Katy Perry tidak memiliki "bayi" sama sekali? 489 00:23:56,350 --> 00:24:04,900 Tapi kedengarannya sedikit keras untuk hanya hanya mengatakan bahwa lirik tidak dapat dari 490 00:24:04,900 --> 00:24:10,040 seorang seniman hanya karena mereka tidak memiliki kata khususnya setiap saat. 491 00:24:10,040 --> 00:24:13,330 >> Jadi Anda hanya bisa mengatakan, baik, jika Anda tidak memiliki kata-kata ini, aku akan 492 00:24:13,330 --> 00:24:15,640 memberikan kemungkinan lebih rendah, tapi aku hanya tidak akan 493 00:24:15,640 --> 00:24:17,420 memberikan 0 segera. 494 00:24:17,420 --> 00:24:21,040 Karena mungkin itu sesuatu seperti, "Api, api, api, api," yang 495 00:24:21,040 --> 00:24:21,990 Katy Perry benar-benar. 496 00:24:21,990 --> 00:24:26,060 Dan kemudian "bayi," dan itu hanya pergi untuk 0 segera karena ada satu 497 00:24:26,060 --> 00:24:27,250 "Bayi." 498 00:24:27,250 --> 00:24:31,440 >> Jadi pada dasarnya apa yang kita lakukan adalah sesuatu yang Laplace disebut smoothing. 499 00:24:31,440 --> 00:24:36,260 Dan ini hanya berarti bahwa aku memberikan beberapa kemungkinan bahkan dengan kata-kata 500 00:24:36,260 --> 00:24:37,850 yang tidak ada. 501 00:24:37,850 --> 00:24:43,170 Jadi apa yang saya lakukan adalah bahwa ketika saya menghitung ini, saya selalu menambahkan 1 sampai 502 00:24:43,170 --> 00:24:44,180 pembilang. 503 00:24:44,180 --> 00:24:48,060 Jadi, bahkan jika kata tersebut tidak ada, dalam kasus ini, jika ini adalah 0, aku masih 504 00:24:48,060 --> 00:24:51,250 menghitung ini sebagai 1 atas jumlah kata. 505 00:24:51,250 --> 00:24:55,060 Jika tidak, saya mendapatkan berapa banyak kata Saya miliki dan saya tambahkan 1. 506 00:24:55,060 --> 00:24:58,300 Jadi aku menghitung untuk kedua kasus. 507 00:24:58,300 --> 00:25:00,430 Masuk akal? 508 00:25:00,430 --> 00:25:03,060 >> Jadi sekarang mari kita melakukan coding. 509 00:25:03,060 --> 00:25:06,440 Aku akan harus melakukannya cukup cepat, tapi itu hanya penting bahwa Anda 510 00:25:06,440 --> 00:25:08,600 orang memahami konsep-konsep. 511 00:25:08,600 --> 00:25:13,450 Jadi apa yang kita coba lakukan adalah persis menerapkan ini 512 00:25:13,450 --> 00:25:14,330 hal yang saya hanya berkata - 513 00:25:14,330 --> 00:25:19,110 Saya ingin Anda untuk menempatkan lirik dari Lady Gaga dan Katy Perry. 514 00:25:19,110 --> 00:25:22,980 Dan program ini akan dapat mengatakan jika ini lirik baru dari Gaga 515 00:25:22,980 --> 00:25:24,170 atau Katy Perry. 516 00:25:24,170 --> 00:25:25,800 Masuk akal? 517 00:25:25,800 --> 00:25:27,530 OK. 518 00:25:27,530 --> 00:25:30,710 >> Jadi saya punya program ini saya akan untuk memanggil classify.py. 519 00:25:30,710 --> 00:25:31,970 Jadi ini adalah Python. 520 00:25:31,970 --> 00:25:34,210 Ini adalah bahasa pemrograman baru. 521 00:25:34,210 --> 00:25:38,020 Hal ini sangat mirip dalam beberapa cara untuk C dan PHP. 522 00:25:38,020 --> 00:25:43,180 Hal ini mirip karena jika Anda ingin belajar Python setelah mengetahui C, itu 523 00:25:43,180 --> 00:25:46,270 benar-benar tidak banyak tantangan hanya karena Python jauh lebih mudah 524 00:25:46,270 --> 00:25:47,520 dari C, pertama-tama. 525 00:25:47,520 --> 00:25:49,370 Dan banyak hal yang sudah diimplementasikan untuk Anda. 526 00:25:49,370 --> 00:25:56,820 Jadi bagaimana seperti PHP memiliki fungsi yang mengurutkan daftar, atau menambahkan sesuatu 527 00:25:56,820 --> 00:25:58,780 ke array, atau bla, bla, bla. 528 00:25:58,780 --> 00:26:00,690 Python memiliki semua dari mereka juga. 529 00:26:00,690 --> 00:26:05,960 >> Jadi aku hanya akan menjelaskan dengan cepat bagaimana kita bisa melakukan klasifikasi 530 00:26:05,960 --> 00:26:07,860 masalah bagi di sini. 531 00:26:07,860 --> 00:26:13,230 Jadi mari kita mengatakan bahwa dalam kasus ini, saya memiliki lirik dari Gaga dan Katy Perry. 532 00:26:13,230 --> 00:26:21,880 Cara yang saya miliki adalah bahwa lirik kata pertama dari lirik adalah 533 00:26:21,880 --> 00:26:25,250 nama artis, dan sisanya adalah lirik. 534 00:26:25,250 --> 00:26:29,470 Jadi, mari kita mengatakan bahwa saya memiliki daftar ini di yang pertama adalah lyrics by Gaga. 535 00:26:29,470 --> 00:26:31,930 Jadi di sinilah aku di jalur yang benar. 536 00:26:31,930 --> 00:26:35,270 Dan yang berikutnya adalah Katy, dan itu juga lirik. 537 00:26:35,270 --> 00:26:38,040 >> Jadi ini adalah bagaimana Anda mendeklarasikan variabel dalam Python. 538 00:26:38,040 --> 00:26:40,200 Anda tidak perlu memberikan tipe data. 539 00:26:40,200 --> 00:26:43,150 Anda hanya menulis "lirik," jenis seperti di PHP. 540 00:26:43,150 --> 00:26:44,890 Masuk akal? 541 00:26:44,890 --> 00:26:47,770 >> Jadi apa hal-hal yang saya harus menghitung untuk dapat menghitung 542 00:26:47,770 --> 00:26:49,360 probabilitas? 543 00:26:49,360 --> 00:26:55,110 Saya harus menghitung "prior" dari masing-masing yang berbeda 544 00:26:55,110 --> 00:26:56,710 kelas yang saya miliki. 545 00:26:56,710 --> 00:27:06,680 Saya harus menghitung "posteriors," atau cukup banyak probabilitas 546 00:27:06,680 --> 00:27:12,150 setiap kata yang berbeda yang Saya dapat memiliki untuk setiap artis. 547 00:27:12,150 --> 00:27:17,210 Jadi dalam Gaga, misalnya, aku akan untuk memiliki daftar berapa kali saya melihat 548 00:27:17,210 --> 00:27:19,250 setiap kata. 549 00:27:19,250 --> 00:27:20,760 Masuk akal? 550 00:27:20,760 --> 00:27:25,370 >> Dan akhirnya, aku hanya akan memiliki daftar yang disebut "kata" yang hanya akan 551 00:27:25,370 --> 00:27:29,780 memiliki berapa banyak kata I miliki untuk masing-masing seniman. 552 00:27:29,780 --> 00:27:33,760 Jadi untuk Gaga, misalnya, ketika saya melihat untuk lirik, saya, saya pikir, 24 553 00:27:33,760 --> 00:27:34,750 kata-kata secara total. 554 00:27:34,750 --> 00:27:38,970 Jadi daftar ini hanya akan memiliki Gaga 24, dan Katy nomor lain. 555 00:27:38,970 --> 00:27:40,130 Masuk akal? 556 00:27:40,130 --> 00:27:40,560 OK. 557 00:27:40,560 --> 00:27:42,530 >> Jadi sekarang, sebenarnya, mari kita pergi ke coding. 558 00:27:42,530 --> 00:27:45,270 Jadi dengan Python, Anda benar-benar dapat kembali sekelompok berbeda 559 00:27:45,270 --> 00:27:46,630 hal dari fungsi. 560 00:27:46,630 --> 00:27:50,810 Jadi aku akan membuat fungsi ini disebut "bersyarat," yang akan 561 00:27:50,810 --> 00:27:53,890 untuk mengembalikan semua hal, yang "Prior," yang "probabilitas," dan 562 00:27:53,890 --> 00:28:05,690 "Kata-kata." Jadi "bersyarat," dan itu akan menelepon ke "lirik." 563 00:28:05,690 --> 00:28:11,510 >> Jadi sekarang saya ingin Anda untuk benar-benar menulis fungsi ini. 564 00:28:11,510 --> 00:28:17,750 Jadi cara yang saya bisa menulis ini fungsi saya hanya didefinisikan ini 565 00:28:17,750 --> 00:28:20,620 berfungsi dengan "def." Jadi saya melakukan "def bersyarat, "dan itu mengambil 566 00:28:20,620 --> 00:28:28,700 "Lirik." Dan apa ini yang akan dilakukan adalah, pertama-tama, saya memiliki prior saya 567 00:28:28,700 --> 00:28:31,030 bahwa saya ingin menghitung. 568 00:28:31,030 --> 00:28:34,330 >> Jadi cara yang dapat saya lakukan ini adalah membuat kamus dengan Python, yang 569 00:28:34,330 --> 00:28:37,320 cukup banyak hal yang sama seperti hash tabel, atau itu seperti berulang 570 00:28:37,320 --> 00:28:40,480 array dalam PHP. 571 00:28:40,480 --> 00:28:44,150 Ini adalah bagaimana saya menyatakan kamus. 572 00:28:44,150 --> 00:28:53,580 Dan pada dasarnya apa artinya ini adalah bahwa prior dari Gaga adalah 0.5, misalnya, jika 573 00:28:53,580 --> 00:28:57,200 50% dari lirik berasal dari Gaga, 50% berasal dari Katy. 574 00:28:57,200 --> 00:28:58,450 Masuk akal? 575 00:28:58,450 --> 00:29:00,680 576 00:29:00,680 --> 00:29:03,680 Jadi saya harus mencari tahu bagaimana untuk menghitung prior. 577 00:29:03,680 --> 00:29:07,120 >> Yang berikutnya yang harus saya lakukan, juga, adalah probabilitas dan kata-kata. 578 00:29:07,120 --> 00:29:17,100 Jadi probabilitas Gaga adalah daftar semua probabilitas yang saya 579 00:29:17,100 --> 00:29:19,160 memiliki untuk setiap kata-kata untuk Gaga. 580 00:29:19,160 --> 00:29:23,880 Jadi jika saya pergi ke probabilitas Gaga "Bayi," misalnya, itu akan memberi saya 581 00:29:23,880 --> 00:29:28,750 sesuatu seperti 2 lebih dari 24 dalam kasus itu. 582 00:29:28,750 --> 00:29:30,070 Masuk akal? 583 00:29:30,070 --> 00:29:36,120 Jadi aku pergi ke "probabilitas," pergi ke "Gaga" bucket yang memiliki daftar semua 584 00:29:36,120 --> 00:29:40,550 kata-kata Gaga, maka saya pergi ke "bayi," dan saya melihat probabilitas. 585 00:29:40,550 --> 00:29:45,940 >> Dan akhirnya saya punya ini "Kata" kamus. 586 00:29:45,940 --> 00:29:53,620 Jadi di sini, "probabilitas." Dan kemudian "Kata-kata." Jadi jika aku lakukan "kata-kata," "Gaga," 587 00:29:53,620 --> 00:29:58,330 apa yang akan terjadi adalah bahwa hal itu akan memberi saya 24, mengatakan bahwa saya 588 00:29:58,330 --> 00:30:01,990 memiliki 24 kata-kata dalam lirik dari Gaga. 589 00:30:01,990 --> 00:30:04,110 Masuk akal? 590 00:30:04,110 --> 00:30:07,070 Jadi di sini, "kata-kata" sama dah-dah-dah. 591 00:30:07,070 --> 00:30:07,620 Oke 592 00:30:07,620 --> 00:30:12,210 >> Jadi apa yang akan saya lakukan adalah saya akan iterate atas setiap lirik, sehingga 593 00:30:12,210 --> 00:30:14,490 masing-masing string yang Saya ada di daftar. 594 00:30:14,490 --> 00:30:18,040 Dan aku akan menghitung hal-hal untuk masing-masing calon. 595 00:30:18,040 --> 00:30:19,950 Masuk akal? 596 00:30:19,950 --> 00:30:21,700 Jadi saya harus melakukan untuk loop. 597 00:30:21,700 --> 00:30:26,300 >> Jadi dengan Python apa yang dapat saya lakukan adalah "untuk baris dalam lirik. "Hal yang sama sebagai 598 00:30:26,300 --> 00:30:28,000 "Untuk setiap" pernyataan PHP. 599 00:30:28,000 --> 00:30:33,420 Ingat bagaimana jika itu PHP aku bisa mengatakan "untuk setiap lirik sebagai 600 00:30:33,420 --> 00:30:35,220 line. "Masuk akal? 601 00:30:35,220 --> 00:30:38,900 Jadi aku mengambil setiap baris, dalam hal ini kasus, string ini dan berikutnya 602 00:30:38,900 --> 00:30:44,540 String sehingga untuk masing-masing baris apa yang saya akan lakukan adalah pertama, aku akan 603 00:30:44,540 --> 00:30:49,150 membagi baris ini ke dalam daftar kata dipisahkan oleh spasi. 604 00:30:49,150 --> 00:30:53,730 >> Jadi hal yang keren tentang Python adalah bahwa Anda bisa saja Google seperti "bagaimana saya bisa 605 00:30:53,730 --> 00:30:58,220 membagi string ke dalam kata-kata? "Dan itu akan memberitahu Anda bagaimana untuk melakukannya. 606 00:30:58,220 --> 00:31:04,890 Dan cara untuk melakukannya, itu hanya "baris = Line.split () "dan itu pada dasarnya 607 00:31:04,890 --> 00:31:08,640 akan memberi Anda daftar dengan setiap kata di sini. 608 00:31:08,640 --> 00:31:09,620 Masuk akal? 609 00:31:09,620 --> 00:31:15,870 Jadi sekarang bahwa saya melakukan itu saya ingin tahu yang adalah penyanyi dari lagu itu. 610 00:31:15,870 --> 00:31:20,130 Dan untuk melakukan itu saya hanya harus mendapatkan elemen pertama dari array, kan? 611 00:31:20,130 --> 00:31:26,390 Jadi saya hanya bisa mengatakan bahwa saya "penyanyi = Baris (0) "Masuk akal? 612 00:31:26,390 --> 00:31:32,010 >> Lalu apa yang harus saya lakukan adalah, pertama semua, aku akan memperbarui berapa banyak 613 00:31:32,010 --> 00:31:36,130 kata-kata yang saya miliki di bawah "Gaga." jadi aku hanya akan menghitung berapa banyak kata-kata saya 614 00:31:36,130 --> 00:31:38,690 ada dalam daftar ini, kan? 615 00:31:38,690 --> 00:31:41,910 Karena ini adalah berapa banyak kata yang saya miliki dalam lirik dan aku hanya akan 616 00:31:41,910 --> 00:31:44,120 menambahkannya ke "Gaga" array. 617 00:31:44,120 --> 00:31:47,090 Apakah itu masuk akal? 618 00:31:47,090 --> 00:31:49,010 Jangan terlalu berfokus pada sintaks. 619 00:31:49,010 --> 00:31:50,430 Pikirkan lebih lanjut tentang konsep-konsep. 620 00:31:50,430 --> 00:31:52,400 Itulah bagian yang paling penting. 621 00:31:52,400 --> 00:31:52,720 OK. 622 00:31:52,720 --> 00:32:00,260 >> Jadi apa yang saya bisa melakukannya jika "Gaga" adalah sudah ada dalam daftar itu, jadi "jika penyanyi di 623 00:32:00,260 --> 00:32:03,190 kata-kata "yang berarti bahwa saya sudah memiliki kata-kata oleh Gaga. 624 00:32:03,190 --> 00:32:06,640 Saya hanya ingin menambahkan tambahan kata-kata itu. 625 00:32:06,640 --> 00:32:15,810 Jadi apa yang saya lakukan adalah "kata-kata (penyanyi) + = Len (line) - 1 ". 626 00:32:15,810 --> 00:32:18,250 Dan kemudian aku hanya bisa melakukan panjang garis. 627 00:32:18,250 --> 00:32:21,860 Jadi berapa banyak elemen I memiliki dalam array. 628 00:32:21,860 --> 00:32:27,060 Dan saya harus melakukan dikurangi 1 hanya karena elemen pertama dari array hanya 629 00:32:27,060 --> 00:32:29,180 penyanyi dan orang-orang yang tidak lirik. 630 00:32:29,180 --> 00:32:31,420 Masuk akal? 631 00:32:31,420 --> 00:32:32,780 OK. 632 00:32:32,780 --> 00:32:35,820 >> "Lain," itu berarti bahwa saya ingin benar-benar memasukkan Gaga ke dalam daftar. 633 00:32:35,820 --> 00:32:45,990 Jadi saya hanya melakukan "kata (penyanyi) = Len (line) - 1, "maaf. 634 00:32:45,990 --> 00:32:49,200 Jadi satu-satunya perbedaan antara dua baris adalah bahwa yang satu ini, tidak 635 00:32:49,200 --> 00:32:51,080 ada lagi, jadi aku hanya memulainya. 636 00:32:51,080 --> 00:32:53,820 Yang satu ini aku benar-benar menambahkan. 637 00:32:53,820 --> 00:32:55,570 OK. 638 00:32:55,570 --> 00:32:59,480 Jadi ini menambah kata-kata. 639 00:32:59,480 --> 00:33:03,040 >> Sekarang saya ingin menambah prior. 640 00:33:03,040 --> 00:33:05,480 Jadi bagaimana cara menghitung prior? 641 00:33:05,480 --> 00:33:11,580 Para prior dapat dihitung oleh berapa kali. 642 00:33:11,580 --> 00:33:15,340 Jadi berapa kali Anda melihat penyanyi itu di antara semua penyanyi yang Anda 643 00:33:15,340 --> 00:33:16,380 memiliki, kan? 644 00:33:16,380 --> 00:33:18,810 Jadi untuk Gaga dan Katy Perry, dalam hal ini, saya melihat Gaga 645 00:33:18,810 --> 00:33:20,570 sekali, Katy Perry sekali. 646 00:33:20,570 --> 00:33:23,320 >> Jadi pada dasarnya prior untuk Gaga dan Katy Perry akan 647 00:33:23,320 --> 00:33:24,390 hanya menjadi satu, kan? 648 00:33:24,390 --> 00:33:26,500 Anda hanya berapa kali Saya melihat artis. 649 00:33:26,500 --> 00:33:28,740 Jadi ini sangat mudah untuk menghitung. 650 00:33:28,740 --> 00:33:34,100 Aku hanya bisa sesuatu yang mirip seperti seperti "jika penyanyi di prior, "aku hanya akan 651 00:33:34,100 --> 00:33:38,970 untuk menambahkan 1 ke kotak prior mereka. 652 00:33:38,970 --> 00:33:51,000 Jadi, "prior (menyanyi)" + = 1 "dan kemudian" lain " Aku akan melakukan "prior (penyanyi) 653 00:33:51,000 --> 00:33:55,000 = 1. "Masuk akal? 654 00:33:55,000 --> 00:34:00,080 >> Jadi jika tidak ada saya hanya menempatkan sebagai 1, kalau tidak saya hanya menambahkan 1. 655 00:34:00,080 --> 00:34:11,280 OK, jadi sekarang semua yang saya telah meninggalkan untuk melakukan juga menambahkan setiap kata ke 656 00:34:11,280 --> 00:34:12,290 probabilitas. 657 00:34:12,290 --> 00:34:14,889 Jadi saya harus menghitung berapa kali Saya melihat setiap kata. 658 00:34:14,889 --> 00:34:18,780 Jadi saya hanya perlu melakukan yang lain untuk loop di baris. 659 00:34:18,780 --> 00:34:25,190 >> Sehingga hal pertama yang akan saya lakukan adalah memeriksa apakah penyanyi sudah memiliki 660 00:34:25,190 --> 00:34:26,969 probabilitas array. 661 00:34:26,969 --> 00:34:31,739 Jadi aku memeriksa jika penyanyi tidak memiliki array probabilitas, aku hanya 662 00:34:31,739 --> 00:34:34,480 akan menginisialisasi satu untuk mereka. 663 00:34:34,480 --> 00:34:36,400 Ini bahkan array, maaf, itu kamus. 664 00:34:36,400 --> 00:34:43,080 Jadi probabilitas penyanyi akan menjadi kamus terbuka, jadi aku 665 00:34:43,080 --> 00:34:45,830 hanya menginisialisasi kamus untuk itu. 666 00:34:45,830 --> 00:34:46,820 OK? 667 00:34:46,820 --> 00:34:58,330 >> Dan sekarang aku benar-benar bisa melakukan untuk loop untuk menghitung setiap kata ' 668 00:34:58,330 --> 00:35:00,604 probabilitas. 669 00:35:00,604 --> 00:35:01,540 OK. 670 00:35:01,540 --> 00:35:04,160 Jadi apa yang dapat saya lakukan adalah untuk loop. 671 00:35:04,160 --> 00:35:06,590 Jadi aku hanya akan iterate atas array. 672 00:35:06,590 --> 00:35:15,320 Jadi cara yang dapat saya lakukan itu di Python adalah "for i in range." Dari 1 673 00:35:15,320 --> 00:35:19,200 karena saya ingin memulai di kedua elemen karena yang pertama adalah 674 00:35:19,200 --> 00:35:20,260 nama penyanyi. 675 00:35:20,260 --> 00:35:24,990 Jadi dari satu sampai panjang garis. 676 00:35:24,990 --> 00:35:29,760 Dan ketika aku mulai benar-benar pergi dari seperti di sini dari 1 sampai len dari 677 00:35:29,760 --> 00:35:30,740 baris dikurangi 1. 678 00:35:30,740 --> 00:35:33,810 Jadi sudah tidak bahwa hal melakukan n dikurangi 1 untuk array yang sangat 679 00:35:33,810 --> 00:35:35,500 nyaman. 680 00:35:35,500 --> 00:35:37,850 Masuk akal? 681 00:35:37,850 --> 00:35:42,770 >> Jadi untuk masing-masing, apa yang akan saya lakukan adalah, seperti di yang lain, 682 00:35:42,770 --> 00:35:50,320 Aku akan memeriksa apakah kata dalam posisi di baris sudah di 683 00:35:50,320 --> 00:35:51,570 probabilitas. 684 00:35:51,570 --> 00:35:53,400 685 00:35:53,400 --> 00:35:57,260 Dan kemudian seperti yang saya katakan di sini, probabilitas kata-kata, seperti dalam aku meletakkan 686 00:35:57,260 --> 00:35:58,400 "Probabilitas (penyanyi)". 687 00:35:58,400 --> 00:35:59,390 Jadi nama penyanyi. 688 00:35:59,390 --> 00:36:03,450 Jadi jika sudah di "Probabilit (penyanyi)", itu berarti bahwa saya 689 00:36:03,450 --> 00:36:11,960 ingin menambahkan 1 untuk itu, jadi saya akan melakukan "probabilitas (penyanyi)", dan 690 00:36:11,960 --> 00:36:14,100 kata disebut "garis (i)". 691 00:36:14,100 --> 00:36:22,630 Saya akan menambahkan 1 dan "lain" Aku hanya akan menginisialisasi ke 1. 692 00:36:22,630 --> 00:36:23,880 "Jalur (i)". 693 00:36:23,880 --> 00:36:26,920 694 00:36:26,920 --> 00:36:28,420 Masuk akal? 695 00:36:28,420 --> 00:36:30,180 >> Jadi, saya menghitung semua array. 696 00:36:30,180 --> 00:36:36,580 Jadi, sekarang semua yang harus saya lakukan untuk satu ini hanya "kembali prior, 697 00:36:36,580 --> 00:36:43,230 probabilitas dan kata-kata. "Mari melihat apakah ada, OK. 698 00:36:43,230 --> 00:36:45,690 Tampaknya semuanya bekerja sejauh ini. 699 00:36:45,690 --> 00:36:46,900 Jadi, itu masuk akal? 700 00:36:46,900 --> 00:36:47,750 Dalam beberapa cara? 701 00:36:47,750 --> 00:36:49,280 OK. 702 00:36:49,280 --> 00:36:51,980 Jadi sekarang aku punya semua probabilitas. 703 00:36:51,980 --> 00:36:55,100 Jadi sekarang satu-satunya hal yang tersisa hanya untuk memiliki hal yang yang 704 00:36:55,100 --> 00:36:58,650 menghitung produk dari semua probabilitas ketika saya mendapatkan lirik. 705 00:36:58,650 --> 00:37:06,270 >> Jadi, mari kita mengatakan bahwa saya ingin sekarang panggilan fungsi ini "mengklasifikasikan ()" dan 706 00:37:06,270 --> 00:37:08,880 hal fungsi yang mengambil hanya sebuah argumen. 707 00:37:08,880 --> 00:37:13,170 Katakanlah "Baby, aku terbakar" dan itu akan mencari tahu apa yang 708 00:37:13,170 --> 00:37:14,490 probabilitas bahwa ini adalah Gaga? 709 00:37:14,490 --> 00:37:16,405 Berapa probabilitas bahwa ini adalah Katie? 710 00:37:16,405 --> 00:37:19,690 Kedengarannya bagus? 711 00:37:19,690 --> 00:37:25,750 Jadi aku hanya akan harus membuat fungsi baru yang disebut "mengklasifikasikan ()" dan 712 00:37:25,750 --> 00:37:29,180 itu akan mengambil beberapa lirik juga. 713 00:37:29,180 --> 00:37:31,790 714 00:37:31,790 --> 00:37:36,160 Dan selain lirik saya juga harus mengirim prior, yang 715 00:37:36,160 --> 00:37:37,700 probabilitas dan kata-kata. 716 00:37:37,700 --> 00:37:44,000 Jadi aku akan mengirim lirik, prior, probabilitas, kata-kata. 717 00:37:44,000 --> 00:37:51,840 >> Jadi ini adalah mengambil lirik, prior, probabilitas, kata-kata. 718 00:37:51,840 --> 00:37:53,530 Jadi, apa gunanya? 719 00:37:53,530 --> 00:37:57,180 Hal ini pada dasarnya akan pergi melalui semua calon mungkin bahwa Anda 720 00:37:57,180 --> 00:37:58,510 memiliki sebagai penyanyi. 721 00:37:58,510 --> 00:37:59,425 Dan di mana para kandidat? 722 00:37:59,425 --> 00:38:01,020 Mereka Dalam prior, kan? 723 00:38:01,020 --> 00:38:02,710 Jadi saya memiliki semua orang di sana. 724 00:38:02,710 --> 00:38:07,870 Jadi aku akan memiliki kamus dari semua kandidat yang mungkin. 725 00:38:07,870 --> 00:38:14,220 Dan kemudian untuk setiap kandidat dalam prior, sehingga itu berarti bahwa itu akan 726 00:38:14,220 --> 00:38:17,740 menjadi Gaga, Katie jika aku punya lebih akan lebih. 727 00:38:17,740 --> 00:38:20,410 Aku akan mulai menghitung probabilitas ini. 728 00:38:20,410 --> 00:38:28,310 Kemungkinan seperti yang kita lihat dalam PowerPoint adalah kali sebelum yang 729 00:38:28,310 --> 00:38:30,800 produk dari masing-masing probabilitas lainnya. 730 00:38:30,800 --> 00:38:32,520 >> Jadi saya dapat melakukan hal yang sama di sini. 731 00:38:32,520 --> 00:38:36,330 Aku hanya bisa melakukan probabilitas awalnya hanya sebelumnya. 732 00:38:36,330 --> 00:38:40,340 Jadi prior calon. 733 00:38:40,340 --> 00:38:40,870 Benar? 734 00:38:40,870 --> 00:38:45,360 Dan sekarang aku harus iterate atas semua kata-kata yang saya miliki dalam lirik untuk menjadi 735 00:38:45,360 --> 00:38:48,820 mampu menambah probabilitas untuk masing-masing, OK? 736 00:38:48,820 --> 00:38:57,900 Jadi, "untuk kata dalam lirik" apa yang akan saya lakukan adalah, jika kata tersebut di 737 00:38:57,900 --> 00:39:01,640 "Probabilitas (calon)", yang berarti bahwa itu sebuah kata yang 738 00:39:01,640 --> 00:39:03,640 kandidat telah di lirik mereka - 739 00:39:03,640 --> 00:39:05,940 misalnya, "bayi" untuk Gaga - 740 00:39:05,940 --> 00:39:11,710 apa yang akan saya lakukan adalah bahwa probabilitas akan dikalikan 741 00:39:11,710 --> 00:39:22,420 dengan 1 ditambah probabilitas calon untuk kata itu. 742 00:39:22,420 --> 00:39:25,710 Dan itu disebut "kata". 743 00:39:25,710 --> 00:39:32,440 Ini dibagi dengan jumlah kata yang saya miliki untuk calon itu. 744 00:39:32,440 --> 00:39:37,450 Total jumlah kata yang saya miliki untuk penyanyi yang saya sedang melihat. 745 00:39:37,450 --> 00:39:40,290 >> "Lain." itu berarti itu kata baru sehingga akan menjadi seperti misalnya 746 00:39:40,290 --> 00:39:41,860 "Api" untuk Lady Gaga. 747 00:39:41,860 --> 00:39:45,760 Jadi aku hanya ingin melakukan lebih dari 1 "Kata (calon)". 748 00:39:45,760 --> 00:39:47,710 Jadi saya tidak ingin menempatkan istilah ini di sini. 749 00:39:47,710 --> 00:39:50,010 >> Jadi itu akan menjadi dasarnya menyalin dan menyisipkan ini. 750 00:39:50,010 --> 00:39:54,380 751 00:39:54,380 --> 00:39:56,000 Tapi aku akan menghapus bagian ini. 752 00:39:56,000 --> 00:39:57,610 Jadi itu hanya akan menjadi 1 lebih dari itu. 753 00:39:57,610 --> 00:40:00,900 754 00:40:00,900 --> 00:40:02,150 Kedengarannya bagus? 755 00:40:02,150 --> 00:40:03,980 756 00:40:03,980 --> 00:40:09,700 Dan sekarang pada akhirnya, aku hanya akan mencetak nama kandidat dan 757 00:40:09,700 --> 00:40:15,750 kemungkinan yang Anda miliki dari memiliki S pada lirik mereka. 758 00:40:15,750 --> 00:40:16,200 Masuk akal? 759 00:40:16,200 --> 00:40:18,390 Dan aku benar-benar bahkan tidak membutuhkan kamus ini. 760 00:40:18,390 --> 00:40:19,510 Masuk akal? 761 00:40:19,510 --> 00:40:21,810 >> Jadi, mari kita lihat apakah ini benar-benar bekerja. 762 00:40:21,810 --> 00:40:24,880 Jadi jika saya menjalankan ini, tidak berhasil. 763 00:40:24,880 --> 00:40:26,130 Tunggu satu detik. 764 00:40:26,130 --> 00:40:28,870 765 00:40:28,870 --> 00:40:31,720 "Kata-kata (calon)", "kata (calon)", itu 766 00:40:31,720 --> 00:40:33,750 nama array. 767 00:40:33,750 --> 00:40:41,435 OK Jadi, ia mengatakan ada beberapa bug untuk kandidat dalam prior. 768 00:40:41,435 --> 00:40:46,300 769 00:40:46,300 --> 00:40:48,760 Mari saya hanya dingin sedikit. 770 00:40:48,760 --> 00:40:50,360 OK. 771 00:40:50,360 --> 00:40:51,305 Mari kita coba. 772 00:40:51,305 --> 00:40:51,720 OK. 773 00:40:51,720 --> 00:40:58,710 >> Sehingga memberikan Katy Perry memiliki ini probabilitas kali ini 10 ke 774 00:40:58,710 --> 00:41:02,200 minus 7, dan Gaga memiliki ini kali 10 sampai minus 6. 775 00:41:02,200 --> 00:41:05,610 Jadi Anda lihat itu menunjukkan bahwa Gaga memiliki probabilitas yang lebih tinggi. 776 00:41:05,610 --> 00:41:09,260 Jadi "Baby, aku on Fire" adalah mungkin lagu Gaga. 777 00:41:09,260 --> 00:41:10,580 Masuk akal? 778 00:41:10,580 --> 00:41:12,030 Jadi ini adalah apa yang kita lakukan. 779 00:41:12,030 --> 00:41:16,010 >> Kode ini akan diposting online, sehingga kalian bisa check it out. 780 00:41:16,010 --> 00:41:20,720 Mungkin menggunakan beberapa dari itu karena jika Anda ingin melakukan proyek atau sesuatu yang serupa. 781 00:41:20,720 --> 00:41:22,150 OK. 782 00:41:22,150 --> 00:41:25,930 Ini hanya untuk menunjukkan apa komputasi 783 00:41:25,930 --> 00:41:27,230 kode linguistik terlihat seperti. 784 00:41:27,230 --> 00:41:33,040 Tapi sekarang mari kita pergi ke lebih tingkat tinggi hal. 785 00:41:33,040 --> 00:41:33,340 OK. 786 00:41:33,340 --> 00:41:35,150 >> Jadi masalah lain saya bicarakan - 787 00:41:35,150 --> 00:41:37,550 masalah segmentasi adalah yang pertama dari mereka. 788 00:41:37,550 --> 00:41:40,820 Jadi Anda miliki di sini Jepang. 789 00:41:40,820 --> 00:41:43,420 Dan kemudian Anda melihat bahwa tidak ada spasi. 790 00:41:43,420 --> 00:41:49,110 Jadi ini pada dasarnya berarti bahwa itu bagian atas kursi, kan? 791 00:41:49,110 --> 00:41:50,550 Anda berbicara bahasa Jepang? 792 00:41:50,550 --> 00:41:52,840 Ini adalah atas kursi, kan? 793 00:41:52,840 --> 00:41:54,480 >> SISWA: Aku tidak tahu apa kanji di atas ada. 794 00:41:54,480 --> 00:41:57,010 >> LUCAS FREITAS: Ini [BERBICARA JEPANG] 795 00:41:57,010 --> 00:41:57,950 OK. 796 00:41:57,950 --> 00:42:00,960 Jadi pada dasarnya berarti kursi atas. 797 00:42:00,960 --> 00:42:03,620 Jadi jika Anda harus menempatkan spasi itu akan berada di sini. 798 00:42:03,620 --> 00:42:05,970 Dan kemudian Anda memiliki [? Ueda-san. ?] 799 00:42:05,970 --> 00:42:09,040 Yang pada dasarnya berarti Mr Ueda. 800 00:42:09,040 --> 00:42:13,180 Dan Anda melihat bahwa "Ueda" dan Anda memiliki ruang dan kemudian "san." Jadi, Anda melihat bahwa 801 00:42:13,180 --> 00:42:15,470 di sini Anda "Ue" seperti dengan sendirinya. 802 00:42:15,470 --> 00:42:17,750 Dan di sini memiliki karakter sebelahnya. 803 00:42:17,750 --> 00:42:21,720 >> Jadi tidak seperti dalam bahasa-bahasa karakter yang berarti kata sehingga Anda 804 00:42:21,720 --> 00:42:23,980 hanya menempatkan banyak ruang. 805 00:42:23,980 --> 00:42:25,500 Karakter berhubungan satu sama lain. 806 00:42:25,500 --> 00:42:28,680 Dan mereka bisa bersama-sama seperti dua, tiga, satu. 807 00:42:28,680 --> 00:42:34,520 Jadi Anda benar-benar harus membuat semacam cara menempatkan ruang-ruang tersebut. 808 00:42:34,520 --> 00:42:38,850 >> Dan hal ini adalah bahwa setiap kali Anda mendapatkan Data dari bahasa-bahasa Asia, 809 00:42:38,850 --> 00:42:40,580 semuanya datang unsegmented. 810 00:42:40,580 --> 00:42:45,940 Karena tidak ada orang yang menulis Jepang atau Cina menulis dengan spasi. 811 00:42:45,940 --> 00:42:48,200 Setiap kali Anda menulis Cina, Jepang Anda hanya menulis segala sesuatu 812 00:42:48,200 --> 00:42:48,710 tanpa spasi. 813 00:42:48,710 --> 00:42:52,060 Ia bahkan tidak masuk akal untuk menempatkan spasi. 814 00:42:52,060 --> 00:42:57,960 Jadi ketika Anda mendapatkan data dari beberapa Bahasa Asia Timur, jika Anda ingin 815 00:42:57,960 --> 00:43:00,760 benar-benar melakukan sesuatu dengan itu anda harus segmen pertama. 816 00:43:00,760 --> 00:43:05,130 >> Berpikir untuk melakukan contoh lirik tanpa spasi. 817 00:43:05,130 --> 00:43:07,950 Jadi satu-satunya lirik yang Anda miliki akan kalimat, kan? 818 00:43:07,950 --> 00:43:09,470 Dipisahkan dengan tanda titik. 819 00:43:09,470 --> 00:43:13,930 Tapi kemudian karena baru saja kalimat akan tidak benar-benar membantu untuk memberikan informasi 820 00:43:13,930 --> 00:43:17,760 dari yang mereka lirik adalah dengan. 821 00:43:17,760 --> 00:43:18,120 Benar? 822 00:43:18,120 --> 00:43:20,010 Jadi Anda harus menempatkan ruang pertama. 823 00:43:20,010 --> 00:43:21,990 Jadi bagaimana Anda bisa melakukan itu? 824 00:43:21,990 --> 00:43:24,920 >> Jadi maka muncullah ide bahasa Model yang merupakan sesuatu yang benar-benar 825 00:43:24,920 --> 00:43:26,870 penting bagi komputasi linguistik. 826 00:43:26,870 --> 00:43:32,790 Jadi model bahasa pada dasarnya adalah tabel probabilitas yang menunjukkan 827 00:43:32,790 --> 00:43:36,260 pertama-tama apa adalah probabilitas memiliki kata dalam bahasa? 828 00:43:36,260 --> 00:43:39,590 Jadi menunjukkan seberapa sering sebuah kata. 829 00:43:39,590 --> 00:43:43,130 Dan kemudian juga menunjukkan relasi antara kata-kata dalam sebuah kalimat. 830 00:43:43,130 --> 00:43:51,500 >> Jadi gagasan utama adalah, jika orang asing datang Anda dan mengatakan kalimat untuk 831 00:43:51,500 --> 00:43:55,600 Anda, apa probabilitas bahwa, untuk Misalnya, "ini adalah adikku [? GTF"?] 832 00:43:55,600 --> 00:43:57,480 adalah kalimat yang orang katakan? 833 00:43:57,480 --> 00:44:00,380 Jadi jelas beberapa kalimat yang lebih umum daripada yang lain. 834 00:44:00,380 --> 00:44:04,450 Misalnya, "Selamat pagi," atau "good malam, "atau" hey there, "jauh lebih 835 00:44:04,450 --> 00:44:08,260 umum daripada kebanyakan kalimat bahwa kita memiliki bahasa Inggris. 836 00:44:08,260 --> 00:44:11,060 Jadi mengapa kalimat-kalimat lebih sering? 837 00:44:11,060 --> 00:44:14,060 >> Pertama-tama, itu karena Anda memiliki kata-kata yang lebih sering. 838 00:44:14,060 --> 00:44:20,180 Jadi, misalnya, jika Anda mengatakan, anjing besar, dan anjing ini sangat besar, Anda 839 00:44:20,180 --> 00:44:23,880 biasanya mungkin mendengar anjing besar lebih sering karena "besar" lebih 840 00:44:23,880 --> 00:44:27,260 sering dalam bahasa Inggris dari "raksasa." Jadi, salah satu 841 00:44:27,260 --> 00:44:30,100 hal adalah frekuensi kata. 842 00:44:30,100 --> 00:44:34,490 >> Hal kedua yang benar-benar penting adalah hanya 843 00:44:34,490 --> 00:44:35,490 urutan kata-kata. 844 00:44:35,490 --> 00:44:39,500 Jadi, itu umum untuk mengatakan "kucing dalam kotak. "tetapi Anda tidak biasanya 845 00:44:39,500 --> 00:44:44,250 lihat di "box di dalam adalah kucing." jadi Anda melihat bahwa ada beberapa penting 846 00:44:44,250 --> 00:44:46,030 dalam urutan kata-kata. 847 00:44:46,030 --> 00:44:50,160 Anda tidak bisa hanya mengatakan bahwa kedua kalimat memiliki probabilitas yang sama 848 00:44:50,160 --> 00:44:53,010 hanya karena mereka memiliki kata-kata yang sama. 849 00:44:53,010 --> 00:44:55,550 Anda benar-benar harus peduli tentang urutan juga. 850 00:44:55,550 --> 00:44:57,650 Masuk akal? 851 00:44:57,650 --> 00:44:59,490 >> Jadi apa yang kita lakukan? 852 00:44:59,490 --> 00:45:01,550 Jadi apa yang saya mungkin akan mencoba untuk mendapatkan Anda? 853 00:45:01,550 --> 00:45:04,400 Saya mencoba untuk mendapatkan apa yang kita memanggil model n-gram. 854 00:45:04,400 --> 00:45:09,095 Jadi pada dasarnya model n-gram mengasumsikan bahwa untuk setiap kata yang 855 00:45:09,095 --> 00:45:10,960 Anda memiliki dalam sebuah kalimat. 856 00:45:10,960 --> 00:45:15,020 Ini kemungkinan memiliki bahwa kata ada tidak hanya bergantung pada 857 00:45:15,020 --> 00:45:18,395 frekuensi dari kata dalam bahasa, tetapi juga pada kata-kata yang 858 00:45:18,395 --> 00:45:19,860 yang mengelilinginya. 859 00:45:19,860 --> 00:45:25,810 >> Jadi misalnya, biasanya ketika Anda melihat sesuatu seperti pada atau Anda 860 00:45:25,810 --> 00:45:28,040 mungkin akan melihat noun setelah, kan? 861 00:45:28,040 --> 00:45:31,750 Karena ketika Anda memiliki sebuah preposisi biasanya dibutuhkan kata benda setelah. 862 00:45:31,750 --> 00:45:35,540 Atau jika Anda memiliki kata kerja yang transitif Anda biasanya akan 863 00:45:35,540 --> 00:45:36,630 memiliki frase kata benda. 864 00:45:36,630 --> 00:45:38,780 Jadi itu akan memiliki kata benda suatu tempat di sekitar itu. 865 00:45:38,780 --> 00:45:44,950 >> Jadi, pada dasarnya, apa yang dilakukannya adalah bahwa hal itu mempertimbangkan kemungkinan memiliki 866 00:45:44,950 --> 00:45:47,960 kata-kata di samping satu sama lain, ketika Anda menghitung 867 00:45:47,960 --> 00:45:49,050 kemungkinan kalimat. 868 00:45:49,050 --> 00:45:50,960 Dan itulah yang bahasa Model dasarnya. 869 00:45:50,960 --> 00:45:54,620 Hanya mengatakan apa probabilitas memiliki spesifik 870 00:45:54,620 --> 00:45:57,120 kalimat dalam bahasa? 871 00:45:57,120 --> 00:45:59,110 Jadi kenapa begitu berguna, pada dasarnya? 872 00:45:59,110 --> 00:46:02,390 Dan pertama-tama apa yang model n-gram, kemudian? 873 00:46:02,390 --> 00:46:08,850 >> Jadi model n-gram berarti bahwa setiap kata tergantung pada 874 00:46:08,850 --> 00:46:12,700 N berikutnya dikurangi 1 kata. 875 00:46:12,700 --> 00:46:18,150 Jadi, pada dasarnya, itu berarti bahwa jika saya melihat, misalnya, di TF CS50 ketika 876 00:46:18,150 --> 00:46:21,500 Aku menghitung probabilitas kalimat, Anda akan seperti " 877 00:46:21,500 --> 00:46:25,280 Kemungkinan memiliki kata "yang" kali kemungkinan memiliki " 878 00:46:25,280 --> 00:46:31,720 CS50 "kali kemungkinan memiliki "The CS50 TF." Jadi, pada dasarnya, saya menghitung 879 00:46:31,720 --> 00:46:35,720 semua cara yang mungkin peregangan itu. 880 00:46:35,720 --> 00:46:41,870 >> Dan kemudian biasanya ketika Anda melakukan hal ini, seperti dalam sebuah proyek, Anda meletakkan N menjadi 881 00:46:41,870 --> 00:46:42,600 nilai yang rendah. 882 00:46:42,600 --> 00:46:45,930 Jadi, biasanya memiliki bigrams atau trigram. 883 00:46:45,930 --> 00:46:51,090 Sehingga Anda hanya menghitung dua kata, a kelompok dari dua kata, atau tiga kata, 884 00:46:51,090 --> 00:46:52,620 hanya untuk masalah kinerja. 885 00:46:52,620 --> 00:46:56,395 Dan juga karena mungkin jika Anda memiliki sesuatu seperti "The CS50 TF." Bila Anda 886 00:46:56,395 --> 00:47:00,510 memiliki "TF," itu sangat penting bahwa "CS50" adalah di samping itu, kan? 887 00:47:00,510 --> 00:47:04,050 Kedua hal biasanya samping satu sama lain. 888 00:47:04,050 --> 00:47:06,410 >> Jika Anda berpikir tentang "TF," itu mungkin akan memiliki apa 889 00:47:06,410 --> 00:47:07,890 kelas itu TF'ing untuk. 890 00:47:07,890 --> 00:47:11,330 Juga "yang" benar-benar penting untuk CS50 TF. 891 00:47:11,330 --> 00:47:14,570 Tapi jika Anda memiliki sesuatu seperti "The CS50 TF pergi ke kelas dan memberi mereka 892 00:47:14,570 --> 00:47:20,060 siswa beberapa permen "" Permen ". dan" " tidak memiliki hubungan yang benar-benar, kan? 893 00:47:20,060 --> 00:47:23,670 Mereka begitu jauh dari satu sama lain yang itu tidak benar-benar peduli apa 894 00:47:23,670 --> 00:47:25,050 kata-kata yang Anda miliki. 895 00:47:25,050 --> 00:47:31,210 >> Jadi dengan melakukan bigram atau trigram, itu hanya berarti bahwa Anda membatasi 896 00:47:31,210 --> 00:47:33,430 diri Anda untuk beberapa kata yang ada di sekitar. 897 00:47:33,430 --> 00:47:35,810 Masuk akal? 898 00:47:35,810 --> 00:47:40,630 Jadi, ketika Anda ingin melakukan segmentasi, Pada dasarnya, apa yang ingin Anda lakukan adalah melihat 899 00:47:40,630 --> 00:47:44,850 apa semua cara yang mungkin yang Anda dapat segmen kalimat. 900 00:47:44,850 --> 00:47:49,090 >> Seperti yang Anda lihat apa yang probabilitas masing-masing kalimat 901 00:47:49,090 --> 00:47:50,880 yang ada dalam bahasa? 902 00:47:50,880 --> 00:47:53,410 Jadi apa yang Anda lakukan adalah seperti, baik, biarkan saya mencoba untuk menempatkan spasi di sini. 903 00:47:53,410 --> 00:47:55,570 Jadi, Anda menempatkan spasi di sana dan Anda melihat apa yang 904 00:47:55,570 --> 00:47:57,590 probabilitas kalimat itu? 905 00:47:57,590 --> 00:48:00,240 Kemudian Anda seperti, OK, mungkin itu tidak baik. 906 00:48:00,240 --> 00:48:03,420 Jadi saya menempatkan spasi di sana dan spasi ada, dan Anda menghitung 907 00:48:03,420 --> 00:48:06,240 probabilitas sekarang, dan Anda melihat bahwa itu adalah probabilitas yang lebih tinggi. 908 00:48:06,240 --> 00:48:12,160 >> Jadi ini adalah suatu algoritma yang disebut TANGO Algoritma segmentasi, yaitu 909 00:48:12,160 --> 00:48:14,990 sebenarnya sesuatu yang akan benar-benar keren untuk sebuah proyek, yang 910 00:48:14,990 --> 00:48:20,860 pada dasarnya mengambil teks yang unsegmented bisa Jepang atau Cina atau mungkin 911 00:48:20,860 --> 00:48:26,080 Inggris tanpa spasi dan mencoba untuk menempatkan spasi di antara kata-kata dan tidak 912 00:48:26,080 --> 00:48:29,120 bahwa dengan menggunakan model bahasa dan mencoba untuk melihat apa yang tertinggi 913 00:48:29,120 --> 00:48:31,270 probabilitas bisa Anda dapatkan. 914 00:48:31,270 --> 00:48:32,230 OK. 915 00:48:32,230 --> 00:48:33,800 Jadi ini adalah segmentasi. 916 00:48:33,800 --> 00:48:35,450 >> Sekarang sintaks. 917 00:48:35,450 --> 00:48:40,940 Jadi, sintaks yang digunakan untuk begitu banyak hal sekarang. 918 00:48:40,940 --> 00:48:44,880 Jadi untuk Graph Search, untuk Siri untuk cukup banyak jenis alam 919 00:48:44,880 --> 00:48:46,490 pengolahan bahasa yang Anda miliki. 920 00:48:46,490 --> 00:48:49,140 Jadi apa yang penting hal tentang sintaks? 921 00:48:49,140 --> 00:48:52,390 Jadi, kalimat pada umumnya memiliki apa yang kita sebut konstituen. 922 00:48:52,390 --> 00:48:57,080 Yang jenis seperti kelompok kata yang memiliki fungsi dalam kalimat. 923 00:48:57,080 --> 00:49:02,220 Dan mereka tidak bisa benar-benar terpisah dari satu sama lain. 924 00:49:02,220 --> 00:49:07,380 >> Jadi, jika saya berkata, misalnya, "Lauren mengasihi Milo. "Saya tahu bahwa" Lauren "adalah 925 00:49:07,380 --> 00:49:10,180 konstituen dan kemudian "cinta Milo "juga satu sama lain. 926 00:49:10,180 --> 00:49:16,860 Karena Anda tidak bisa mengatakan seperti "Lauren Milo mencintai "memiliki arti yang sama. 927 00:49:16,860 --> 00:49:18,020 Ini tidak akan memiliki arti yang sama. 928 00:49:18,020 --> 00:49:22,500 Atau aku tidak bisa mengatakan seperti "Milo Lauren mencintai. "Tidak semuanya sama 929 00:49:22,500 --> 00:49:25,890 berarti melakukan hal itu. 930 00:49:25,890 --> 00:49:31,940 >> Jadi dua hal yang lebih penting tentang sintaks adalah jenis leksikal yang 931 00:49:31,940 --> 00:49:35,390 pada dasarnya fungsi yang memiliki kata-kata sendiri. 932 00:49:35,390 --> 00:49:39,180 Jadi, Anda harus tahu bahwa "Lauren" dan "Milo" adalah kata benda. 933 00:49:39,180 --> 00:49:41,040 "Cinta" adalah kata kerja. 934 00:49:41,040 --> 00:49:45,660 Dan hal penting kedua adalah bahwa mereka jenis frase. 935 00:49:45,660 --> 00:49:48,990 Jadi, Anda tahu bahwa "mencintai Milo" sebenarnya ungkapan verbal. 936 00:49:48,990 --> 00:49:52,390 Jadi ketika saya mengatakan "Lauren," Saya tahu bahwa Lauren melakukan sesuatu. 937 00:49:52,390 --> 00:49:53,620 Apa yang dia lakukan? 938 00:49:53,620 --> 00:49:54,570 Dia mencintai Milo. 939 00:49:54,570 --> 00:49:56,440 Jadi itu adalah semuanya. 940 00:49:56,440 --> 00:50:01,640 Tapi komponennya kata benda dan kata kerja. 941 00:50:01,640 --> 00:50:04,210 Tetapi bersama-sama, mereka membuat frase kata kerja. 942 00:50:04,210 --> 00:50:08,680 >> Jadi, apa yang bisa kita benar-benar melakukan dengan komputasi linguistik? 943 00:50:08,680 --> 00:50:13,810 Jadi, jika saya memiliki sesuatu misalnya "Teman-teman dari Allison." Saya lihat jika saya hanya 944 00:50:13,810 --> 00:50:17,440 apakah pohon sintaksis saya akan tahu bahwa "Teman-teman" adalah ungkapan kata benda itu adalah 945 00:50:17,440 --> 00:50:21,480 kata benda dan kemudian "dari Allison" adalah frase preposisional di mana "dari" adalah 946 00:50:21,480 --> 00:50:24,810 proposisi dan "Allison" adalah kata benda. 947 00:50:24,810 --> 00:50:30,910 Apa yang saya bisa lakukan adalah mengajar komputer saya bahwa ketika saya memiliki satu frase kata benda dan 948 00:50:30,910 --> 00:50:33,080 maka frase preposisional. 949 00:50:33,080 --> 00:50:39,020 Jadi dalam hal ini, "teman-teman" dan kemudian "dari Milo "Saya tahu bahwa ini berarti bahwa 950 00:50:39,020 --> 00:50:43,110 NP2, yang kedua, memiliki NP1. 951 00:50:43,110 --> 00:50:47,680 >> Jadi saya bisa membuat beberapa jenis hubungan, beberapa jenis fungsi untuk itu. 952 00:50:47,680 --> 00:50:52,370 Jadi, setiap kali saya melihat struktur ini, yang sama persis dengan "teman-teman 953 00:50:52,370 --> 00:50:56,030 Allison, "Saya tahu bahwa Allison memiliki teman-teman. 954 00:50:56,030 --> 00:50:58,830 Jadi teman-teman adalah sesuatu Allison yang memiliki. 955 00:50:58,830 --> 00:50:59,610 Masuk akal? 956 00:50:59,610 --> 00:51:01,770 Jadi ini pada dasarnya adalah apa yang Grafik Pencarian tidak. 957 00:51:01,770 --> 00:51:04,360 Itu hanya menciptakan aturan untuk banyak hal. 958 00:51:04,360 --> 00:51:08,190 Jadi "teman dari Allison," "teman-teman saya yang tinggal di Cambridge, "" teman-teman saya 959 00:51:08,190 --> 00:51:12,970 yang pergi ke Harvard. "Ini menciptakan aturan untuk semua hal. 960 00:51:12,970 --> 00:51:14,930 >> Sekarang mesin terjemahan. 961 00:51:14,930 --> 00:51:18,850 Jadi, terjemahan mesin juga sesuatu statistik. 962 00:51:18,850 --> 00:51:21,340 Dan sebenarnya jika Anda terlibat dalam komputasi linguistik, banyak 963 00:51:21,340 --> 00:51:23,580 barang-barang Anda akan menjadi statistik. 964 00:51:23,580 --> 00:51:26,670 Jadi seperti yang saya lakukan contoh dengan banyak probabilitas bahwa saya 965 00:51:26,670 --> 00:51:30,540 menghitung, dan kemudian Anda mendapatkan ini jumlah yang sangat kecil itulah akhir 966 00:51:30,540 --> 00:51:33,180 probabilitas, dan itulah yang memberikan jawabannya. 967 00:51:33,180 --> 00:51:37,540 Terjemahan mesin juga menggunakan model statistik. 968 00:51:37,540 --> 00:51:44,790 Dan jika Anda ingin memikirkan mesin terjemahan dalam sederhana mungkin 969 00:51:44,790 --> 00:51:48,970 cara, apa yang dapat Anda pikirkan hanya menerjemahkan kata demi kata, kan? 970 00:51:48,970 --> 00:51:52,150 >> Ketika Anda belajar bahasa untuk pertama kalinya, yang biasanya apa 971 00:51:52,150 --> 00:51:52,910 Anda lakukan, kan? 972 00:51:52,910 --> 00:51:57,050 Jika Anda ingin Anda menerjemahkan kalimat dalam bahasa Anda ke bahasa 973 00:51:57,050 --> 00:52:00,060 Anda belajar, biasanya pertama, Anda menerjemahkan setiap kata 974 00:52:00,060 --> 00:52:03,180 individual, dan kemudian Anda mencoba untuk menempatkan kata-kata ke tempatnya. 975 00:52:03,180 --> 00:52:07,100 >> Jadi jika saya ingin menerjemahkan ini, [BERBICARA PORTUGUESE] 976 00:52:07,100 --> 00:52:10,430 yang berarti "kucing putih melarikan diri." Jika saya ingin menerjemahkannya dari 977 00:52:10,430 --> 00:52:13,650 Portugis ke Inggris, apa yang saya bisa lakukan adalah, pertama, saya hanya 978 00:52:13,650 --> 00:52:14,800 menerjemahkan kata demi kata. 979 00:52:14,800 --> 00:52:20,570 Jadi "o" adalah "," "gato," "kucing," "Branco," "putih," dan kemudian "fugio" adalah 980 00:52:20,570 --> 00:52:21,650 "Melarikan diri." 981 00:52:21,650 --> 00:52:26,130 >> Jadi kemudian aku memiliki semua kata-kata di sini, tapi mereka tidak dalam urutan. 982 00:52:26,130 --> 00:52:29,590 Ini seperti "putih kucing lari" yang tidak gramatikal. 983 00:52:29,590 --> 00:52:34,490 Jadi, maka saya dapat memiliki langkah kedua, yang yang akan menemukan ideal 984 00:52:34,490 --> 00:52:36,610 posisi untuk setiap kata. 985 00:52:36,610 --> 00:52:40,240 Jadi saya tahu bahwa saya benar-benar ingin memiliki "Kucing putih" bukan "kucing putih." Jadi 986 00:52:40,240 --> 00:52:46,050 apa yang bisa saya lakukan adalah, metode yang paling naif akan membuat semua 987 00:52:46,050 --> 00:52:49,720 kemungkinan permutasi dari kata-kata, posisi. 988 00:52:49,720 --> 00:52:53,300 Dan kemudian melihat mana yang memiliki probabilitas tertinggi menurut 989 00:52:53,300 --> 00:52:54,970 model bahasa saya. 990 00:52:54,970 --> 00:52:58,390 Dan kemudian ketika aku menemukan satu yang memiliki probabilitas tertinggi itu, yaitu 991 00:52:58,390 --> 00:53:01,910 mungkin "kucing putih melarikan diri," itu terjemahan saya. 992 00:53:01,910 --> 00:53:06,710 >> Dan ini adalah cara sederhana untuk menjelaskan bagaimana banyak terjemahan mesin 993 00:53:06,710 --> 00:53:07,910 algoritma bekerja. 994 00:53:07,910 --> 00:53:08,920 Apakah itu masuk akal? 995 00:53:08,920 --> 00:53:12,735 Ini juga sesuatu yang sangat menarik bahwa kalian mungkin dapat menjelajahi untuk 996 00:53:12,735 --> 00:53:13,901 tugas akhir, ya? 997 00:53:13,901 --> 00:53:15,549 >> MAHASISWA: Nah, Anda mengatakan hal itu cara naif, jadi apa 998 00:53:15,549 --> 00:53:17,200 cara non-naif? 999 00:53:17,200 --> 00:53:18,400 >> LUCAS FREITAS: Cara non-naif? 1000 00:53:18,400 --> 00:53:19,050 OK. 1001 00:53:19,050 --> 00:53:22,860 Jadi hal pertama yang buruk tentang metode ini adalah bahwa saya hanya diterjemahkan 1002 00:53:22,860 --> 00:53:24,330 kata-kata, kata demi kata. 1003 00:53:24,330 --> 00:53:30,570 Tapi kadang-kadang Anda memiliki kata-kata yang dapat memiliki beberapa terjemahan. 1004 00:53:30,570 --> 00:53:32,210 Aku akan mencoba untuk berpikir sesuatu. 1005 00:53:32,210 --> 00:53:37,270 Misalnya, "manga" dalam kaleng Portugis berupa "mangle" atau "lengan." Jadi 1006 00:53:37,270 --> 00:53:40,450 ketika Anda mencoba untuk menerjemahkan kata dengan kata-kata, mungkin akan memberikan Anda 1007 00:53:40,450 --> 00:53:42,050 sesuatu yang tidak masuk akal. 1008 00:53:42,050 --> 00:53:45,770 >> Jadi Anda benar-benar ingin Anda melihat semua kemungkinan terjemahan 1009 00:53:45,770 --> 00:53:49,840 kata-kata dan melihat, pertama-tama, apa pesanan. 1010 00:53:49,840 --> 00:53:52,000 Kami sedang membicarakan permutating hal-hal? 1011 00:53:52,000 --> 00:53:54,150 Untuk melihat semua perintah yang mungkin dan memilih salah satu dengan tertinggi 1012 00:53:54,150 --> 00:53:54,990 probabilitas? 1013 00:53:54,990 --> 00:53:57,860 Anda juga dapat memilih semua kemungkinan terjemahan untuk masing-masing 1014 00:53:57,860 --> 00:54:00,510 kata dan kemudian melihat - 1015 00:54:00,510 --> 00:54:01,950 dikombinasikan dengan permutasi - 1016 00:54:01,950 --> 00:54:03,710 mana yang memiliki probabilitas tertinggi. 1017 00:54:03,710 --> 00:54:08,590 >> Plus, Anda juga dapat melihat tidak hanya kata-kata tetapi frase. 1018 00:54:08,590 --> 00:54:11,700 sehingga Anda dapat menganalisis hubungan antara kata-kata dan kemudian mendapatkan 1019 00:54:11,700 --> 00:54:13,210 terjemahan yang lebih baik. 1020 00:54:13,210 --> 00:54:16,690 Juga sesuatu yang lain, sehingga semester ini Aku benar-benar melakukan penelitian di 1021 00:54:16,690 --> 00:54:19,430 Cina-Inggris terjemahan mesin, sehingga menerjemahkan dari 1022 00:54:19,430 --> 00:54:20,940 Cina ke dalam bahasa Inggris. 1023 00:54:20,940 --> 00:54:26,760 >> Dan sesuatu yang kita lakukan adalah, selain menggunakan model statistik, yang hanya 1024 00:54:26,760 --> 00:54:30,570 melihat probabilitas melihat beberapa posisi dalam sebuah kalimat, aku 1025 00:54:30,570 --> 00:54:35,360 sebenarnya juga menambahkan beberapa sintaks untuk saya Model, mengatakan, oh, jika saya melihat semacam ini 1026 00:54:35,360 --> 00:54:39,420 konstruksi, ini adalah apa yang saya inginkan untuk mengubahnya ketika saya menerjemahkan. 1027 00:54:39,420 --> 00:54:43,880 Jadi, Anda juga dapat menambahkan beberapa jenis elemen sintaks untuk membuat 1028 00:54:43,880 --> 00:54:47,970 terjemahan yang lebih efisien dan lebih tepat. 1029 00:54:47,970 --> 00:54:48,550 OK. 1030 00:54:48,550 --> 00:54:51,010 >> Jadi bagaimana Anda bisa memulai, jika Anda ingin untuk melakukan sesuatu dalam komputasi 1031 00:54:51,010 --> 00:54:51,980 linguistik? 1032 00:54:51,980 --> 00:54:54,560 >> Pertama, Anda memilih sebuah proyek yang melibatkan bahasa. 1033 00:54:54,560 --> 00:54:56,310 Jadi, ada begitu banyak di luar sana. 1034 00:54:56,310 --> 00:54:58,420 Ada begitu banyak hal yang dapat Anda lakukan. 1035 00:54:58,420 --> 00:55:00,510 Dan kemudian bisa memikirkan model yang dapat Anda gunakan. 1036 00:55:00,510 --> 00:55:04,710 Biasanya itu berarti memikirkan asumsi, sebagai seperti, oh, ketika saya masih 1037 00:55:04,710 --> 00:55:05,770 seperti berpikir lirik. 1038 00:55:05,770 --> 00:55:09,510 Aku seperti, baik, jika saya ingin mencari keluar yang menulis ini, saya mungkin ingin 1039 00:55:09,510 --> 00:55:15,400 untuk melihat kata-kata orang yang digunakan dan melihat siapa yang menggunakan kata yang sangat sering. 1040 00:55:15,400 --> 00:55:18,470 Jadi cobalah untuk membuat asumsi dan mencoba memikirkan model. 1041 00:55:18,470 --> 00:55:21,395 Dan kemudian Anda juga dapat mencari online untuk jenis masalah yang Anda miliki, 1042 00:55:21,395 --> 00:55:24,260 dan itu akan menyarankan Anda model yang mungkin 1043 00:55:24,260 --> 00:55:26,560 dimodelkan hal yang baik. 1044 00:55:26,560 --> 00:55:29,080 >> Dan juga Anda selalu dapat email saya. 1045 00:55:29,080 --> 00:55:31,140 me@lfreitas.com. 1046 00:55:31,140 --> 00:55:34,940 Dan aku hanya bisa menjawab pertanyaan Anda. 1047 00:55:34,940 --> 00:55:38,600 Kita bahkan bisa mungkin bertemu jadi saya bisa memberikan saran tentang cara-cara 1048 00:55:38,600 --> 00:55:41,490 melaksanakan proyek Anda. 1049 00:55:41,490 --> 00:55:45,610 Dan maksud saya jika Anda terlibat dengan komputasi linguistik, itu akan 1050 00:55:45,610 --> 00:55:46,790 untuk menjadi besar. 1051 00:55:46,790 --> 00:55:48,370 Anda akan melihat ada begitu banyak potensi. 1052 00:55:48,370 --> 00:55:52,060 Dan industri ingin menyewa Anda begitu buruk karena itu. 1053 00:55:52,060 --> 00:55:54,720 Jadi saya harap kalian menikmati ini. 1054 00:55:54,720 --> 00:55:57,030 Jika kalian memiliki pertanyaan, Anda dapat bertanya kepada saya setelah ini. 1055 00:55:57,030 --> 00:55:58,280 Tapi terima kasih. 1056 00:55:58,280 --> 00:56:00,150