Deep Learning(深度學習) 學習筆記(四)

神經概率語言模型,內容分為三塊:問題,模型與準則,實驗結果。[此節內容未完待續...]


1,語言模型問題

? ? ? 語言模型問題就是給定一個語言詞典包括v個單詞,對一個字串做出二元推斷,推斷其是否符合該語言表達習慣。也就是的取值為0或者為1。

? ? ? ?概率語言模型放松了對取值的限制,讓其在0~1之間取值(語言模型 v.s 概率語言模型),而且全部的字串的概率之和為1。維基百科對于概率語言模型的解釋為:是借由一個概率分布,而指派概率給字詞所組成的字串。可是須要注意的是直接對進行求其概率分布是不現實的,由于理論上這樣的字串數量是無限的。直接求其概率分布會導致維度災難。

? ? 為了解決這個問題,首先引入鏈式法則(chain rule),覺得字串中第i個字符出現的概率是由其前面i-1個字符決定的。這樣就有例如以下公式:?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? 可是,有了這個公式還是太復雜了。繼續引入如果簡化公式,覺得字串中第i個字符出現的概率是由其前面n-1個字符決定(也就是如果)的。這樣公式就繼續被簡化:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? 模型如今就變得非常easy了,就是計算條件概率。也就是須要計算給定字串后,字典中的每一個字出現的概率


2. 模型與準則

??2.1 數據 給定一些標記號的樣本.

? 2.2 模型

??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 圖1. 模型圖解

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 圖片來自:http://licstar.net/archives/328

? ? 建模步驟

? ? 2.2.1 查表:將輸入的單詞,通過查表(圖1中Table look-up過程)將單詞映射為m維的詞向量。此處的所查的表并非給定的,是在模型學習中獲得的附加產物(也就是word2vec產生的那些向量玩意)。

? ? 2.2.2 線性變換:將2.2.1中的n-1個m維度的向量通過首尾拼接的方式線性變換成為(n-1)*m維的向量。也就是在中間那個tanh層輸入處(以下)全部分向量C(w)合并為一個大的維度為(n-1)*m的向量[Mikolov的RNNLM在此做出改變:不只只看n-1個單詞的信息,而是看該詞前面全部的單詞信息]。

? ? 2.2.3?非線性變換:在中間那個tanh層處進行非線性變換。這里須要的是一個變換矩陣和偏置矩陣。也就是對于中間那一層(tanh所在的那一層),該層的輸入是(n-1)*m的向量,輸出是。經過線性變換后,先前的(n-1)*m維的向量成為了h維的向量。

? ? 2.2.4 輸出處理:在最后一層(softmax層)進行處理輸出。這里須要一個變換矩陣和一個偏置矩陣。最后輸出就是。注意到最后輸出的是一個v維度的向量,和我們的第一節中詞典D的維度是一致的。向量中每個維度相應的實數就是輸出該單詞的概率。

? ? ?

? ? 2.3 準則

? ? 對全部的訓練樣本,其準則為使取最小,此處為正則項。能夠使用梯度下降法進行求取。

??

? ? 模型中須要人工設定的參數是模型的元數n,詞向量的維度m,隱層的輸出維度h。

? ? 須要模型優化的參數:變換矩陣W和H,偏置矩陣d和b,查表所使用的詞向量表都是須要優化的參數,也就是我們所求取的參數。

??

? ? 3.實驗結果

? ? 語言模型困惑度。模型困惑度是用來評價不同的語言模型好壞的一種方法(另一種方法是Word Error Rate,Mikolov的博士論文《Statistical Language Models based on Neural Networks》博士論文對這兩種方法有介紹和比較)。給定測試數據集合,模型在該測試集合上的困惑度越小越好。

? ? 測試集合一:

? ? Brown Corpus,共計118w單詞,當中80w訓練,20w驗證,其它18w作為測試集合。

? ? 在n=5,m=30,h=100時候NNLM的PPL為270。該測試集合眼下最好的n-gram模型(n=3)的PPL為312。設置權重進行模型融合后的PPL為252。

? ? 測試集合二:

? ? AP News,共計1600w詞,當中1400w訓練,100w驗證,其它100w作為測試集合。

? ??在n=6,m=100,h=109時候NNLM的PPL為109。該測試集合眼下最好的n-gram模型的PPL為117。

? ?

網上學習資料:

關于神經網絡語言模型的博客:點擊打開鏈接

