語言與資料科學
背景
- 情感分析(Sentiment Analysis)是近幾年計算語言學相當熱門的主題,在許多領域等可以看見情感分析的應用。
- 情感(Sentiment)是我們語言互動溝通中,除了事件傳達外,另一項很重要的任務。
- 透過大量的語言資料,我們可以透過計算文本分析(Computational Text Analytic)的方式,分析在某個特定場域(genre)裡,對於特定「主題」、「人物」、「產品」、「物件」等之普遍情感偏好,結果可以二分(Binary)的方式呈現(如:正向/負向)或以數值(Continuous)呈現(如:正向分數0.8)。
- 情感亦可針對不同情緒進一步細分為「開心」、「難過」、「憤怒」等。
今日實作主題
- 我們將以「華語歌曲」為例,展示如何執行一個簡單的「以詞彙為本(lexicon-based)」之情感分析研究。
- 透過分析歌詞中的情感分佈,我們想探討,針對「男人」和「女人」這兩個概念,主流的情態為何?
- 同時,透過這個簡單的例子,我們也帶著大家認識,典型的資料科學分析研究,所需的步驟、流程以及需要注意的細節。
- 這次實作我們將利用目前深度學習中常使用的「詞向量(Word Embeddings)」方法,作為文本情感分析的基礎。
詞彙語意表徵
- 一個詞彙的語意,該怎如何定義和表徵(Semantic Representation)1?
- 指涉(Meaning by reference)
- 比較(Meaning by contrast)
- 使用(Meaning by uses)
語言單位間的共現性(Co-occurrence)
不同語言單位之間的共現,一直是語言學家關心的議題。
- 詞彙間的搭配關係(Collocation)
- 詞彙與句構間的搭配關係(Colligation, Collostruction)
隨著語料庫方法發展成熟,字串間的相連性(sequentiality),成為詞彙語意(lexical semantics)研究的重要基礎。
透過大量語料中的共現關係(Co-occurrence patterns),分析詞彙語意,定義其語意表徵(Semantic Representation)。
透過語境所取得的詞彙分散式語意表徵(Distributed Semantic Representation),成為近年來在深度學習語意表徵的主要推手。(即:詞向量[Word Embeddings])。
分散式語意表徵 (Distributional Hypothesis)
- 語言單位之間的共現關係(Co-occurrence patterns)成為分散式語意表徵(Distributed Semantic Representation)學習的重要基礎。
You shall know a word by the comany it keeps. (Firth, 1957, p.11)
[D]ifference of meaning correlates with difference of distribution. (Harris, 1970, p.785)
詞向量(Word Embeddings)
深度學習之「詞向量」
「詞向量」的背後基礎假設,就是「分散式語意表徵」:即「兩個詞彙所使用的語境越相似,則兩者語意距離越相近。」
透過深度學習方法,以非監督式方式,學習詞彙的分散式語意表徵,以「向量」方式呈現,通常稱為「詞向量(Word Embeddings)」
詞向量模型之學習,是利用大量的語料庫作為基礎,訓練一個深度學習的Classifier達成以下目標:
- 在特定範圍語境中,可以透過情境詞彙(Context Words)正確預測 某個Target詞彙。(
Continuous Bag-of-Words
-> Multi-class Classifier) - 在特定範圍語境中,可以正確預測某詞彙\(X\)是否為Target詞彙之情境詞彙(Context Words)。(
Skip-Gram
-> Binary Classifier)
- 在特定範圍語境中,可以透過情境詞彙(Context Words)正確預測 某個Target詞彙。(
而詞向量可以說是上述Classifier建置後的By-Product。