升大四那年暑假在思考著人生的下一步時,偶然接觸到了「自然語言處理 NLP」這個 fancy 的名詞。
當時一方面是被「外文系也能跟 AI 扯上關係」的噱頭燒到,一方面也是抱持著對語言學的好感,經過一番了解後,便決定推甄語言所,並且計劃朝著計算語言學的領域邁進!
而進來研究所後,在這樣衝突跟跨域的學習歷程中,常常覺得:「NLP 跟我當初想得不一樣啊~~~」
那麼,究竟 NLP 到底是什麼呢?
這系列文章會從筆者身為跨域程式小白的角度,希望能整理自己過去所學,也試著用輕鬆科普的方式,讓大家一起進入 NLP x AI 的奇幻世界 🪄
當我們說要做「自然語言處理」,那首先得先了解什麼是「自然語言」。
自然語言簡單來說就是「人類所說的語言」。相反地,程式語言就是「電腦所理解的語言」。
人類說的語言我們很自然的可以想到有一定的系統跟規則。
例如:
S(我) + V(吃) + O(蘋果)
S(私)は + O(蘋果を) + V(食べる)
而電腦所理解的程式語言有怎樣清晰縝密的規則跟結構,應該更是不用我多說。
但妙的是,看似有系統的自然語言,卻不像電腦語言那樣的說一不二!
簡單舉個例子,「難過」這個詞因為具有歧義,所以會帶來以下的小笑話。
圖片來源:https://aiacademy.tw/what-is-nlp-natural-language-processing/
由上面的例子可以知道,連「使用自然語言的人類」都會錯誤地處理這個造句題目中「難過」的真正意思了,電腦要如何處理自然語言,肯定是一門大學問吧~~
自然語言處理(NLP)的核心目標,就是要讓電腦能夠「理解、處理,甚至生成人類的語言」。這個領域可說是 AI 與語言學的交會處呢~
而人類產出語言不外乎就是用「口語」或是用「文字」,所以 NLP 又可以分為兩大面向:
讓電腦能夠處理口語語音,包括:
讓電腦能處理文字資訊,包括:
而其他更進階的任務,我們會在後面幾天的內容談到~
總之,NLP 不只是一個技術,而是一個讓電腦更貼近人類的關鍵橋樑!!
感謝看到這邊的你,以下是爆雷以及立 flag ⛳️ 的時間 XDD
在接下來三十天的鐵人賽中,我將會分成「五大主題」進行分享:
歡迎大家一起陪伴 (督促) 我度過這三十天,明天見~~