精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

徹底了解 BiLSTM 和 CRF 算法

開發 前端 算法
BiLSTM+CRF 是目前比較流行的序列標注算法,其將 BiLSTM 和 CRF 結合在一起,使模型即可以像 CRF 一樣考慮序列前后之間的關聯性,又可以擁有 LSTM 的特征抽取及擬合能力。

 CRF 是一種常用的序列標注算法,可用于詞性標注,分詞,命名實體識別等任務。BiLSTM+CRF 是目前比較流行的序列標注算法,其將 BiLSTM 和 CRF 結合在一起,使模型即可以像 CRF 一樣考慮序列前后之間的關聯性,又可以擁有 LSTM 的特征抽取及擬合能力。

[[329170]]

1.前言

在之前的文章《CRF 條件隨機場》中,介紹了條件隨機場 CRF,描述了 CRF 和 LSTM 的區別。我們以分詞為例,每個字對應的標簽可以是 s, b, m, e 四種。

給定一個句子 "什么是地攤經濟",其正確的分詞方式是 "什么 / 是 / 地攤 / 經濟",每個字對應的分詞標簽是 "be / s / be / be"。從下面的圖片可以看出 LSTM 在做序列標注時的問題。

 

徹底了解 BiLSTM 和 CRF 算法

 

BiLSTM 分詞

BiLSTM 可以預測出每一個字屬于不同標簽的概率,然后使用 Softmax 得到概率最大的標簽,作為該位置的預測值。這樣在預測的時候會忽略了標簽之間的關聯性,如上圖中 BiLSTM 把第一個詞預測成 s,把第二個詞預測成 e。但是實際上在分詞時 s 后面是不會出現 e 的,因此 BiLSTM 沒有考慮標簽間聯系。

因此 BiLSTM+CRF 在 BiLSTM 的輸出層加上一個 CRF,使得模型可以考慮類標之間的相關性,標簽之間的相關性就是 CRF 中的轉移矩陣,表示從一個狀態轉移到另一個狀態的概率。假設 CRF 的轉移矩陣如下圖所示。

徹底了解 BiLSTM 和 CRF 算法

CRF 狀態轉移矩陣

則對于前兩個字 "什么",其標簽為 "se" 的概率 =0.8×0×0.7=0,而標簽為 "be" 的概率=0.6×0.5×0.7=0.21。

因此,BiLSTM+CRF 考慮的是整個類標路徑的概率而不僅僅是單個類標的概率,在 BiLSTM 輸出層加上 CRF 后,如下所示。

 

徹底了解 BiLSTM 和 CRF 算法

 

BiLSTM+CRF 分詞

最終算得所有路徑中,besbebe 的概率最大,因此預測結果為 besbebe。

2.BiLSTM+CRF 模型

CRF 包括兩種特征函數,不熟悉的童鞋可以看下之前的文章。第一種特征函數是狀態特征函數,也稱為發射概率,表示字 x 對應標簽 y 的概率。

 

徹底了解 BiLSTM 和 CRF 算法

CRF 狀態特征函數

在 BiLSTM+CRF 中,這一個特征函數 (發射概率) 直接使用 LSTM 的輸出計算得到,如第一小節中的圖所示,LSTM 可以計算出每一時刻位置對應不同標簽的概率。

CRF 的第二個特征函數是狀態轉移特征函數,表示從一個狀態 y1 轉移到另一個狀態 y2 的概率。

徹底了解 BiLSTM 和 CRF 算法

CRF 狀態轉移特征函數

