1. 程式人生 > >【NLP】基於機器學習角度談談CRF(三)

【NLP】基於機器學習角度談談CRF(三)

作者:白寧超

2016年8月3日08:39:14

【摘要】:條件隨機場用於序列標註,資料分割等自然語言處理中,表現出很好的效果。在中文分詞、中文人名識別和歧義消解等任務中都有應用。本文源於筆者做語句識別序列標註過程中,對條件隨機場的瞭解,逐步研究基於自然語言處理方面的應用。成文主要源於自然語言處理、機器學習、統計學習方法和部分網上資料對CRF介紹的相關的相關,最後進行大量研究整理彙總成體系知識。文章佈局如下:第一節介紹CRF相關的基礎統計知識;第二節介紹基於自然語言角度的CRF介紹;第三節基於機器學習角度對CRF介紹,第四節基於統計學習角度對相關知識介紹;第五節對統計學習深度介紹CRF,可以作為了解內容。(本文原創,轉載請註明出處

基於機器學習角度談談CRF。)

目錄

【自然語言處理:漫步條件隨機場系列文章(一)】:

【自然語言處理:漫步條件隨機場系列文章(二)】:

【自然語言處理:漫步條件隨機場系列文章(三)】:

【自然語言處理:漫步條件隨機場系列文章(四)】:

【自然語言處理:漫步條件隨機場系列文章(五)】:

1 條件隨機場(可以看作給定觀察值的馬爾科隨機場)

CRF是一種判別式無向圖模型

CRF試圖對多個變數在給定觀測值後的條件概率進行建模,具體來說,若令為觀察序列,為與之對應的標記序列,則CRF的目標是構建條件概率模型P(Y|X)。

注意標記變數y是結構型變數,如在自然語言處理的句子標註任務中,觀測資料為句子,標記為相應的詞性序列,具有線性序列結構,在語法分析中,輸出標記是語法樹,具有樹形結構。


令G=<V,E>表示結點與標記變數y中元素一一對應的無向圖,表示與結點v對應標記變數,n(v)表示結點v的領結點,若圖G的每一個變數 都滿足馬爾科夫性,即

 ,則(y,x)構成一個CRF。

上面形式化在第二章已經通過例項解析介紹過。

2 鏈式條件隨機場

