RiL Podcast #012: Cloning RiL Podcast

絮言.狂想 #012
Israel

The Cantonese podcast for fans of linguistics, language lovers, and Cantonese learners. This episode explains the April Fool’s Day episode, which was generated by machine learning software using an n-gram language model. It also explores other questions in computational linguistics, such as machine translation, neural networks and environmental impact.

Show notes and links available on the Cantonese page. Transcript below (first 10 minutes for free, the rest on Patreon).

This podcast is also available on YouTube. Don’t forget to subscribe!

以:其實我哋個腦都係電腦嚟㗎。

苗:係啊,肉腦啊,我哋係。

以:我哋係機械人。

靳:肉腦啦。

以:都有電喺裏面。

苗:有。

靳:有有有。

苗:你啱。

以:YES! 我唔係醫生都可以講到呢個。

[jingle]

以:歡迎返到嚟《絮言.狂想》第十二集啊。我係以色列。

苗:我係三秒。

靳:我係靳尼啊。

以:噉我諗呢,大家一開始聽呢一集嘅時候呢,都應該最緊張嘅就係,到底上一集搞乜鬼呢?噉……噉唔知大家有冇睇返我哋後來Facebook嗰個更新啦,噉就話,哦,其實就係愚人節嘅一個笑話嚟嘅。噉當然我哋呢一個嘅笑話,都非常非常之同語言有關係啦。我哋都精心佈置咗好耐嘅。但係我哋而家講下先啦,點解會有呢一個玩愚人節嘅諗頭嘅呢?

苗:噉呢,呢個愚人節呢,就好多地方都有個習俗啦,就係尤其是係一啲科技公司啦,咁佢哋就好多時會喺愚人節度推出一啲搞笑嘅嘢啦,或者係……唔一定係搞笑,或者唔一定係呃人嘅,有時係一啲比較……比較好玩嘅一啲嘢啦。譬如Google呢,即係往年啦,咁今年同埋上年都冇做到啦。

以:唉。

苗:咁但係往年呢,Google啊、其他公司啊、Amazon啊嗰啲……嗰啲公司呢,都會去做一啲得意嘢啦。譬如有一次係咩……咩Google Gnome呀,係咪啊?有個類似Amazon Echo咁嘅物體,咁就係一個地精形狀嘅,噉就係……就係你可以擺喺個……擺喺間屋裏面啊,定係擺喺個花園度,咁樣就可以幫你解答問題噉樣,嗰啲奇怪嘢囉。

以:我記得好似2014年呢,佢喺Google Maps上面整咗個搵寵物小精靈嘅遊戲囉。

靳:啊,係啊。

以:之後呢個就後來變成咗Pokémon Go囉,係啊。

苗:哦。

以:嗰陣時我冇玩。係啦,好衰啦,因為疫情關係而取消咗愚人節,連苦中作樂都冇。

苗:係啊。

以:咁於是呢,都係因為我哋幾個係比較鐘意睇科技嘢嘅人啦,所以就決定就學佢玩下呢啲嘢。咁我哋呢一個笑話,係介乎整蠱同埋笑話之間,我諗。咁希望唔會整蠱得大家太緊要啦。

苗:點樣整蠱啊?即係聽完之後:「咦?點解咁垃圾嘅,呢集?」噉樣,「完全唔知噏乜啊!」

靳:「點解聽唔明嘅,呢集?」咁樣,「我科勞唔到啊,你講啲嘢太深啊」噉樣。

以:好混淆,係啊。我見到有啲講廣東話,或者學廣東話學到咁上下嘅人呢,都走嚟聽,之後就話:「啊,好似返返到去一開始學廣東話嘅時候,即係好似又聽得明啲字,但係又聽唔明係講緊乜嘢」噉樣。