CRF 的狀態轉移特征函數可以用一個狀態轉移矩陣表示,在訓練時需要調整狀態轉移矩陣的元素值。因此 BiLSTM+CRF 需要在 BiLSTM 的模型內增加一個狀態轉移矩陣。在代碼中如下。

  1. class BiLSTM_CRF(nn.Module): 
  2.     def __init__(self, vocab_size, tag2idx, embedding_dim, hidden_dim): 
  3.         self.word_embeds = nn.Embedding(vocab_size, embedding_dim) 
  4.         self.lstm = nn.LSTM(embedding_dim, hidden_dim // 2, 
  5.                             num_layers=1, bidirectional=True
  6.  
  7.         # 對應 CRF 的發射概率,即每一個位置對應不同類標的概率 
  8.         self.hidden2tag = nn.Linear(hidden_dim, self.tagset_size) 
  9.          
  10.         # 轉移矩陣,維度等于標簽數量,表示從一個標簽轉移到另一標簽的概率 
  11.         self.transitions = nn.Parameter( 
  12.             torch.randn(len(tag2idx), len(tag2idx)) 

給定句子 x,其標簽序列為 y 的概率用下面的公式計算。

徹底了解 BiLSTM 和 CRF 算法

 

p(y|x)

公式中的 score 用下面的式子計算,其中 Emit 對應發射概率 (即 LSTM 輸出的概率),而 Trans 對應了轉移概率 (即 CRF 轉移矩陣對應的數值)

 

徹底了解 BiLSTM 和 CRF 算法

 

score 的計算公式

BiLSTM+CRF 采用最大似然法訓練,對應的損失函數如下:

徹底了解 BiLSTM 和 CRF 算法

損失函數

其中 score(x,y) 比較容易計算,而 Z(x) 是所有標簽序列 (y) 打分的指數之和,如果序列的長度是 l,標簽個數是 k,則序列的數量為 (k^l)。無法直接計算,因此要用前向算法進行計算。

用目前主流的深度學習框架,對 loss 進行求導和梯度下降,即可優化 BiLSTM+CRF。訓練好模型之后可以采用 viterbi 算法 (動態規劃) 找出最優的路徑。

3.損失函數計算

計算 BiLSTM+CRF 損失函數的難點在于計算 log Z(x),用 F 表示 log Z(x),如下公式所示。

 

徹底了解 BiLSTM 和 CRF 算法

 

我們將 score 拆分,變成發射概率 p 和轉移概率 T 的和。為了簡化問題,我們假設序列的長度為3,則可以分別計算寫出長度為 1、2、3 時候的 log Z 值,如下所示。

 

徹底了解 BiLSTM 和 CRF 算法

 

上式中 p 表示發射概率,T 表示轉移概率,Start 表示開始,End 表示句子結束。F(3) 即是最終得到的 log Z(x) 值。通過對上式進行變換,可以將 F(3) 轉成遞歸的形式,如下。

 

徹底了解 BiLSTM 和 CRF 算法

 

可以看到上式中每一步的操作都是一樣的,操作包括 log_sum_exp,例如 F(1):

  • 首先需要計算 exp,對于所有 y1,計算 exp(p(y1)+T(Start,y1))
  • 求和,對上一步得到的 exp 值進行求和
  • 求 log,對求和的結果計算 log

因此可以寫出前向算法計算 log Z 的代碼,如下所示:

  1. def forward_algorithm(self, probs): 
  2.     def forward_algorithm(probs): 
  3.     ""
  4.     probs: LSTM 輸出的概率值,尺寸為 [seq_len, num_tags],num_tags 是標簽的個數 
  5.     ""
  6.  
  7.     # forward_var (可以理解為文章中的 F) 保存前一時刻的值,是一個向量,維度等于 num_tags 
  8.     # 初始時只有 Start 為 0,其他的都取一個很小的值 (-10000.) 
  9.     forward_var = torch.full((1, num_tags), -10000.0)  # [1, num_tags] 
  10.     forward_var[0][Start] = 0.0 
  11.  
  12.     for p in probs:  # probs [seq_len, num_tags],遍歷序列 
  13.         alphas_t = []  # alphas_t 保存下一時刻取不同標簽的累積概率值 
  14.         for next_tag in range(num_tags): # 遍歷標簽 
  15.  
  16.             # 下一時刻發射 next_tag 的概率 
  17.             emit_score = p[next_tag].view(1, -1).expand(1, num_tags) 
  18.  
  19.             # 從所有標簽轉移到 next_tag 的概率, transitions 是一個矩陣,長寬都是 num_tags 
  20.             trans_score = transitions[next_tag].view(1, -1) 
  21.  
  22.             # next_tag_ver = F(i-1) + p + T 
  23.             next_tag_var = forward_var + trans_score + emit_score 
  24.  
  25.             alphas_t.append(log_sum_exp(next_tag_var).view(1)) 
  26.  
  27.         forward_var = torch.cat(alphas_t).view(1, -1) 
  28.  
  29.     terminal_var = forward_var + self.transitions[Stop] # 最后轉移到 Stop 表示句子結束 
  30.     alpha = log_sum_exp(terminal_var) 
  31.     return alpha 

4.viterbi 算法解碼

訓練好模型后,預測過程需要用 viterbi 算法對序列進行解碼,感興趣的童鞋可以參看《統計學習方法》。下面介紹一下 viterbi 的公式,首先是一些符號的意義,如下:

徹底了解 BiLSTM 和 CRF 算法

然后可以得到 viterbi 算法的遞推公式

徹底了解 BiLSTM 和 CRF 算法

最終可以根據 viterbi 計算得到的值,往前查找最合適的序列

徹底了解 BiLSTM 和 CRF 算法

最后推薦大家閱讀 pytorch 官網的 BiLSTM+CRF 代碼,通過代碼更容易理解。

5.參考文獻

ADVANCED: MAKING DYNAMIC DECISIONS AND THE BI-LSTM CRF

 

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2021-04-30 07:23:02

人工智能AI深度學習

2019-02-25 09:20:53

2022-04-25 09:03:16

JavaScript代碼

2023-10-27 08:15:45

2018-10-22 08:14:04

2023-05-16 08:35:22

2010-01-12 13:15:01

VDSL交換機

2023-05-29 08:11:42

@Value注解Bean

2024-01-17 08:18:14

RPAJava技術

2009-11-17 14:23:30

路由器結構

2010-01-18 17:58:49

軟交換技術

2019-12-22 06:04:53

IP內網外網

2021-08-31 07:02:20

Diff算法DOM

2014-10-30 14:19:13

本文由簡單的字符串匹配

2013-10-10 10:34:47

哈希算法

2009-11-23 11:08:21

ADSL寬帶路由器設置

2021-09-14 07:06:12

Android磁盤緩存

2020-10-16 09:34:39

漏桶令牌桶限流

2023-12-27 08:16:54

Sessiontoken安全性

2019-12-27 09:29:46

負載均衡算法哈希算法
點贊
收藏

51CTO技術棧公眾號

人妻精品无码一区二区三区| 国产精品日本一区二区| 永久av免费网站| 欧美大片91| 黑人精品xxx一区一二区| 天天久久人人| 亚洲精品911| 日韩高清不卡一区二区三区| 久久九九亚洲综合| 中出视频在线观看| 国产激情综合| 在线观看网站黄不卡| 成人手机在线播放| 黄色软件在线| 菠萝蜜视频在线观看一区| 国产日韩av高清| 四虎永久在线精品| 久久久久免费av| 亚洲精品动漫久久久久| 午夜大片在线观看| 日韩精品影院| 天天av天天翘天天综合网| 影音先锋欧美在线| 久草在线网址| av中文字幕亚洲| 亚洲一区二区三区在线免费观看| 57pao国产成永久免费视频| 国精产品一区一区三区mba下载| 麻豆freexxxx性91精品| 91成人在线视频| 欧美人妻精品一区二区三区| 成人3d动漫在线观看| 亚洲白拍色综合图区| 手机在线免费观看毛片| 午夜欧美激情| 亚洲成人免费观看| 欧美一级黄色录像片| 香蕉视频在线看| 国产午夜精品理论片a级大结局| 日本精品中文字幕| 国产午夜免费视频| 天天射—综合中文网| 在线观看成人黄色| 国内精品卡一卡二卡三| 猛男gaygay欧美视频| 亚洲精品ady| jizz日本免费| 欧美变态挠脚心| 欧美精品一区视频| 国产人妻黑人一区二区三区| 中文字幕一区二区三区四区久久 | 美女久久网站| 国模吧一区二区| 久久中文字幕无码| 亚洲第一毛片| 国产69精品久久久| 国产对白videos麻豆高潮| 亚洲国产精品一区制服丝袜| 国内精品久久久久久| 日韩欧美大片在线观看| 国产一区二区三区久久久久久久久| 一区二区三欧美| 人成免费在线视频| 久久在线视频| 欧美成人免费一级人片100| 国产极品国产极品| 亚洲国产一区二区精品专区| 国内精品中文字幕| 日韩精品在线免费视频| 首页国产欧美久久| 国产精品美乳一区二区免费 | av一区二区在线看| 精品人妻一区二区三区麻豆91| 国产亚洲毛片| 人人澡人人澡人人看欧美| 亚洲成人第一网站| 久久国产精品区| 97久草视频| 青青草视频在线免费观看| 欧美国产一区二区在线观看 | 人妻少妇偷人精品久久久任期| 亚洲女同志freevdieo| 色av成人天堂桃色av| 午夜视频你懂的| 免费观看在线一区二区三区| 亚洲第一福利视频| 蜜桃av乱码一区二区三区| 婷婷六月综合| 欧美野外猛男的大粗鳮| 中文在线a天堂| 国产成人超碰人人澡人人澡| 国产免费一区二区| 国产原创av在线| 亚洲男同性恋视频| 亚洲熟妇av一区二区三区| 国产福利亚洲| 日韩成人在线电影网| 懂色av蜜臀av粉嫩av永久| 尤物网精品视频| 国产精品人成电影在线观看| 黄色av免费观看| 国产精品情趣视频| av免费观看大全| 99久久这里有精品| 亚洲欧美精品中文字幕在线| 1024手机在线视频| 三级一区在线视频先锋 | 日本手机在线视频| 日本欧美日韩| 亚洲国产成人爱av在线播放| 少妇高潮惨叫久久久久| 国产视频亚洲| 99re在线国产| 欧美69xxxx| 日韩欧美国产骚| 女教师高潮黄又色视频| 欧美综合一区| 欧美在线性视频| 亚洲国产欧美另类| 成人欧美一区二区三区| 男女曰b免费视频| 国产伦精品一区二区三区在线播放 | 欧美激情一二三| 一级爱爱免费视频| 国产欧美一区二区精品忘忧草 | 国产女精品视频网站免费| 人妻中文字幕一区| 亚洲欧美综合另类在线卡通| 18岁视频在线观看| 青青草原在线亚洲| 久久人91精品久久久久久不卡| 日本黄色片视频| 国产91精品入口| www亚洲国产| 国产91在线精品| 中文字幕欧美精品日韩中文字幕| 精品亚洲aⅴ无码一区二区三区| 免费一区二区三区视频导航| 欧美激情中文字幕乱码免费| 国产三区在线播放| 中文字幕一区二区三区四区| 日韩一级理论片| 亚洲成人一品| 国产99久久精品一区二区永久免费| 国产一级精品毛片| 国产欧美日韩精品一区| 亚洲成人福利在线观看| 精品国产乱码| 日韩美女中文字幕| 黄色电影免费在线看| 毛片在线播放a| 欧美视频不卡| αv一区二区三区| 在线网址91| 欧美www视频| 国产亚洲成人精品| 国产xxx精品视频大全| 免费人成自慰网站| 精品福利一区| 欧美中在线观看| 都市激情在线视频| 欧美日韩精品综合在线| 亚洲一二三在线观看| 国产在线精品一区二区三区不卡 | 自拍偷拍国产精品| 日韩欧美国产片| 午夜精品久久久久久久四虎美女版| 久久久久久久久久亚洲| 高潮一区二区三区乱码| 午夜激情一区二区三区| 黄瓜视频污在线观看| 久久久久国内| 夜夜爽99久久国产综合精品女不卡 | 国产一区二中文字幕在线看| 国产原创在线观看| 欧美videos中文字幕| 可以免费看的av毛片| 91免费观看视频| 亚洲黄色小视频在线观看| 99久久婷婷这里只有精品 | 精品国产xxx| 国产精品麻豆久久久| 毛片毛片毛片毛片毛| 日韩午夜在线电影| 亚洲天堂电影网| www.成人网| 国产精品麻豆va在线播放| 亚洲精品天堂| 日韩久久免费电影| 国产精品人人爽| 精品免费在线观看| 午夜黄色福利视频| 成人精品一区二区三区四区| 国产精品亚洲a| 欧美大片aaaa| 91网站免费看| 欧美激情护士| 欧美精品在线免费观看| 久久视频www| 欧美成人精品3d动漫h| 高潮毛片又色又爽免费| 一区二区三区四区乱视频| 久久久久久久久久久久| 国产成人精品免费网站| 亚洲成熟丰满熟妇高潮xxxxx| 亚洲国产合集| 91系列在线观看| 精品欧美一区二区三区在线观看 | av最新在线观看| www.亚洲免费av| 天天操精品视频| 久久综合中文| 激情五月婷婷六月| 香蕉国产精品| 日本中文不卡| 免费福利视频一区| 超碰97在线资源| 成人网av.com/| 国产精品三级网站| 51漫画成人app入口| 欧美精品免费在线观看| 97在线观看免费观看高清| 日韩精品免费综合视频在线播放| 午夜精品三级久久久有码| 亚洲免费观看在线视频| 麻豆av免费观看| eeuss国产一区二区三区| 少妇丰满尤物大尺度写真| 久久精品二区亚洲w码| 97在线播放视频| 亚洲少妇诱惑| 内射国产内射夫妻免费频道| 激情成人亚洲| 欧美性潮喷xxxxx免费视频看| 天海翼精品一区二区三区| 国产欧美日本在线| 久久久久观看| 国产精品综合久久久久久| 成人久久精品| 成人国产精品日本在线| 成人免费毛片嘿嘿连载视频…| 欧美成人精品不卡视频在线观看| 老牛影视av牛牛影视av| 欧美一区二区久久久| 99久久久久久久| 欧美精品丝袜中出| 国产精品毛片一区二区在线看舒淇 | www.国产在线播放| 国产一区二区三区自拍| 国产精品无码电影在线观看| 国产精品sm| www.avtt| 亚洲看片一区| 成人综合视频在线| 国产欧美综合一区二区三区| 国产中文字幕视频在线观看| 国产精品久久国产愉拍| 国产欧美高清在线| 久久er99热精品一区二区| gai在线观看免费高清| 国产精品综合久久| 又大又长粗又爽又黄少妇视频| 日韩精品一级二级 | 性欧美18xxxhd| 国产69久久精品成人看| 欧美成人资源| 国产乱人伦真实精品视频| 电影91久久久| 国产精品一区二区三区观看 | 日韩国产高清在线| 性生活免费在线观看| 久久国产欧美日韩精品| 香蕉在线观看视频| 久久色中文字幕| 青青草自拍偷拍| 亚洲尤物在线视频观看| 青草视频在线观看免费| 欧美日韩一区 二区 三区 久久精品| 国产午夜福利片| 色噜噜狠狠一区二区三区果冻| 国产真人真事毛片| 狠狠色噜噜狠狠狠狠97| 97超碰国产在线| 亚洲第一区中文99精品| 成人在线观看网站| 欧美高跟鞋交xxxxxhd| 欧美一区久久久| 999国产在线| 九热爱视频精品视频| 亚洲欧美一二三| 国产偷自视频区视频一区二区| 黄色一级片在线看| 久久综合中文| 五月天丁香社区| 国产精品蜜臀av| 91精品国产乱码久久久张津瑜| 午夜精品久久久| 中文文字幕一区二区三三| 精品三级在线看| 丝袜美腿美女被狂躁在线观看| 尤物精品国产第一福利三区| 亚洲奶水xxxx哺乳期| 国产精品高潮呻吟久久av无限| 欧美xxxxxx| 国产成人精品福利一区二区三区 | 91精品国产麻豆| 男女污视频在线观看| 欧美疯狂做受xxxx高潮| 欧美v亚洲v综合v国产v仙踪林| 国产欧美亚洲精品| 婷婷国产精品| 黄色一级大片免费| 免费成人在线观看| 国产ts丝袜人妖系列视频| 亚洲永久精品国产| 国产在成人精品线拍偷自揄拍| 日韩一本二本av| 日本激情视频在线观看| 国产精品ⅴa在线观看h| 亚洲电影一级片| 免费在线观看视频a| 国产成人精品在线看| 97在线观看视频免费| 欧美亚洲日本一区| 欧美色综合一区二区三区| 欧美国产高跟鞋裸体秀xxxhd| 成av人片在线观看www| 亚洲aⅴ男人的天堂在线观看| 超碰一区二区三区| 精品一区二区成人免费视频| 日本91福利区| 波多野结衣 在线| 欧美日韩精品在线| 性网爆门事件集合av| 欧美精品在线极品| 精品国产亚洲一区二区在线观看| 国产在线精品日韩| 亚洲激情自拍| 成人做爰www看视频软件| 亚洲最新在线观看| 国产 日韩 欧美 精品| 久热爱精品视频线路一| 国产不卡精品在线| 欧洲xxxxx| 成人妖精视频yjsp地址| 久久久久久久久艹| 日韩精品一区二区在线观看| 国产乱码在线| 久久久久成人精品免费播放动漫| 久久亚洲国产| 亚洲欧美手机在线| 亚洲免费在线视频一区 二区| 国产 日韩 欧美 在线| 日韩高清欧美高清| 午夜日韩成人影院| 色噜噜一区二区| 久久99最新地址| 久久久久久久久毛片| 精品国产乱码久久久久久久久| 天堂地址在线www| 91黄在线观看| 一区二区亚洲| 一区二区不卡免费视频| 在线欧美日韩国产| 日本综合在线| 粉嫩av四季av绯色av第一区| 国产欧美短视频| 黄色片网站免费| 日韩一区二区电影在线| 国产污视频在线播放| 少妇精品久久久久久久久久| 国产综合色精品一区二区三区| 91在线无精精品白丝| 欧美精选一区二区| av剧情在线观看| 日本一区网站| 精品一区二区三区视频在线观看| av中文字幕免费观看| 欧美狂野另类xxxxoooo| 欧美6一10sex性hd| 欧美aaaaa喷水| 国产一区二区导航在线播放| 日韩久久久久久久久| 色一情一乱一区二区| 国产一区二区在线视频你懂的 | 日韩黄色小视频| 少妇视频一区二区| 亚洲精品成人av| 中文字幕日韩亚洲| 国产无套内射久久久国产| 中文字幕欧美一区| 三区在线视频| http;//www.99re视频| 日本欧美久久久久免费播放网| 老熟妇一区二区| 91精品福利在线一区二区三区| 国产在线1区| 日韩福利一区二区三区| 成人午夜激情在线| 中文字幕第99页|