Mikolov的博士論文《Statistical Language Models based on Neural Networks》 關于n-gram語言模型的評價是簡單有用(N-gram models are today still considered as state of the?art not because there are no better techniques, but because those better techniques are?computationally much more complex, and provide just marginal improvements, not critical?for success of given application.),模型的關鍵就是選擇n值和平滑技術。其固有缺點例如以下:

? ? ? ? 第一,n-gram模型的n值無法取大。由于模型n-gram片段的數量會隨著n值的變大指數增長。這一點就決定了n-gram模型無法有效的利用更長的上下文信息。特殊的,當被提供海量訓練語料時,n-gram模型也無法有效捕捉一些長距離的語言現象。

? ? ? ?第二,即使n值能夠取得比較大,n-gram無法有利用長距離的上下文信息。比如,有一個句子The sky above our heads is bleu. 這句話里面單詞 bleu對單詞sky有著非常強的依賴關系,無論這兩個單詞中間插入多少變量都不會破壞這樣的關系。比如The sky this morning was bleu. 可是對n-gram模型,即使放開n值的限制,取一個較大的n值,也無法有效地捕捉這樣的長距離的語言現象。

? ? ? ? 第三,n-gram模型無法高效的對相似的詞語進行辨別。比如:訓練語料中存在Party will be on Monday.Party will be on Tuesday. 模型無法對類似Party will be on Friday.的句子賦予較高的概率。盡管我們人可以清楚知道“Monday”,"Tuesday","Friday"這些是類似的概念,可是只對字面進行建模的n-gram無法辨別。



轉載于:https://www.cnblogs.com/mengfanrong/p/3933759.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/258258.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/258258.shtml
英文地址,請注明出處:http://en.pswp.cn/news/258258.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Java Virtual Machine

后續完善轉載于:https://www.cnblogs.com/fight-tao/p/4849167.html

selenium 鼠標懸浮_處理Selenium3+python3定位鼠標懸停才顯示的元素

先給大家介紹下Selenium3python3--如何定位鼠標懸停才顯示的元素定位鼠標懸停才顯示的元素,要引入新模塊# coding:utf-8from selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsdriver webdriver.Firefox()driver.get(&q…

JavaScript 運行機制

JavaScript 運行機制 閱讀目錄 一、為什么JavaScript是單線程?二、任務隊列三、事件和回調函數四、Event Loop五、定時器六、Node.js的Event Loop七、關于setTimeout的測試一、為什么JavaScript是單線程? JavaScript語言是單線程,也就是說&am…

mysql 時間 本周 本月_mysql查詢當天、本周、上周、本月、上月信息

今天select * from 表名 where to_days(時間字段名) to_days(now());昨天SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) – TO_DAYS( 時間字段名) < 17天SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) < date(時間字段名)近30天SELECT * FROM 表名 wher…

android自定義倒計時控件示例

這篇文章主要介紹了Android秒殺倒計時自定義TextView示例&#xff0c;大家參考使用吧 自定義TextView控件TimeTextView代碼&#xff1a; 復制代碼 代碼如下:import android.content.Context;import android.content.res.TypedArray;import android.graphics.Paint;import andro…

Spring Cloud構建微服務架構:服務消費(Ribbon)【Dalston版】

通過上一篇《Spring Cloud構建微服務架構&#xff1a;服務消費&#xff08;基礎&#xff09;》&#xff0c;我們已經學會如何通過LoadBalancerClient接口來獲取某個服務的具體實例&#xff0c;并根據實例信息來發起服務接口消費請求。但是這樣的做法需要我們手工的去編寫服務選…

檢測是否點擊到精靈

