EMNLP 2016參會報告
概要:本文為EMNLP 2016@Austin的參會報告,tutorials、talks的介紹以及一些關注領域(對話系統相關)的paper介紹【內含paper/tutorials/talks的下載地址】
會議概述
EMNLP,整個會議持續5天(Nov.1 ~ Nov.5),1087 submissions(687 long papers, 400 short papers),Accepted(177 long papers<25.8%>,87 short papers<21.8%>)
詳細Agenda
- Day 1: 6 tutorials
- Day 2 ~ Day 4: Main conference, 21 different areas sessions
- Day 5:workshop
全部的paper下載地址
Tutorials
主要介紹其中的兩個Tutorial,剩餘的有PPT下載地址
T1:Practical Neural Networks for NLP: From Theory to Code
主要是介紹DyNet(CMU Group開發的一個NN庫),在這個庫上的一些常見網路結構以及NLP應用的一些實踐實例。
其中庫的- 核心:computation-graph formalism建模思路(所有的運算轉化為DAG),
- 優勢:動態圖定義(比如計算操作符的重載等)【相比於TensorFlow/Theano/Torch等】
- project site: https://github.com/clab/dynet
基於DyNet介紹NLP中應用NN的常見網路結構,包括:MLP/CNN/RNN/LSTM.
My comments:- Part1較為基礎,如果對NN比較熟悉可以跳過
- Part2中的Tagging問題建議關注. 對話系統的NLU的Slot filling問題的一種經典建模方法(阿里用的就是Bi-LSTM)
- 實用角度來說,靜態定義的(tensorflow以及paddle)足夠用
Sildes:Part1, Part2
T3: Lifelong Machine Learning for Natural Language Processing
Why Lifelong ML?
- ML 1.0:傳統機器學習主要是single-task learning,即每次學習都是重新利用數據
- Human beings:人類在學習時會利用之前已有的知識,把之前的知識應用到新的任務上.
- Key problem:leverage the prior knowledge learned from previous task(思想和transfer learning類似)
Algorithm Example:Lifelong Topic modeling
- 核心:Topic Model中如何利用之前任務學習出的topic信息來提升當前任務下的效果
- 問題關鍵1:之前任務學習到知識如何建模,1) must link{幾個term必須在一個topic中} 2) Not link(幾個term不在一個topic中)
- 問題關鍵2:如何使用上述的知識?Gibbs sampling中通過改變抽樣的比例來利用must link和not link信息
My comments:
- LML這套在實際的工業應用場景中有,但是大多出現在冷啟動的場景中(大部分冷啟動場景主要也是遷移的是數據而非知識)
- 將一個任務提取出的知識建模,而後融合到新的模型中的思路非常經典(如:現在NN模型上如何利用先驗知識也是很火的方向)
Slides:https://pan.baidu.com/s/1jIEy3yQ
Other tutorials
- T2: Advanced Markov Logic Techniques for Scalable Joint Inference in NLP
- T4:Neural Networks for Sentiment Analysis
- T5: Continuous Vector Spaces for Cross-language NLP Applications
- T6: Methods and theories for large-scale structured prediction[Comments:建議關注(NER/Parse等問題都可以當做structure prediction問題)]
Slides:https://pan.baidu.com/s/1dFeaO1r
Invited Talks
Talk1: Learning in extended and approximate Rational Speech Acts models
By Christopher Potts (Stanford University):http://web.stanford.edu/~cgpotts/
研究問題:在理性的對話溝通中的如何用合理的語言來有效表達信息,如:下圖所示,如果想描述和表達中間那個頭像,則選擇glasses這個信息能比較清晰的傳遞信息問題建模:RSA,信息接收者(Pragmatic listener)來說解讀該信息取決三個方面:之前的狀態(context),辭彙信息(語言理解),對信息傳遞者的信息傳遞推理建模。My comments:- 比較有意思的建模和研究,設計不少溝通的遊戲有點類似經常玩的「我描述你猜「
- 建模啟發:人類在表達信息的時候會綜合利用聽眾信息(聽的人怎麼理解)、語言信息、信息本身幾個方面的要素,反過來接受者在decode時同樣如此
Slides: https://pan.baidu.com/s/1kUZKT1t
Talk2:You Talking to Me? Speech-based and multimodal approaches for human versus computer addressee detection
by Andreas Stolcke(from MSR)
核心問題:基於語音/語言以及多模(圖像)信號進行包含機器人的群聊場景中的」說話人」識別(區分是否該機器回答)本文的研究,主要還是特徵工程上的探索,主要的信號包括:- lexical info:N-gram class-specific LM
- prosodic modeling(實驗證明語音、語調等信號十分有用):rhythmic、pitch/Using GMM
- visual
- spatial
- Dialogue state
分類演算法:LR
My comments: 實際的應用場景中這個問題多通過@(Google allo),或者喚醒語(比如 echo的alexa)來解決
Talk3:Learning Models of Language, Action and Perception for Human-Robot Collaboration
by Stefanie Tellex (Brown University)
核心問題:人機交互中機器如何對人的對話、動作進行識別、感知以及實現相應的任務建模:POMDP(Partially Observable MDP)【也是經典的對話系統中對話管理建模】- State: Physical state(機器的物理狀態),human mental state(人的需求),Observation(通過這個建立state),physical sensor(對應physical state),Language(語言理解是人需求的一種表達),Gesture(手勢也是人需求的一種表達)
- Reward:是否完成任務
- Actions:機器的物理動作(physical actions)、語言(Language)、手勢(Gesture)
Datasets collection:
- Goal/command-based:給定一個視頻(包含一些設定的動作,比如叉車取一個箱子到某一個位置上)讓人描述一個指令
收集渠道:amazon turk
My comments:
- 語言互動式機器人,impressive(有幾個示例的視頻: http://cs.brown.edu/~stefie10/ )
- POMDP作為經典的建模方法,這裡面的各個方面的因素考慮值得在對話系統中借鑒(如:上下文中的context類似這個問題中的環境context,而intent recognition和slot filling等問題則是在這個context下的semantical understanding)
Selected Papers
Papers – QA Session
Paper1: Creating Causal Embeddings for Question Answering with Minimal Supervision
問題:針對QA中的因果關係類型的問題進行針對性的優化解決方案:- 利用pattern抽取高準確的因果關係context(句法分析 + 規則pattern)
- 利用抽取到的因果關係context 訓練specific word embedding(bi-directional embedding最有效)
- 把上述word embedding的特徵加入到QA的IR方法中,提升QA的相關性
Details: http://www.emnlp2016.net/program/392.html
My comments:細分子問題,構建子數據集來學習,是提升效果的一個比較經典的思路Paper2: Improving Semantic Parsing via Answer Type Inference
問題:如何提升QA中問題中的語義解析準確率解決方案:添加一個中間層信息(Answer Type類型)
- 將Question句子轉化為正常的表述語句,且抽取entity生成pattern
- 基於上述表述語句,基於Bi-LSTM進行QA-Answer Type的分類
My comments:
- Bi-LSTM用來做分類/Tagging已然是標配
- 細分問題,增加一些中間信息可以提升效果,也是相對比較commo的思路
- pattern的生成以及句式轉化等細節是應用中的」trick」Details:http://www.emnlp2016.net/program/1072.html
Papers – Text Generation Session
Paper1:Generating Topical Poetry
問題:寫詩問題(給定一個詞在一個類型詩的字數、韻律等限制下,寫一首語義有意境、相關聯的詩)
挑戰:詩體限制、語義關聯、詩意等解決方案(基於FSA進行嚴格的韻律等限制控制,利用RNN進行path選擇):- Choosing related words: using word embeddings
- Selecting Rhyme pairs
- Making a FSA(有限狀態接收機):生成一些候選
- 基於RNN選擇一條best path
- 細節trick:對repeated words進行懲罰
數據集:歌曲(進行語義關聯學習)
幾個擴展問題- 如何把嚴格的格式和一些詩的限制放開,而讓模型自己去學習結構
- sentiment 信息加入
- 行與行之間還只是在topic層面關聯,不會有一些關聯信息
details:http://www.emnlp2016.net/program/709.html
Paper2:Deep Reinforcement Learning for Dialogue Generation
問題:chi-chat中的對話生成
Previous work: seq2seq 生成式方法單輪的rewardChallenge- dull and generic responses
- repetitive response(生成是問題容易陷入重複的回復中),Eg:See you later. -> See you later
- short-sighted conversation decisions;Eg:How old are you? -> I』m 16 -> 16? -> ….
解決方案:RL model,將上述問題建模到reward中
- State:previous two dialogue turns/使用LSTM模型學習的向量表示
- Action: dialogue utterance to generate
- Reward:Ease of answering:計算dull response在seq2seq model中當下產生的分數的負向;Information flow(diversity):上下文語義相似的負得分;semantic coherence: Pseq2seq(s1|s2) + Pseq2seq(s2|s1)
RL訓練:simulation
兩個agent初始化時用common的seq2seq模型進行初始化而後進行對話,基於RL模型進行模擬生成數據並學習演算法:AlphaGo-style strategy (Silver et al., 2016)My Comments:
- 閑聊中生成式的方法能保證召回和產生一些」意外」的回答,但是往往重複性等問題比較嚴重, 該方法基於RL的建模把一些問題通過reward建模,通過兩個agent模擬來訓練,是個不錯的思路
- 不過工業界還是IR路線為主(資源質量的可控,物料增加後的小範圍泛化能力等)
details: http://www.emnlp2016.net/program/632.html
Paper3:Neural Text Generation from Structured Data with Application to the Biography Domain
問題:給定一些結構化的概念,生成一段整體的text(concepts->text),文章聚焦在人物自傳領域(已知一些結構化的個人信息,生成一段介紹的話)
演算法核心:Neural Language Model for constrained sentence generation- 在NLM生成Text思想的基礎上,將結構化的concept信息融合進去
- 融合的方法:每個詞除了有一個詞典集上的index外,還有在concept table上的信息(filed【哪個欄位】, position【該欄位的那個position】)
為了刻畫一個filed結束的位置,position上既引入start的也引入end的position
NN模型:經典的NLM網路結構(Embedding + 全連接層 + softmax層)Embedding: word embedding & table embedding(including the start position and end position<雙向>)數據:wiki數據(描述文本 <-> 結構化concepts)
details:http://www.emnlp2016.net/program/632.htmlMy comments:table embedding的想法不錯,這次會議里如何將結構化的信息融合到NN網路中的工作越來越多
Papers:Dialogue system session
Paper 1:Nonparametric Bayesian Models for Spoken Language Understanding
問題:SLU中的slot filling問題(當前對話系統中NLU的經典問題),按照slot下value取值是否有限分為兩類
- arbitrary slot filling task:建模為序列標註問題
- categorical slot filling task:建模為分類問題本文的解決方案
- 觀察和假設:slot的value取值雖然很多情況下理論上是非有限的,但是往往其分布(詞的分布)是有限的
- 問題核心:學習一個slot下value的分布
演算法:
- 用Dirichlet Process來對slot下value分布進行建模對於非需要的slot,按照在句子的前、中、後,構建3 slot(begin,middle,end)
- 用generative model生成utterance的方式來學習(類似topic model思想)
實際應用中:對基於序列標註(CRF-Based)生成的候選集(N-Best)利用該分布進行re-ranking
My comments:
- 比較精細化優化的一條思路,從應用層面來說,個人可能不會太放在太靠前來考慮嘗試
- 移植到中文上需要考慮個中文單字與英文letter的範圍空間的差異對數據空間要求的差異
- 背後的建模假設值得思考:即雖然一些無限取值的slot,但是其「分布」可能是有限的,文中作者提的是letter上的分布。
Details: http://www.emnlp2016.net/program/1118.html
Papers:Best Papers
Best long papers
- Improving Information Extraction by Acquiring External Evidence with Reinforcement Learning
- Global Neural CCG Parsing with Optimality Guarantees
Best short papers
Learning a Lexicon and Translation Model from Phoneme LatticesBest resource paper
SQuAD: 100,000+ Questions for Machine Comprehension of TextImproving Information Extraction by Acquiring External Evidence with Reinforcement Learning
問題:信息抽取(IE)問題,如從一段刑事新聞中抽取兇殺者與兇殺的人數【KB構建的基礎】挑戰:較強泛化能力的extractor需要大量的訓練數據來cover住在不同context下的不同表達,如:shooter、suicide victims解決方法:引入external的信息(如:基於該事件去search其他該事件的不同描述)難點:- 如何生成引入external信息的查詢query(直接title效果很差)【how to query】?
- 如何融合新引入的外部信息抽取到的實體【how to reconcile】?
- 引入external是否需要循環迭代?
演算法: RL-based(將Query和Reconcile當做決策的action,將IE的accuracy作為reward來建模驅動)
State:包含幾個信息組合的一個vector- 當前文章抽取的實體置信度 + 新文章抽取的實體置信度
- 抽取到的實體的詞其周邊word的TF和IDF
當前文章和新文章之間的文本相似性:IF/IDF based
Action:兩類決策動作(reconcile和query)Reconcile:1) 接受新的某個實體的抽取(即信任某個新的實體抽取)2)接受所有新的 3)不接受所有新的 4)stop(即不再進行新的query和reconcile)
- query: 候選集【一些模板和規則,主要圍繞title和title的一些變種方法】Reward:刻畫accuracy的變化以及同時對進行一次query查詢進行懲罰Learning method: Deep Q-Network(Mnih et al.,2015 )
Summary
整體的感受:
- NN是標配演算法
- 如何將結構化的知識建模融合到DNN中是很多人在做的工作
- RL method is blooming
- 有一些問題在工業界並不是問題,或者說並不是那麼急迫的問題,如:有不少paper在做群聊對話系統中,誰和誰對話,以及是否是機器對話(產品上可以用更為明確的方式達到相對OK的體驗,比如 @,喚醒詞等)
推薦閱讀:
※PaperWeekly 第53期 | 更別緻的詞向量模型:Simpler GloVe - Part 2
※線下沙龍 x 北京 | NLP專題技術分享會,佔座全憑手速!
※論文推薦:機器閱讀理解,問答系統,對話生成 | 本周值得讀 #36
※SEO詞庫清洗詞和歸類相關問題?