SGM:Sequence Generation Model for Multi-Label Classification(SGM)
SGM歷史意義:
1、提出一種新奇的模型SGM
2、給多標籤文字分類提供一種新的解決思路
3、在兩個多標籤分類的資料集上取得了很好的結果
論文主要結構:
一、Abstract
多標籤文字分類因為標籤之間的相關性所以是一個非常有挑戰性的工作,並且文字不同部分對於標籤的預測的重要性不同,基於這兩點,這篇論文提出一種基於注意力機制的序列生成模型來做多標籤文字分類
二、Introduction
(任務重要性 -> 前人缺點 -> 本文提出相關模型 -> 實驗)
1、多標籤文字分類是自然語言處理的重要任務,多標籤文字分類可以用到文字分類、推薦領域以及資訊檢索任務中
2、目前的多標籤文字分類模型存在兩個問題:沒有注意到標籤之間的相關性以及不同文字對於不同標籤分類的重要性不同
3、為了解決這兩個問題,這篇論文使用SeqSeq模型模型學習標籤之間的相關性,使用注意力機制學習不同文字的重要性
4、實驗證明-模型能夠在兩個多標籤文字分類資料集上大幅度領先基準模型並且實驗結果表明可以解決上述問題
三、Proposed Model
本文提出SGM模型
本文首先總體概括一下主要做了什麼工作
主要介紹了一句話是多標籤,會有一個標籤序列L,會根據訓練集按照label出現的次數進行統計,然後每一個文字對應的標籤序列,出現頻率比較高的標籤放在標籤序列的前面,“bos”、“eos”分別表示標籤序列的開始和結束,整體流程主要是首先輸入文字序列x,然後編碼獲取隱藏層狀態,利用注意力機制獲得向量ct,解碼部分是根據向量ct、上一層的隱藏狀態st-1以及解碼向量g(yt-1)獲得t時刻的隱藏層狀態st,最後通過一個mask softmax獲得輸出yt的概率分佈。
模型整體結構圖:
具體結構細分包括: Encoder部分、Attention部分、Decoder部分、global embedding部分
1)Encoder部分
Encoder部分主要是輸入一個句子,把每一個詞embedding化,然後把每一個詞的embedding輸入到雙向LSTM網路中,並將正向和反向的隱藏層狀態做concat作為該詞的最後隱藏層狀態表示(也就是上圖中的hi)
2) Attention部分
每個詞對標籤的貢獻不一樣,所以在隱藏層狀態表示部分新增一個注意力機制獲取每一個編碼隱藏層的權重(對應圖中ati),va相當於注意力機制中的query在這裡也是一個動態的可學習的引數矩陣,wa、ua也是引數矩陣,ct表示attention value
3) Decoder部分
g(yt-1)表示在yt-1的最大概率分佈label的embedding,yt-1是在時間t-1的時刻標籤序列的概率分佈,並且為了在標籤序列中防止相同的標籤被多次預測,在softmax部分新增一個It
4)global embedding部分
說的主要目的是當前時刻的標籤部分依賴於這個標籤序列上一時刻的標籤,如果上一時刻預測標籤有問題,那麼這個標籤序列下一時刻也有很大的問題,相當於一錯再錯下去,提出的global embedding表示不在僅僅依賴與上一時刻而是依賴於全域性,具體做法是對embeding進行加權求和也就是上述圖中的e',e表示上一時刻的embedding
四、Experiment
兩個資料集上實驗及實驗結果
介紹了兩個資料集以及多標籤評價指標以及後續介紹相關實驗設定、對比模型-baseline、主要實驗結果、實驗分析(不同引數取值對結果的影響、attention視覺化等內容)
五、Related Work
介紹了前人在多標籤分類的相關論文以及內容
六、Conclusion and Feature work
全文總結並對未來展望
關鍵點:
1、之前的模型沒有注意到標籤之間的相關性以及不同標籤分類的文字重要性不同
2、本文通過SeqSeq 學習標籤之間的相關性,通過注意力機制學習不同標籤得到重要相關文字
3、SGM模型
創新點:
1、將多標籤分類任務看成文字生成任務,可以學習標籤之間的相關性
2、本文提出一種新的decoder結構,不僅可以獲取標籤之間的關係,並且可以自適應選擇不同的文字去分類不同的標籤
3、實驗結果表明SGM模型能夠大幅度提高多標籤文字分類的效果
啟發點:
1、前人忽略標籤之間的相關性,並且沒有注意不同文字對於預測不同標籤的重要性不同
2、beam search不能從根本上解決曝光誤差問題,因為這一誤差可能會出現在每一條可能的路徑上,而beam search只是選擇幾條最好的路徑
七、程式碼實現
論文中公開了原始碼:https://github.com/lancopku/SGM
相關文章
- DeepLearning – Overview of Sequence modelView
- 【隨筆記】T507 ADC SGM58031 16BIT 4Channel 除錯記錄筆記除錯
- 論文解讀(XR-Transformer)Fast Multi-Resolution Transformer Fine-tuning for Extreme Multi-label Text ClassificationORMASTREM
- sequence to sequence模型模型
- DAN Text Classification
- CA Data Classification algorithmGo
- image-classification-dataset
- [論文閱讀] Residual Attention(Multi-Label Recognition)
- Sequence recognition
- SAP Table Relationship of Material Classification
- Pythonic AI generation of images and videosPythonAIIDE
- uvm的sequence
- PostgreSQL 序列(Sequence)SQL
- ORACLE SEQUENCE用法Oracle
- python sequence序列Python
- Rainbow Bracket SequenceAIRacket
- Increasing Sequence with Fixed OR
- PostgreSQL sequence (一)SQL
- 論文閱讀:Sequence to sequence learning for joint extraction of entities and relations
- machine learning model(algorithm model) .vs. statistical modelMacGo
- Machine Learning (6) - Logistic Regression (Binary Classification)Mac
- Machine Learning (8) - Logistic Regression (Multiclass Classification)Mac
- MLE 5217 : Take-Home Dataset Classification
- FSM:Sequence 1101 recognizer
- F - Two Sequence Queries
- 裁剪序列Cut the Sequence
- E. Block SequenceBloC
- mysql實現sequenceMySql
- LeetCode 444 sequence reconstructionLeetCodeStruct
- 讀論文《Toward Controlled Generation of Text》
- ent orm筆記4---Code GenerationORM筆記
- Elevate Your Lead Generation Game with Maps Scraper AIGAMAI
- 六、GO 程式設計模式:GO GENERATIONGo程式設計設計模式
- [LeetCode]60. Permutation SequenceLeetCode
- HDU 1711 Number Sequence(KMP)KMP
- A Proof of Golden Section of Fibonacci SequenceGo
- oracle的scn及sequenceOracle
- WEKA把分類(Classification)和迴歸(Regression)