2017年3月29日 星期三

心得整理 - 文字探勘者的入門心法.


文字探勘(Text mining) 是由人類文字中找出知識的研究。其過程,先對需進行文字處理,將人類自然語言文字和機器文字(如 HTML 標籤)分離。之後,在應用 Data Mining 的技術,找出文字間的關係或者分群等,以找出文字背後所代表的群眾知識[1]。


一、研究範疇

文字探勘的研究主題可依人類產生文字的過程進行區分。文字是人類對於客觀世界現象的主觀描述。在文字探勘的第一個主題是找出自然語言的知識,內容包括:

  • 自然語言處理(Natural Language Processing): 將人類自然語言轉化為電腦更易於處理的形式,如詞性分析、句法分析、語義分析等。
  • Text Representation: 利用數字表示沒有結構化的文字,以利後續數學處理。
  • 文字關聯及探勘(Word association and  Mining): 找出具有相同用途的文字,也稱為 Paradigmatic Analysis;或者找出文字間不同的組合的方式,也稱為 Syntagmatic Analysis。
  •  Topic Mining: 在了解字與字之間的關係後,找出主觀描述者在討論的話題(Topic)。
  •  Concept Mining: 試著找出文字中的抽象想象(abstract idea)或稱概念,此概念是大家都知道的概念,雖然所有的字彙不同,但描述的都是相同的概念。如自然語言中的同義字或者片語,be completely dead = be as dead as doornail。

文字探勘的第二個主題是找出主觀描述者背後的知識,試著分析出描述者的主觀意見(Opinions)。 這個主題稱為 Opinion Mining, 從文字中分析主觀描述者的意見或情緒, 如 positive/negative, happy/sad 等.

第三個主題是從主觀描述者所提供的文字, 分析出主觀描述者所處客觀環境中發生的情境資料, 如地點、事件、描述者的人際網絡等, 此主題稱之為 Contextual Text Mining。


二、方法整理


Word association and Mining 的方法有:

  •  Vector Space Model 
  •  Term Frequency and Inverse Document Frequency 
  •  Entropy and conditional Entropy

Topic Mining 的方法有:

  • Bag-of-Words approach: 如 Latent Dirichlet Allocation
  • Graph-based approach: 如 TextRank, Reinforcement Approach, CollabRank

Option Mining 的方法請參考[4]。另外,也可以對文字特徵(Text Features)進行分類或者分群。文字特徵可以是 character n-grams, word n-grams, POS tag n-grams, word classes 或者 frequent patterns in text.

Contextual Text Mining 的方法有:

  •  Naive Contextual Topic Model
  •  Contextual Probability Laten Sematic Analysis



三、資料前處理

進行文字探勘前必須將文字從原始來源中取出, 這些前處理的工作包括:

  1. 資料收集(Data Collection): y依據研究目的取得原始資料的來源,如: Wikipedia, PTT 等.
  2. 偵測使用的語言, 如果資料來源包含多語系。
  3. 雜訊移除(Remove Noise): 將原始資料中沒有用的資料移除。例如, 移除 HTML 檔案中的標籤。
  4. 資料清理(Data Clean): 移除來源中的非文字資料, 如 Unicode Emotions, Symbol Icon, Currency Symbol, URL 等。
  5. 詞性標記(Part-Of-Speech Tagging): 為句子中的單字標記詞性,如: 主詞、動詞、名詞等。
  6. 詞幹分析(Stemming Analysis): 找出單字的字根(Root), 例如:  "fishing", "fished", and "fisher" 縮減成 "fish" [5].  


四、課程相關資訊


五、限制

能力有限,若有錯誤敬請提出更正。

Reference:
[1] https://www.slideshare.net/YiShinChen1/quick-tour-of-text-mining, accessed on 2017/3/29
[2] Text Representation https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-39940-9_420
[3] Topic 的字典定義為:a subject that is discussed, written about, or studied (http://dictionary.cambridge.org/zht/%E8%A9%9E%E5%85%B8/%E8%8B%B1%E8%AA%9E/topic)。
[4] Bo Pang and Lillian Lee, 2008. Opinion mining and sentiment analysis, Foundations and Trends in Information Retrieval, Vol. 2, No 1-2 (2008) 1–135. (https://www.cs.cornell.edu/home/llee/opinion-mining-sentiment-analysis-survey.html)
[5] Stemming, https://en.wikipedia.org/wiki/Stemming, accessed on 2017/3/29

沒有留言: