日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

深度文本分类综述

發(fā)布時間:2025/3/8 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 深度文本分类综述 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

最近有很多小伙伴想了解深度學(xué)習(xí)在文本分類的發(fā)展,因此,作者何從慶整理最近幾年比較經(jīng)典的深度文本分類方法,希望幫助小伙伴們了解深度學(xué)習(xí)在文本分類中的應(yīng)用。

Convolutional Neural Networks for Sentence Classification (EMNLP 2014)

Kim在EMNLP2014提出的TextCNN方法,在多個數(shù)據(jù)集上取得了很好的效果。由于其計算速度快以及可并行性,在產(chǎn)業(yè)界得到了廣泛使用。TextCNN的模型示意圖如下圖所示。

TextCNN模型首先將文本映射成向量,然后利用多個濾波器來捕捉文本的局部語義信息,接著使用最大池化,捕捉最重要的特征。最近將這些特征輸入到全連接層,得到標(biāo)簽的概率分布。

代碼參考:

1) https://github.com/alexander-rakhlin/CNN-for-Sentence-Classification-in-Keras

2) https://github.com/brightmart/text_classification

圖1:TextCNN模型架構(gòu)

Document Modeling with Gated Recurrent Neural Network for Sentiment Classification (EMNLP 2015)

Tang等人提出了一種利用GRU對文檔進行建模的情感分類模型。模型如下圖所示。

該模型首先將文本映射為向量,然后利用CNN/LSTM(論文中使用3個濾波器的CNN)進行句子表示。另外,為了捕獲句子的全局語義表征,將其輸送給平均池化層,再接入tanh激活函數(shù)。最后將整個句子的不同寬度卷積核的向量表示接入一個Average層,從而得到句子平均向量表示。

然后將得到的句子表示,輸入到GRU中,得到文檔向量表示。最后將文檔向量輸送給softmax層,得到標(biāo)簽的概率分布。

圖2:文檔級別情感分類的神經(jīng)網(wǎng)絡(luò)模型

Recurrent Convolutional Neural Networks for Text Classification (AAAI 2015)

Lai等人提出了一種無人工特征的循環(huán)卷積神經(jīng)網(wǎng)絡(luò)分類方法,簡稱RCNN。

RCNN首先利用Bi-RNN來捕捉前后的上下文表征,然后將其concat起來,接著使用濾波器filter_size=1的卷積層,并使用最大池化操作得到與文檔最相關(guān)的向量表征,最后將這些向量輸入到softmax層,得到標(biāo)簽的概率表征。

代碼參考:

1)?https://github.com/roomylee/rcnn-text-classification

2) https://github.com/brightmart/text_classification

圖3: RCNN的模型結(jié)構(gòu)示意圖

Recurrent Neural Network for Text Classification with Multi-Task Learning (IJCAI 2016)

Liu等人針對文本多分類任務(wù),提出了基于RNN的三種不同的共享信息機制對具有特定任務(wù)和文本進行建模。

模型1(Uniform-Layer Architecture):所有任務(wù)共享同一個LSTM層,并在每個特定任務(wù)后面拼接一個隨機生成可訓(xùn)練的向量。LSTM層的最后一個時刻的隱藏層作為輸入傳入到softmax層。

模型2(Coupled-Layer Architecture): 每個任務(wù)具有自己獨立的LSTM層,但是每一時刻所有任務(wù)的hidden state則會和下一時刻的character一起作為輸入,最后一個時刻的hidden state進行分類。

模型3(Shared-Layer Architecture):除了一個共享的BI-LSTM層用于獲取共享信息,每個任務(wù)有自己獨立的LSTM層,LSTM的輸入包括每一時刻的character和BI-LSTM的hidden state。

圖4:三種架構(gòu)進行多任務(wù)學(xué)習(xí)建模

Hierarchical Attention Networks for Document Classification (NAACL 2016)

Yang等人提出了一種用于文檔分類的層次注意力機制網(wǎng)絡(luò),簡稱HAN。這篇文章和Tang等人都是針對于文檔分類的問題,然而,這篇文章在句子級別以及文檔級別提出了注意力機制,使得模型在構(gòu)建文檔時是能夠賦予重要內(nèi)容不同的權(quán)重,同時,也可以緩解RNN在捕捉文檔的序列信息產(chǎn)生的梯度消失問題。HAN模型的模型示意圖如下所示。