苗:係啊,咁就解釋下做緊咩啦。咁呢一個係一個完全係電腦gen出嚟嘅一集啦。噉點樣gen呢,就係用一個叫做n-gram嘅……嘅嘢啦。噉呢個嘢係……如果有人聽過複製陳雲呢,咁係一個類似嘅嘢嚟嘅。咁佢就係……

靳:複製陳雲真係好正。

苗:噉類似搜集咗陳雲喺Facebook上面嘅所有嘅post啦,噉擺落一個文件度,然之後呢,就再去用呢啲統計,咁樣就睇下每一串字,究竟出現咗幾多次呢?咁就計返……類似計返一個機率出嚟。咁再用呢一個咁樣嘅機率呢,就再去重新生成一啲字出嚟囉。咁就可以生成到一啲……一啲新嘅陳雲文章出嚟啦,咁就係……所以就叫做複製陳雲。咁我哋呢一個呢,就差唔多嘅概念啦。咁就……

靳:我哋複製嘅唔係陳雲啦。

苗:係喇。咁我哋複製嘅呢,就係我哋之前咁多集嘅逐字稿啦。噉以色列好辛苦咁打咗好多好多咁嘅字啦。呢啲……有幾多字啊?係咪……

以:十七萬字。

苗:十七萬字喇,係喇。好多好多嘅字啦。

靳:嘩,獨力嘅十七萬字。

苗:係啊,粒粒皆辛苦啊。

靳:真係。

苗:……嘅十七萬字。咁呢啲咁多字呢,我哋就三個三個字,咁樣為一個單位啦。咁就去統計每三個字,即係究竟數起上嚟有幾多個呢?然之後再……我哋再數嘞。噉我就嘗試解釋下呢一個n-gram呢個嘢係點樣運作啦。即係用一個n-gram嘅叫做language model啦,即係一個語言模型,去生成一篇嘢出嚟,係點樣嘅呢?咁我就首先解釋下咩叫做language model啦。咁佢嘅作用呢,就係根據一句嘢,你之前見到嘅字呢,就推測下一個字係乜嘢。咁而n-gram呢,就係其中一種language model喇。咁呢個係一個比較簡單嘅language model,即係可能你讀一啲比較入門嘅電腦語言學嘅課程呢,都會介紹呢樣嘢嘅。咁譬如我哋個稿裏面呢,有一句嘢係「今日天氣好好」咁樣啦。咁我哋就三個、三個字咁樣去統計,究竟「今日天」跟住「日天氣」……

以:「天氣好」

苗:係喇,係喇。咁呢幾個字,究竟出現咗幾多次啦。咁一路一路一路咁樣去統計。咁如果呢……因為好難去解釋,冇visual係好難解釋嘅,呢樣嘢。

以:我哋手語都做到啦!

靳:ok嘅!

苗:係嘞。噉你數咗咁多呢一啲三個、三個字之後呢,咁你就去再將佢變成一個機率啦。咁點樣變呢?就係睇下頭兩個字。如果頭兩個字係一樣嘅話呢,就當係同一group啦。假設即係篇文裏面有「今日我」、「今日你」、「今日去」咁樣,有三組唔同嘅字,譬如「今日我」出現咗九十次,跟住「今日你」呢,出現咗五次,「今日佢」出現咗五次。咁嘅話呢,就係你將呢幾個數字加埋,咁就係一百啦。咁你就將嗰個數目呢,就除返一百。例如「今日我」呢,咁就係九十除一百啦,咁就係0.9嘞。咁呢個數字表達緊啲咩呢?就係話,只要你頭兩個字係「今日」嘅話呢,後面一個字係「我」嗰個機率,就有0.9嘞,即係90%喇。咁而其他字呢,就係分別係5%啦。即係呢個例子只係得三個可能性,咁就冇其他可能性㗎喇喎。即係「今日」之後呢,你淨係可以講「我」、「你」同埋「佢」。咁呢一個就係n-gram model嘅一個唔好處啦,就係你好難去……你好難去模擬一啲好複雜嘅語言。一啲你嗰個source裏面冇嘅嘢囉。即係一定要出現過,你先可以有囉。咁除非你係有做咗其他smoothing啊,類似咁樣嘅嘢呢,咁你先可以即係解決到呢個問題啦,叫做。噉但係我哋就用咗一個好簡單好簡單嘅一個模型,咁就去整啲字出嚟。咁所以你見到呢,聽到嗰啲字,如果大家係比較忠實少少嘅聽眾呢,就會聽得出,係我哋之前講過嘅嘢嚟,全部都係我哋之前講過嘅嘢嚟嘅。