需要給每個精靈設置tag.可以用枚舉 bool GE::GamePass::ccTouchBegan( cocos2d::CCTouch *pTouch, cocos2d::CCEvent *pEvent ) { const int iButtonCount 2; const int iButtonTags[iButtonCount] { GamePass_btn_share, GamePass_btn_return }; for(int i 0; i < iButt…

從gitlab上拉代碼_從gitlab上拉取代碼并一鍵部署

一、gitlab安裝GitLab是一個利用Ruby on Rails開發的開源應用程序&#xff0c;實現一個自托管的Git項目倉庫&#xff0c;可通過Web界面進行訪問公開的或者私人項目。GitLab擁有與Github類似的功能&#xff0c;能夠瀏覽源代碼&#xff0c;管理缺陷和注釋。可以管理團隊對倉庫的訪…

LPWA技術:發展物聯網的最佳選擇

物聯網時代的物物相連將會使百億以上物體連入網絡&#xff0c;這對傳統上的兩種通信技術&#xff0c;即近距離無線接入和移動蜂窩網提出了更高的要求。事實上&#xff0c;目前&#xff0c;用于物聯網發展的通信技術正在全球范圍內開發&#xff0c;低功耗廣域網通信技術(Low Pow…

上傳文件大小限制,webconfig和IIS配置大文件上傳

IIS6下上傳大文件沒有問題&#xff0c;但是遷移到IIS7下面&#xff0c;上傳大文件時&#xff0c;出現HTTP 404錯誤。 IIS配置上傳大小&#xff0c;webconfig <!-- 配置允許上傳大小 --><httpRuntime maxRequestLength"1997151" useFullyQualifiedRedirectU…

產品管理流程

轉載于:https://www.cnblogs.com/candle806/p/4860841.html

如何根據灰度直方圖計算標準差_如何根據電器功率計算電線的粗細?

一般來說&#xff0c;測算電線的粗細&#xff0c;需要根據功率計算電流&#xff0c;根據電流選擇導線截面&#xff0c;根據導線的截面&#xff0c;導線或電纜的型號查廠家的該型號的導線電纜的直徑。這里就涉及了&#xff1a;電線粗細與功率之間的關系計算&#xff1b;導線截面…

解惑煙草行業工控系統如何風險評估

上周五下午&#xff0c;威努特工控安全聯合創始人 趙宇 先生&#xff0c;帶來了一場關于“工控系統的風險評估”的技術講座。此次近200注冊報名的朋友&#xff0c;來自各大高校、國企、外企、測評中心、安全廠商、大型集成商以及大型IT科技企業、安全實驗室等。 煙草企業調研參…

ORACLE union order by

select * from ( select a.id,a.oacode,a.custid,a.custname,a.xsz,a.salename,a.communicationtheme,a.communicationproperty,a.communicationtime,a.productmanager,a.creator,a.createdate from technology_flow a where a.oastate正常結束 union select b.id,b.oacode,b…

UVa 11806 Cheerleaders

題意&#xff1a;m行n列的矩形網格放k個相同的石子&#xff0c;要求第一行最后一行第一列最后一列都必須有石子&#xff0c;問有多少種放法 A為第一行沒有石子的方案數&#xff0c;BCD依此類推&#xff0c;全集為S 如果沒有任何要求的話&#xff0c;放法數應該是C(rc, k) 解法中…

為什么說一站式移動辦公SaaS平臺一定是未來!

摘要&#xff1a;移動辦公SaaS之間的核心競爭不在于比拼技術&#xff0c;而在于誰更好地與企業管理和文化相互融合&#xff0c;給企業帶來更加年輕、更加高效的工作方式&#xff0c;實現了企業組織的互聯網化。 沒有哪個企業愿意當諾基亞&#xff0c;“并沒有做錯什么&#xff…

server sql 將出生日期轉為年齡_在sql server表中有一個出生日期字段我怎么才能在當前年份改變時自動更新年齡字段...

先說明下identity(1,1)&#xff1a;自動1foreign key 外鍵語法create database ztxuse ztxCreate Table QAUser--baidu用戶資料(Id int Primary Key not null identity(1,1),--自動編號,也同時用于對用戶的標示符QA_name varchar(20),--用戶名Sex char(2),--或者使用bit類型,但…

MySQL關聯left join 條件on與where不同

以下的文章主要講述的是MySQL關聯left join 條件on與where 條件的不同之處&#xff0c;我們現在有兩個表&#xff0c;即商品表(products)與sales_detail(銷售記錄表)。我們主要是通過這兩個表來對MySQL關聯left join 條件on與where 條件的不同之處進行講述。 products: pid pna…

自動裁剪圖片

自動裁剪商品圖片View Code執行裁剪指定目錄商品圖片動作///<summary> ///執行指定目錄商品圖片動作 ///</summary> public static void FindPictureDoCutIt(object o) {string filePatho.ToString();try{DirectioryInfo fatherFolder new DirectioryInfo(filePat…

32位oracle_oracle 性能調優

pool&#xff0c;sga&#xff0c;pga的配置 物理內存16G在調整SGA前&#xff0c;先看下服務器操作系統是32位還是64位的&#xff0c;如果是32位的&#xff0c;則SGA最大不能超過1.7G&#xff0c;如果是64位的&#xff0c;則不能超過4G。基本分配原則&#xff0c;db_block_buffe…