HAN模型首先利用Bi-GRU捕捉單詞級別的上下文信息。由于句子中的每個單詞對于句子表示并不是同等的貢獻,因此,作者引入注意力機制來提取對句子表示有重要意義的詞匯,并將這些信息詞匯的表征聚合起來形成句子向量。具體的注意力機制的原理可以參考:

FEED-FORWARD NETWORKS WITH ATTENTION CAN SOLVE SOME LONG-TERM MEMORY PROBLEMS

然后,對于所有的句子向量輸入到Bi-GRU中,捕捉句子級別的上下文信息,得到文檔向量。同樣地,為了獎勵對文檔進行正確分類的線索句,作者再次使用注意力機制,來衡量句子的重要性,得到文檔向量。最后將文檔向量均輸入到softmax層,得到標(biāo)簽的概率分布。

代碼參考:

1)?https://github.com/richliao/textClassifier

2) https://github.com/brightmart/text_classification

圖3: HAN模型結(jié)構(gòu)示意圖

Bag of Tricks for Efficient Text Classification (EACL 2017)

Joulin等人提出了一種簡單而又有效的文本分類模型,簡稱fastText。

fastText模型輸入一個詞序列(一段文本或者一句話),序列中的詞與詞組成特征向量,然后特征向量通過線性變換映射到中間層,中間層再映射到標(biāo)簽。輸出這個詞序列屬于不同類別的概率。其中fastText在預(yù)測標(biāo)簽是使用了非線性激活函數(shù),但在中間層不使用非線性激活函數(shù)。

代碼參考:

1) https://github.com/facebookresearch/fastText

2) ?https://radimrehurek.com/gensim/models/fasttext.html

圖4:fastText模型結(jié)構(gòu)示意圖

Deep Pyramid Convolutional Neural Networks for Text Categorization (ACL 2017)

Johnson 和Zhang 提出了一種單詞級別的深層CNN模型,來捕捉文本的全局語義表征,該模型在不增加太多的計算開銷的情況下,通過增加網(wǎng)絡(luò)深度可以獲得最佳的性能,簡稱DPCNN。模型結(jié)構(gòu)示意圖如下所示。

DPCNN模型首先利用“text region embedding”,將常用的word embedding 推廣到包含一個或多個單詞的文本區(qū)域的embedding,類似于增加一層卷積神經(jīng)網(wǎng)絡(luò)。

然后是卷積快的疊加(兩個卷積層和一個shortcut連接,其中shortcut連接類似于殘差連接),與步長為2的最大池化層進行下采樣。最后使用一個最大池化層,得到每個文檔的文檔向量。

代碼參考:

https://github.com/Cheneng/DPCNN

圖4:DPCNN模型結(jié)構(gòu)示意圖

Using millions of emoji occurrences to learn any-domain representations for detecting sentiment, emotion and sarcasm (EMNLP 2017)

Felbo等人使用數(shù)以百萬計的表情符號來學(xué)習(xí)任何領(lǐng)域的表情符號來檢測情緒、情緒和諷刺,提出了DeepMoji模型,并取得了具有競爭性的效果。同時,DeepMoji模型在文本分類任務(wù)上也可以取得不錯的結(jié)果。

DeepMoji模型首先使用embedding層將單詞映射成向量,并將每個embedding維度使用雙正切函數(shù)映射到[-1,1]。然后,作者使用兩層的Bi-LSTM捕捉上下文特征。接著作者提出了一種新的注意力機制,分別將embeddding層以及2層的Bi-LSTM作為輸入,得到文檔的向量表征。最后,將向量輸入到softmax層,得到標(biāo)簽的概率分布。

代碼參考:

https://github.com/bfelbo/DeepMoji

圖5:DeepMoji模型結(jié)構(gòu)示意圖

Investigating Capsule Networks with Dynamic Routing for Text Classification (EMNLP 2018)

Zhao等人提出了一種基于膠囊網(wǎng)絡(luò)的文本分類模型,并改進了Sabour等人提出的動態(tài)路由,提出了三種穩(wěn)定動態(tài)路由。模型如下所示:

