[論文速速讀]Automatic Generation of Personalized Annotation Tags for Twitter Users

Posted by John on 2020-04-08
Words 1.1k and Reading Time 4 Minutes
Viewed Times

〖想觀看更多中文論文導讀,至[論文速速讀]系列文章介紹可以看到目前已發布的所有文章!〗

簡介

論文網址: Automatic Generation of Personalized Annotation Tags for Twitter Users

2010的nlp論文,目的是透過twitter的文章來extract keyword然後自動標註該文章的tags。文章中使用了兩種比較方法: tf-idf以及textrank(他的類似應用是google search engine的page rank)。

Abstract

This paper introduces a system designed for automatically generating personalized annotation tags to label Twitter user’s interests and concerns. We applied TFIDF ranking and TextRank to extract keywords from Twitter messages to tag the user. The user tagging precision we obtained is comparable to the precision of keyword extraction from web pages for content-targeted advertising.

Introduction

…These Twitter messages contain rich information about an individual user, including what s/he is interested in and concerned about. Identifying an individual user’s interests and concerns can help potential commercial applications. For instance, this information can be employed to produce “following” suggestions, either a person who shares similar interests (for expanding their social network) or a company providing products or services the user is interested in (for personalized advertisement)

Twitter訊息中包含了使用者的許多資訊,這些資訊具有一些淺在的商業應用,例如可以提供客製化的廣告或是協助公司提供相關的產品行銷。

We formulate this problem as a keyword extraction task, by selecting words from each individual user’s Twitter messages as his/her tags. Due to the lack of human generated annotations, we employ an unsupervised strategy.

定義keyword extraction問題為: 從使用者的twitter訊息中去找出屬於該訊息的tags。但由於標籤數量不足,所以採用了unsupervised的策略。

提到了一些之前的研究,不過也提到這似乎是第一篇透過twitter message來找出對應的tag的研究,使用twitter會有一些問題,例如: twitter message相對於之前的研究比較口語化(包含表情符號、俚語、縮寫…)的訊息,傳統研究的兩個方法(tf-idf和textrank)是否仍舊有效仍待驗證。

System Architecture

系統架構,要將twitter message變成可以train的data要經過一連串的preprocessing pipeline。

001

  1. Remove reply message: 因為這些回應訊息是比較針對對方的觀點而不是針對自己的言論
  2. Remove emoticons: 對於keyword analysis比較沒有幫助
  3. Substituting / removing internet slangs(厘語) and abbreviations: 這類詞彙可以分成三類 a. 可以被正名的有意義的詞彙: bff(best friend forever), fone(phone) b. 文法上的縮寫: im(i’m), abt(about),如果刪除會影響POS tagging的結果 c. 用來斷句的詞彙,通常沒有實質意義: lol(laugh out loud), clm(cool like me),在這篇的方法中會被刪除
  4. Part-of-Speech tagging and filtering: 透過Stanford POS tagger只篩選出名詞形容詞
  5. Stemming and stopword removing:use Porter stemmer去除字尾,然後去除stop words

接下來就去做TFIDF跟Textrank,tfidf就不細講了,textrank前身是google search engine以前使用的一個algorithm pagerank。textrank更新公式如下:

002

前處理後每個word都當成圖中的一個節點,點和點之間的edge取決於這兩個word在同一篇文章中共同出現(co-exist)的次數

$d$來自pagerank這篇文章,damping factor,在原本的意思中來自使用者在這一頁會點擊下一頁的機率,這邊直接用了原始的數據(0.85)。

也就是說這個公式在不斷的更新點之間的排名,透過更新連接你的點$V_j$中,你在這些點中佔有的重要程度是多少,最後排名會收斂到一個狀態。

Experiment

其實他還有做了一些分析,像是

  • Top-N代表選出的前N個標籤都要經過三個專家判斷是否這些tags符合該文章內容,所以很合理的,當N越大的時候precision會越低
  • Standard deviation of the top-10 TextRank :一個text rank graph,每一個rank所計算出的標準差。越高代表說每一個word之間的rank差異很大,因此找出的tag比較能反應user的偏好;相反越低代表每一個word之間rank差異不大,因此找出的tag就比較不具有鑑別性。
  • Text entropy: 刻劃user message 的豐富度。越高表示message 內容越豐富。當user message 內容越豐富,越能找出具有代表性的tag。

然後另一個點就是Textrank普遍比TFIDF好。

結論

其實就兩個方法tfidf跟textrank,如果以前沒碰過google的pagerank的可以順便學習下,蠻有趣的概念,不過google現在不完全靠這個做SEO了。

References


>