今天一起來(lái)看一篇騰訊和復(fù)旦大學(xué)合作的工作:MarkBERT: Marking Word Boundaries Improves Chinese BERT[1]
一句話概述:在 Token 中加入你感興趣的詞的邊界標(biāo)記。
MarkBERT 不是基于詞的 BERT,依然是基于字,但巧妙地將「詞的邊界標(biāo)記」信息融入模型。這樣可以統(tǒng)一處理任意詞,無(wú)論是不是 OOV。另外,MarkBERT 還有兩個(gè)額外的好處:
首先,在邊界標(biāo)記上添加單詞級(jí)別的學(xué)習(xí)目標(biāo)很方便,這是對(duì)傳統(tǒng)字符和句子級(jí)預(yù)訓(xùn)練任務(wù)的補(bǔ)充;
其次,可以通過(guò)用 POS 標(biāo)簽特定的標(biāo)記替換通用標(biāo)記來(lái)輕松合并更豐富的語(yǔ)義。
在 NER 任務(wù)上取得了 2 個(gè)點(diǎn)的提升,在文本分類、關(guān)鍵詞識(shí)別、語(yǔ)義相似任務(wù)上也取得了更好的精度。
這個(gè)簡(jiǎn)單但有效的中文預(yù)訓(xùn)練模型 MarkBERT,考慮了詞信息但沒(méi)有 OOV 問(wèn)題。具體有以下優(yōu)勢(shì):
統(tǒng)一的方式處理常用詞和低頻詞,沒(méi)有 OOV 問(wèn)題。
Marker 的引入允許設(shè)計(jì)詞級(jí)別的預(yù)訓(xùn)練任務(wù),這是對(duì)字級(jí)別的 MLM 和句子級(jí)別的 NSP 的補(bǔ)充。
容易擴(kuò)展加入更多單詞語(yǔ)義(詞性、詞法等)。
預(yù)訓(xùn)練階段有兩個(gè)任務(wù):
MLM:對(duì) Marker 也進(jìn)行了 MASK,以便模型能學(xué)習(xí)到邊界知識(shí)。
替換詞檢測(cè):人工替換一個(gè)詞,然后讓模型分辨標(biāo)記前面的詞是不是正確的。
MarkBERT預(yù)訓(xùn)練
MarkBERT
如下圖所示:
首先分詞,在詞中間插入特殊標(biāo)記,這些標(biāo)記也會(huì)被當(dāng)做普通的字符處理。有位置,也會(huì)被 MASK,這樣編碼時(shí)就需要注意詞的邊界,而不是簡(jiǎn)單地填充,MASK 預(yù)測(cè)任務(wù)變得更有挑戰(zhàn)(預(yù)測(cè)需要更好地理解單詞邊界)。這樣,模型依然是字符級(jí)別的,但它知道了單詞的邊界(因?yàn)閱卧~的信息是顯式給出的)。
替換詞檢測(cè)
具體而言,當(dāng)一個(gè)詞被替換成混淆詞,標(biāo)記應(yīng)該做出「被替換」的預(yù)測(cè),標(biāo)簽為 False,否則為 True。
該損失函數(shù)會(huì)和 MLM 的損失函數(shù)加在一起作為多任務(wù)訓(xùn)練過(guò)程。混淆詞來(lái)自同義詞或讀音相似的詞,通過(guò)這個(gè)任務(wù),標(biāo)記可以對(duì)上下文中的單詞跨度更敏感。使用 POS 做標(biāo)記的模型稱為 MarkBERT-POS。
預(yù)訓(xùn)練
MASK 的比例依然是 15%,30% 的時(shí)間不插入任何標(biāo)記(原始的 BERT);50% 的時(shí)間執(zhí)行 WWM 預(yù)測(cè)任務(wù);其余時(shí)間執(zhí)行 MLM 預(yù)測(cè)任務(wù)。
在插入標(biāo)記中,30% 的時(shí)間將詞替換為基于讀音的混淆詞或基于同義詞的混淆詞,標(biāo)記預(yù)測(cè)讀音混淆標(biāo)記或同義詞混淆標(biāo)記;其他時(shí)間標(biāo)記預(yù)測(cè)正常單詞標(biāo)記。為了避免不平衡標(biāo)簽,只計(jì)算正常標(biāo)記上 15% 的損失。
實(shí)驗(yàn)
在 NER 任務(wù)上的效果如下表所示:
可以看到,效果提升還是很明顯的。
在三個(gè)任務(wù)上做了消融實(shí)驗(yàn):
MarkBERT-MLM:只有 MLM 任務(wù)
MarkBERT-rwd:在替換詞檢測(cè)時(shí),分別移除近音詞或同義詞
MarkBERT-w/o:在下游任務(wù)微調(diào)時(shí)去掉 Marker(和原始 BERT 一樣用法)
結(jié)果如下表所示:
結(jié)論如下:
MarkBERT-MLM 在 NER 任務(wù)中獲得顯著提升,說(shuō)明單詞邊界信息在細(xì)粒度任務(wù)中很重要。
不插入標(biāo)記,MarkBERT-w/o 也達(dá)到了和 baseline 相近的效果,說(shuō)明 MarkBERT 可以像 BERT 一樣使用。
對(duì) NER 任務(wù)來(lái)說(shuō),插入標(biāo)記依然重要,表明 MarkBERT 結(jié)構(gòu)在學(xué)習(xí)需要這種細(xì)粒度表示的任務(wù)的單詞邊界方面是有效的。
討論
已有的中文 BERT 融入詞信息有兩個(gè)方面的策略:
在預(yù)訓(xùn)練階段使用詞信息,但在下游任務(wù)上使用字符序列,如 Chinese-BERT-WWM,Lattice-BERT。
在下游任務(wù)中使用預(yù)訓(xùn)練模型時(shí)使用單詞信息,如 WoBERT,AmBERT,Lichee。
另外在與實(shí)體相關(guān)的 NLU 任務(wù),特別是關(guān)系分類中有探討插入標(biāo)記的想法。給定一個(gè)主語(yǔ)實(shí)體和賓語(yǔ)實(shí)體,現(xiàn)有工作注入非類型標(biāo)記或?qū)嶓w特定標(biāo)記,并對(duì)實(shí)體之間的關(guān)系做出更好的預(yù)測(cè)。
這篇論文當(dāng)時(shí)刷到時(shí)覺(jué)得真心不錯(cuò),方法很簡(jiǎn)單但很巧妙,一下子解決了中文預(yù)訓(xùn)練模型「詞」的處理,非常方便地就可以引入詞級(jí)別的任務(wù),以及豐富的詞語(yǔ)義。其實(shí),我們甚至可以只針對(duì)「部分感興趣的詞」添加標(biāo)記,剩下的依然按字處理。
本文參考資料
[1]
MarkBERT: Marking Word Boundaries Improves Chinese BERT: https://arxiv.org/abs/2203.06378
審核編輯 :李倩
-
編碼
+關(guān)注
關(guān)注
6文章
946瀏覽量
54870 -
模型
+關(guān)注
關(guān)注
1文章
3261瀏覽量
48914
原文標(biāo)題:MarkBERT:巧妙地將詞的邊界標(biāo)記信息融入模型
文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語(yǔ)言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論