如上面句子標註,因為現象應用中,對標記序列建模時,常有鏈式結構(具體鏈式結構前面有介紹

與馬爾科夫隨機場定義聯合概率概率的方式類似,CRF使用勢函式和圖結構上的團來定義條件概率P(y|x)給定觀察序列X,所謂團即單個標記變數{}以及相鄰標記變數選擇合適的勢函式,即形如:

的條件概率定義,其中與Q對應的勢函式,

為規範因子,實際中,往往Z不需要獲得精確值。

在CRF中,通過選用勢函式並引入特徵函式,條件概率定義如下:

如上引數在第二章有詳細講解。

特徵函式

句子標註為例的轉移特徵函式

表示第i個觀察值為“愛”時,相對的標記分別是B,I,其狀態特徵函式如下:

 

表示觀察值x為單字“愛”時,它對應的標註很可能為I

3 參考文獻

【1】 數學之美 吳軍 著

【2】 機器學習  周志華 著

【3】 統計自然語言處理 宗成慶 著(第二版)

【4】 統計學習方法(191---208) 李航

【5】 知乎 網路資源

4 自然語言相關係列文章

宣告:關於此文各個篇章,本人採取梳理扼要,順暢通明的寫作手法。系統閱讀相關書目和資料總結梳理而成,旨在技術分享,知識沉澱。在此感謝原著無私的將其匯聚成書,才得以引薦學習之用。其次,本人水平有限,權作知識理解積累之用,難免主觀理解不當,造成讀者不便,基於此類情況,望讀者留言反饋,便於及時更正。本文原創,轉載請註明出處基於機器學習角度談談CRF。

相關推薦

NLP基於機器學習角度談談CRF

作者:白寧超 2016年8月3日08:39:14 【摘要】:條件隨機場用於序列標註,資料分割等自然語言處理中,表現出很好的效果。在中文分詞、中文人名識別和歧義消解等任務中都有應用。本文源於筆者做語句識別序列標註過程中,對條件隨機場的瞭解,逐步研究基於自然語言處理方面的應用。成文主要源於自然語言處理

Docker基於例項專案的叢集部署Linux基礎命令

Linux系統作為優秀的企業級伺服器系統,有多處優點: 可靠的安全性 良好的穩定性 完善的網路功能 多使用者任務 豐富的軟體支援 跨平臺的硬體支援 目錄結構 我們可以通過以下結構瞭解Linux的目錄作用: 命令操作

NLP基於統計學習方法角度談談CRF

作者:白寧超 2016年8月2日13:59:46 【摘要】:條件隨機場用於序列標註,資料分割等自然語言處理中,表現出很好的效果。在中文分詞、中文人名識別和歧義消解等任務中都有應用。本文源於筆者做語句識別序列標註過程中,對條件隨機場的瞭解,逐步研究基於自然語言處理方面的應用。成文主要源於自然語言處理

總結基於機器學習方法的POI品類推薦演算法

來源:http://tech.meituan.com/category-recommend-base-ml.html 前言 在美團商家資料中心(MDC),有超過100w的已校準稽核的POI資料(我們一般將商家標示為POI,POI基礎資訊包括:門店名稱、品類、電話、地址、

轉載基於rasa的對話系統搭建

生成模型 efi 實體類 total ted twisted -m serve feature 文章介紹使用rasa nlu和 rasa core 實現一個電信領域對話系統demo,實現簡單的業務查詢辦理功能,更完善的實現需要

Docker基於例項專案的叢集部署部署專案例項介紹與搭建

部署專案簡介 我們要部署的專案是人人網的一個基於前後端分離的專案:renren-fast。 你可以在這裡對該專案進行下載,並對相關介紹文件進行了解: https://www.renren.io/community/project https://www.renren.io/guide

Docker基於例項專案的叢集部署安裝環境搭建

叢集 叢集具有三高特點: 高效能 高負載 高可用 現在的環境中,經常會用到叢集,如資料庫叢集。如,我們在主機上部署資料庫節點,形成叢集。 安裝環境與配置 在Docker中部署叢集,首先要安裝Linux環境,這裡我們使用VMware虛擬機

GitGit指令學習與其原理探究

這篇文章記錄我學習Git的過程中遇到的問題及對於某些問題的看法,如有錯誤,還望不吝賜教! ps:這篇文章介紹本地庫,下篇將介紹與遠端庫的互動。 Git是什麼 & 為什麼要有Git?    

NLP條件隨機場知識擴充套件延伸

作者:白寧超 2016年8月3日19:47:55 【摘要】:條件隨機場用於序列標註,資料分割等自然語言處理中,表現出很好的效果。在中文分詞、中文人名識別和歧義消解等任務中都有應用。本文源於筆者做語句識別序列標註過程中,對條件隨機場的瞭解,逐步研究基於自然語言處理方面的應用。成文主要源於自然語言處理

C++基於“stringstream+getline”實現字串分割split

哇... 最近在練習C++程式設計,遇到一個題目需要用到字串分割(類似python的split函式)。C++並沒有提供關於這個函式的功能,所以要自己實現。 就在此時,看到字串流 stringstream 這個高階的類,功能非常強大,如數字與字串之間的轉換。 本文只介紹基於“

實戰基於OpenCV的水錶字元識別OCR

[TOC] ![](https://img2020.cnblogs.com/blog/2039866/202006/2039866-20200613194435653-714003795.jpg) ## 1. USB攝像頭取圖 由於解析度越高,處理的畫素就越多,導致分析影象的時間變長,這裡,我們設

機器學習算法整理決策樹

outlook spa com width 選擇 clas .com img 衡量標準 決策樹的訓練與測試 如何切分特征(選擇節點) 衡量標準-熵 信息增益 決策樹構造實例 信息增益:表示特

Spring Boot幹貨系列:啟動原理解析

無法 time exp 記得 started 打印 ping 正文 exclude 前言 前面幾章我們見識了SpringBoot為我們做的自動配置,確實方便快捷,但是對於新手來說,如果不大懂SpringBoot內部啟動原理,以後難免會吃虧。所以這次博主就跟你們一起一步步揭開

機器學習實戰》筆記:樸素貝葉斯

4.1 基於貝葉斯決策理論的分類方法 樸素貝葉斯是貝葉斯決策理論的一部分,貝葉斯決策理論的的核心思想,即選擇具有最高概率的決策。若p1(x,y)和p2(x,y)分別代表資料點(x,y)屬於類別1,2的概率,則判斷新資料點(x,y)屬於哪一類別的規則是: 4.3 使用條件概率來分類

SpringMVC9.REST風格的CRUD實戰之新增操作

##注意!!! URI:emp 請求方式:GET 顯示效果 ####新增員工資訊 URI:emp 請求方式:POST 顯示效果:完成新增,重定向到 list 頁面。 ##二、介面分析 顯示頁面的URL都是emp,但是請求方式分別是GET和POS

機器學習筆試題精選

往期回顧: 機器學習是一門理論性和實戰性都比較強的技術學科。在應聘機器學習相關工作崗位時,我們常常會遇到各種各樣的機器學習問題和知識點。為了幫助大家對這些知識點進行梳理和理解,以便能夠更好地應對機器學習筆試包括面試。紅色石頭準備在公眾號連載一些機器

HexoHexo+Github構建個人部落格 :新增面板主題

一、選擇主題 選擇你自己喜歡的主題 參考: 二、配置主題 1.我選擇了hexo-theme-yilia這個主題,簡潔大方,功能齊全; 2.具體新增方法: 安裝 git clone https://github.com/litten/hexo-theme-yilia.

MybatisMyBatis對錶執行CRUD操作 MybatisMyBatis配置檔案的使用

  本例在【Mybatis】MyBatis配置檔案的使用(二)基礎上繼續學習對錶執行CRUD操作 使用MyBatis對錶執行CRUD操作   1、定義sql對映xml檔案(EmployeeMapper.xml) 1 <?xml version="1.0" encoding="UTF-8"

基於深度學習的視訊檢測 目標跟蹤

搭建環境 基於 darkflow (yolo-v2)和 sort/deep_sort 實現目標檢測與追蹤 安裝依賴 #sort $sudo pip install numba $sudo pip install matplotlib $

機器學習入坑指南:簡單線性迴歸

學習了「資料預處理」之後,讓我們一起來實現第一個預測模型——簡單線性迴歸模型。 一、理解原理 簡單線性迴歸是我們接觸最早,最常見的統計學分析模型之一。 假定自變數 xxx與因變數 yyy 線性相關,我們可以根據一系列已知的 (x,y)(x,y)(x,y) 資料