2017-08-28 115 views
2

我一直在探索NLP技術,目標是確定調查評論的主題(然後將其與情感分析結合使用)。我想做出高水平的表述,例如「10%的受訪者對客戶經理做出了積極的評論(+觀點)」。識別潛在客體

我的方法使用了Named Entity Recognition (NER)。現在我正在處理真實數據,現在我可以看到與識別句子主題相關的複雜性&。這裏有5個例子,其中主題是客戶經理。出於演示目的,我已將該命名實體加粗。

  1. 我們客戶經理是偉大的,他總是會多哩!
  2. Steve我們的客戶經理是偉大的,他總是走得更遠!
  3. 史蒂夫我們的關係經理是偉大的,他總是去額外 英里!
  4. 史蒂芬是偉大的,他總是走得更遠!
  5. 史蒂夫史密斯是偉大的,他總是走得更遠!
  6. 我們的business mgr。是偉大的,他總是走得更遠!

我看到我的任務

  1. 增加了複雜性同義詞三個挑戰:客戶經理VS關係經理VS業務經理。這在某種程度上是特定領域的,並且隨着調查對象的不同而不同。
  2. 縮略語:經理。 vs manager
  3. 歧義 - 無論「史蒂文」是「史蒂夫史密斯」&因此 「帳戶經理」。

這些同義詞問題是最常見的問題,其次是歧義問題。根據我所看到的,縮寫問題在我的數據中並不常見。

是否有任何NLP技術可以幫助處理這些問題的相對高度的自信?

+0

你能解釋一下你究竟想要達到什麼目的嗎?對於你的6個例子,你想實現的方法的輸出是什麼? – Tobias

+0

所有六個句子都被分類/識別爲具有相同的主題 - 「客戶經理」。目前使用NER,句子1和2具有「客戶經理」的主題,而3是「關係經理」,並且6是業務經理。同樣,第5句以史蒂夫史密斯(一位客戶經理)爲主題。所以本質上我試圖提煉出這個句子來確定根本主題。這種蒸餾的目標是使分析更容易。 – Steve

回答

1

由於據我所知,你稱之爲「主題」是一個句子,是一個陳述的實體 - 在你的例子中,史蒂夫的客戶經理。

基於這個假設,這裏有一些技巧和他們如何幫助您:

(依賴)解析

既然你不意味着嚴格的語法意義問題,該方法建議用user7344209根據依賴關係解析可能不會幫你。在諸如「我喜歡史蒂夫」這樣的句子中,語法主語是「我」,儘管你可能想要找到「史蒂夫」作爲「主語」。

命名實體識別

你已經利用這一點,這將是巨大的,檢測人員的名字,如史蒂夫。我不太確定的是「客戶經理」的例子。這兩個由丹尼爾和我自己的測試與斯坦福CoreNLP提供的輸出並沒有將其識別爲命名實體 - 這是正確的,它真的不是一個命名實體:

enter image description here

東西更廣泛,例如如建議提到標識可能會更好,但它基本上標記每個名詞短語可能太寬泛。如果我的理解正確,您希望每個句子找到一個科目。

指代消解

指代消解是檢測「史蒂夫」和「客戶經理」是同一個實體的關鍵技術。例如,斯坦福大學CoreNLP有這樣的module

爲了在您的示例中正常工作,您必須讓它一次處理多個句子,因爲您想查找它們之間的鏈接。下面是一些你的例子有(短版本)爲例:

enter image description here

可視化是一個有點亂,但它基本上發現了以下的共參照鏈:

  • 史蒂夫< - >史蒂夫·史密斯
  • 史蒂夫我們的客戶經理< - >他< - >我們的客戶經理
  • 我們< - >我們
  • 加倍努力< - >額外的努力

鑑於前兩個鏈條,有點後處理的,你可以找出所有四個語句是關於同一實體。

語義相似

在帳戶,業務和關係經理的情況下,我發現CoreNLP的共參照解析器其實已經發現,儘管鏈不同方面。更一般地說,如果你認爲協同解析器不能很好地處理同義詞和釋義,你也可以嘗試包含語義相似度量度。 NLP在預測兩個短語是否同義方面有很多工作。

一些方法有:

  • 在詞庫如WORDNET仰視同義詞 - 例如如圖所示nltk(python)here
  • 更好的是,根據WordNet中定義的關係計算相似性度量 - 例如,使用SEMILAR(JAVA)
  • 使用連續交涉的話來計算的相似之處,例如基於LSA或LDA - 也有可能與SEMILAR
  • 使用較新的神經網絡式字的嵌入,如word2vecGloVe - 後者與spacy(蟒)容易使用

一個想法使用這些相似性度量將是確定在兩個句子的實體,然後使實體之間的成對比較中兩個句子,並且如果對具有高於閾值的相似性認爲它是同一個實體。

1

如果你沒有太多的數據來訓練,你可能可以嘗試依賴性分析工具,並提取其中有主語標識(通常是nsubj如果使用Stanford Parser)依賴對。

1

我喜歡你的方法使用NER。這是我在我們的系統中看到您輸入: enter image description here

提及,檢測輸出也可能是有用的: enter image description here

在你的第二點,它涉及的縮寫,這是一個困難的問題。但我們在這裏有entity-similarity模塊,可能會有用。這考慮之類的東西honorifics

關於你的第三個點,共指問題,請嘗試COREF模塊: enter image description here

順便說一下上面的數字是從演示這裏:http://deagol.cs.illinois.edu:8080