文章以機器人的口吻出發,簡述了身為智能語音機器人的「我」是如何理解一句話的,具體又分為哪幾個步驟,一起來看看~
自我介紹
哈嘍~我是人工智慧語音機器人,今天想給大家說說我的大腦中最關鍵的構造,這樣你們能知道我的思維方式和目前的局限性,就能持著一種更平和的心態看我啦。所以,我今天主要要回答的問題是:「機器人是如何思考的?」
問題:機器人是如何思考的?
當我把我獲取的信息轉化成文字,就是我要開始思考的時候了。我怎麼理解這些文字呢?全依賴於我大腦裡的「語音系統」——自然語言處理,NLP,它讓我能模仿你們去理解你們的語言。接下來我會通過一個例子來描述我的思考過程。
我理解「2018年5月周杰倫發表了一首新歌」的過程
1. 先把句子拆分成一個一個詞語
首先,我要先把這個句子用我的理解拆成一個個詞語(我能理解都來源於各種大數據,各種模型的支持),當然,我其實,有時候句子稍微複雜,我就容易把詞語拆分錯,這樣第一步出了問題,我就很難理解正確了。
例如,當說:嚴守一/把/手機/關了,我容易理解成: 嚴守/一把手/機/關了。因為我印象中有一個「一把手」的詞語,而不存在「嚴守一」這個人名。所以我其實很難理解「嚴守一」是一個人名,而把「嚴守一」拆開來理解。
2. 理解每個詞語
當我把詞拆開後,我開始理解每個詞語的詞性,進行實體識別。例如,我理解了「周杰倫」是一個人名,「2018年」是一個年份,「新歌」是一個名詞。
3. 再理解每個詞語之間的關係
同樣是基於人類智慧的結晶,我利用數據和各種算法等來理解每個實體的相互關係,這個時候我大概對這句話有一個模糊的理解了
4. 把句子分意圖
在理解了句子有哪些實體,實體之間的關係,我就能粗略地把這個句子的意圖分類出來。在這裡說下為什麼我要把句子分意圖呢?人類語言太博大精深了,但還好,每一句話背後都有它的動機。
我基於這個動機把各種語言都化在一個有限的空間裡,分了n個大類,這樣我才有可能理解;一般來說,你們經常看到的人工智慧語言機器人,意圖都有如下幾類:閒聊-音樂-機器功能-天氣-鬧鐘-智能家居。
我是怎麼分意圖的呢,這個就是利用基於算法的模型,這個模型是程式設計師哥哥們通過各種數據來訓練的,當然有時還需要人定的一些特殊規則等來分類。這句話是不是在規定好的我們常要點歌的指令集裡(指令集:也就是我們總結的人表達某個意圖可能的說話方式,例如,聽歌可以有多種表達方式,如我要聽歌,能不能播放一首歌,來一首歌等)
例如,當我分析「我要聽周杰倫的歌」,我就能毫不猶豫地把這句話理解成:「哦,原來是要執行和音樂操作相關的」,然後把這句話的意圖歸類到:」音樂」意圖。
但,當我分析」2018年5月周杰倫發表了一首新歌」,我通過實體識別,發現有一個「歌」,還有一個歌手,周杰倫,我就可能會把這句話的意圖理解為播放歌曲,搞不好我就會直接給播放周杰倫的歌了。現在想想我真是傻;
多虧了程式設計師哥哥們的各種智慧,他們為我額外裝了一個糾錯模型,如果我把這句話的粗略意圖判斷錯了也沒關係,這句進入到糾錯模型後,會被過濾出來,再丟到一個萬能意圖(閒聊),這個時候,會被判斷為「音樂相關的閒聊」意圖。
所以,嗯,我最終把」2018年5月周杰倫發表了一首新歌」這句話理解成了原來是想和我聊個2毛錢的天啊。所以我就會啟動我的聊天模式(聊天模塊),開始和你瞎扯。
總結
總的來說,我要理解一句話,我要經過把句子拆了,然後再自己把句子組合,最後再理解這句話背後的意圖,當我理解了意圖的時候,我覺得我幾乎已經理解了這句話。但然而,我很多時候分類意圖還是會出錯,所以,當我意圖都錯誤的時候,我很有可能回應你的行為,你會覺得這行為很傻。
好啦,今天就聊到這吧。拜拜啦~
作者:huotui,從業語義產品經理,也就是AI產品經理,主要做智能音箱。後續會分享一些關於AI產品經理和AI產品心得給大家
本文由 @huotui 原創發布於人人都是產品經理。未經許可,禁止轉載。
題圖來自Unsplash,基於CC0協議