靳:可能可以搵到係邊一集講。

苗:係啊,係啊。

以:可以……係,可以估下、揾返出嚟。日光之下無新事。

苗:可能成句係新嘅。但係呢,如果你係每三個、三個字咁樣睇呢,係會喺我哋以前嘅稿度出現過嘅。係喇,咁呢個就係我哋做咗嘅嘢。咁所以你哋見到……你見到有啲九唔搭八,但係又好似有少少make sense咁樣,咁就因為我哋就揀咗三個字呢一個咁樣嘅window啦,就聽落去會比較有少少合理,但係又唔知……好似唔知講乜噉樣。

以:你係點樣決定咗揀三個字㗎?

苗:三個字,其實係一個……其實都係一個choice嚟嘅啫。因為好多時,如果英文嘅話呢,一啲真係會用呢啲language model嘅人呢,就通常最盡係去到5-gram嘅啫,最盡係五個字嘅啫。咁因為再多字呢,你有一個……你所需要嘅輸入嗰啲字呢,係好多好多好多嘅。即係你好少會有一啲好嘅數據囉。如果你有……你係用五個、五個字。如果你用……淨係用一個字,即係叫所謂unigram,你就用一個字。咁即係其實你係計緊成篇文有幾多個字囉,即係幾多個某一個字囉。即係譬如有一百個「我」字,有十個「佢」字咁樣,咁呢啲呢啲囉。但係如果你嗰個n越大啊,你係bigram、trigram、4-gram,一路越嚟越大嘅話呢,你嗰啲資料就越嚟越少囉。咁所以你係要喺嗰個n同埋你有嘅輸入資料嗰個大細,做一個平衡。噉3係一個好常見嘅數囉,就係。通常trigram都係就算係英文同中文都係……都係成日出現。

以:哦,噉假如你轉咗做4嘅話,會有咩唔同呢?有咩後果呢?

苗:係喇。4嘅話呢,就即係咩呢?就即係你要估下一個字係咩呢,你就要睇頭三個字。你要睇前三個字係乜嘢,你先可以決定到第四,你先有第四個字嗰個機率囉。如果你嗰個n越細呢,你就淨係睇前面更加少嘅字。如果你係bigram呢,你淨係根據前一個字去推測下一個字。即係有少少似譬如你打字呢,如果你打一啲比較舊嘅輸入法啦,佢係會逐個逐個字咁樣去類似suggest畀你:「哦,下一個字打咩好啊?」咁樣㗎嘛。手機好多時都會囉。

以:「舊嘅輸入法」。

苗:係喇。即係咁嗰啲就係類似一個叫做bigram嘅model,咁就係根據前一個字,直接推測下一個字。所以你不斷㩒㩒㩒㩒中間呢,你㩒佢推測啲字呢,你打出嚟嗰句嘢,其實都係唔係好make sense㗎,都係冇乜意思㗎。

靳:冇乜意思。

以:哦,嗱,咁我哋廣東話呢,我哋啲逐字稿呢,就係用方塊字做單位啦。咁如果換着係英文啊,嗰啲拼音語言嘅話,咁佢個做法會有咩唔同,即係會係都係用返一個字元做單位吖,定係用成個word做一個單位呢?

The rest of the transcript is available to Patreon members.