該模型首先利用標(biāo)準(zhǔn)的卷積網(wǎng)絡(luò),通過多個卷積濾波器提取句子的局部語義表征。然后將CNN的標(biāo)量輸出替換為向量輸出膠囊,從而構(gòu)建Primary Capsule層。接著輸入到作者提出的改進的動態(tài)路由(共享機制的動態(tài)路由和非共享機制的動態(tài)路由),得到卷積膠囊層。最后將卷積膠囊層的膠囊壓平,送入到全連接膠囊層,每個膠囊表示屬于每個類別的概率。

?

代碼參考:

https://github.com/andyweizhao/capsule_text_classification.

?

圖6:文本分類的膠囊網(wǎng)絡(luò)體系結(jié)構(gòu)

Sentiment Analysis by Capsules (WWW 2018)

Wang等人提出了一種用于情感分類的RNN膠囊網(wǎng)絡(luò)模型,簡稱RNN-Capsule。(這篇文章在可視化方面做的還是不錯的)模型結(jié)構(gòu)示意圖如下所示。

RNN-Capsule首先使用RNN捕捉文本上下文信息,然后將其輸入到capsule結(jié)構(gòu)中,該capsule結(jié)構(gòu)一共由三部分組成:representation module, probability module,和reconstruction module。具體地,首先用注意力機制計算capsule 表征;然后用capsule表征計算capsule狀態(tài)的概率;最后用capsule表征以及capsule狀態(tài)概率重構(gòu)實例的表征。

圖7: RNN-Capsule模型結(jié)構(gòu)示意圖

Graph Convolutional Networks for Text Classification (AAAI 2019)

Yao等人提出了一種基于graph convolutional networks(GCN)進行文本分類。作者構(gòu)建了一個包含word節(jié)點和document節(jié)點的大型異構(gòu)文本圖,顯式地對全局word利用co-occurrence信息進行建模,然后將文本分類問題看作是node分類問題。

代碼參考:

https://github.com/yao8839836/text_gcn

圖7:Text GCN的模型結(jié)構(gòu)

BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (NAACL 2019)

Google提出的BERT模型,突破了靜態(tài)詞向量無法解決一詞多義的問題。BERT是基于語言模型的動態(tài)詞向量,在自然語言處理的多項任務(wù)中取得了最優(yōu)秀的結(jié)果。筆者對BERT模型進行微調(diào),在文本分類的多個領(lǐng)域,諸如法律、情感等,取得了非常有競爭性的性能。

BERT的模型架構(gòu)是一個多層的雙向Transformer編碼器(Transformer的原理及細(xì)節(jié)可以參考 Attention is all you need)。作者采用兩套參數(shù)分別生成BERTBASE模型和BERTLARGE模型(細(xì)節(jié)描述可以參考原論文),所有下游任務(wù)可以在這兩套模型進行微調(diào)。

代碼參考:

https://github.com/google-research/bert

圖8:BERT的Pre-training結(jié)構(gòu)和Fine-Tuning結(jié)構(gòu)

作者的公眾號:

請關(guān)注和分享↓↓↓?

本站的知識星球(黃博的機器學(xué)習(xí)圈子)ID:92416895

目前在機器學(xué)習(xí)方向的知識星球排名第一

往期精彩回顧

  • 良心推薦:機器學(xué)習(xí)入門資料匯總及學(xué)習(xí)建議(2018版)

  • 黃海廣博士的github鏡像下載(機器學(xué)習(xí)及深度學(xué)習(xí)資源)

  • 吳恩達老師的機器學(xué)習(xí)和深度學(xué)習(xí)課程筆記打印版

  • 機器學(xué)習(xí)小抄-(像背托福單詞一樣理解機器學(xué)習(xí))

  • 首發(fā):深度學(xué)習(xí)入門寶典-《python深度學(xué)習(xí)》原文代碼中文注釋版及電子書

  • 機器學(xué)習(xí)的數(shù)學(xué)基礎(chǔ)

  • 機器學(xué)習(xí)必備寶典-《統(tǒng)計學(xué)習(xí)方法》的python代碼實現(xiàn)、電子書及課件

  • 吐血推薦收藏的學(xué)位論文排版教程(完整版)

  • Python環(huán)境的安裝(Anaconda+Jupyter notebook+Pycharm)

  • Python代碼寫得丑怎么辦?推薦幾個神器拯救你

  • 重磅 | 完備的 AI 學(xué)習(xí)路線,最詳細(xì)的資源整理!

總結(jié)

以上是生活随笔為你收集整理的深度文本分类综述的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。