日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

NLP - Log-linear Models

發(fā)布時(shí)間:2025/7/14 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NLP - Log-linear Models 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1.The Language Modeling Problem

? ? ? ? 現(xiàn)在拋開我們之前講的馬爾科夫模型的假設(shè),對于一門語言的定義,肯定不能簡單依賴于每個(gè)單詞的前兩個(gè)單詞,這是常識。比如英語中的動詞形態(tài)就和主語有關(guān)。那么我會怎么考慮一個(gè)語言模型呢,很可能是下面這樣一個(gè)情況: ? ? ? ? ? ? ? ? ? ? 我們之前講的Trigram模型也可以用這樣的形式來表示: ? ? ? ? ? ? ? ? ? ? ? 那么我們要用我們增加的一些定義,一種naive的方法就是選取一些參數(shù)來生成模型: ? ? ? ? ? ? ? ? 可以想象,這是很難駕馭的。但是我們可以用這樣的模型來理論上地表示一些例子。 ? ? 而下面要講的Log-Liner Model就可以加入這些信息,并使其可操作。

2.Log-linear models

? ? ?2.1 Define

? ? ? 我們首先用對Language Model的描述來引入log-linear model,Log-linear model其實(shí)是可以引入到很多問題里面的。 ? ? ?這里我先作如下定義: ? ? ? ??? ?? ? ? ?然后我們定義feature(參數(shù)),一個(gè)參數(shù)就是一個(gè)函數(shù),把x,y映射到一個(gè)具體的值
? ? ? ?
? ? ? 一般來講,我們設(shè)定一個(gè)參數(shù)值選擇為binary的值,要么為1,要么為0 ? ? ? 然后假設(shè)我們有m個(gè)不同的參數(shù),對于一組(x,y),我們就有一個(gè)長度為m的參數(shù)值向量: ? ? ? ? ? ? ? 比如在language model中我們有這樣一系列的參數(shù): ? ? ? ? ? 在實(shí)際中,這些參數(shù)的數(shù)量是非常多的,為了方便,我們常常用簡便的方式來表示一些類似的參數(shù): ? ? ? ? ? ??
? ? ? ? ?其中N(u,v,w)把每一組u,v,w映射為一個(gè)不同的整數(shù),這一組參數(shù)的數(shù)量就是不同u,v,w的數(shù)量,其實(shí)這也就是trigram model的定義,只不過我們用另一種方式表達(dá)出來而已。

? ? ? 2.2 Result

? ? ? ? ? 這樣我們就得到了一組m個(gè)參數(shù),同時(shí)我們再定義一個(gè)長度為m的向量v,然后我們就可以把(x,y)映射為一個(gè)“score”(得分)了: ? ? ? ? ? ? ? ? ? ? 其實(shí)就是數(shù)學(xué)中的向量的點(diǎn)乘。

? ? 2.3 Further Define

? ? ? ? 我們接下來再進(jìn)一步用log-linear model來表示我們的Language model: ? ? ? ? 我們有一個(gè)X是input空間,Y是一個(gè)有限的詞語空間,我們使: ? ? ? ? ? ? ?? ? ? ? ? ?這就是我們的log-linear模型下的語言模型了,注意e的指數(shù)其實(shí)就是我們上面所說的"score" ? ? ? ? ?為什么叫l(wèi)og linear 模型呢?我們對兩邊取log看一下: ? ? ? ? ? ? ? ? ? ? ?一目了然了是吧

? ? 2.4 for other problem

? ? ? ? ? 除了Language Model,log liner的方法還可以用到其他問題上,比如說tagging problem(這個(gè)問題的描述在之前的日志有講:點(diǎn)擊打開) ? ? ? ? ? 我們要做的是重新設(shè)計(jì)feature函數(shù),以及改變一下 history的的定義(也就是上面的x),上面我們是使x=w1,w2…wi-1 ? ? ? ? ? 在tagging problem中我們使: ? ? ? ? ??
? ? ? ? ?這樣就是 tagging problem 的log linear模型了,所以說log linear可以應(yīng)用于比較廣的范圍。下面我們會詳細(xì)講 Tagging Problem中的log-linear model

3.Maximum-Likelihood Estimation for Log-liner Model

? ? 3.1 introduction

? ? ? ? ?下面介紹下怎么從訓(xùn)練數(shù)據(jù)中得到參數(shù),選擇的方法叫做ML(最大似然估計(jì)) ? ? ? ? ?我們有的就是一系列的x和y ? ? ? ? ?首先選擇v: ? ? ? ? ? ?? ? ? ? ? ?其中L(v)為: ? ? ? ? ? ? ? ?? ? ? ? ? ?它叫做似然函數(shù)。 ? ? ? ? ?有了似然函數(shù),我們就可以選擇一種叫做Gradient Ascent的方法,也就是求使L函數(shù)最大的v ? ? ? ? ?這個(gè)其實(shí)就是梯度上升,就是在L上對v求導(dǎo),得到梯度,然后一步步用梯度趨近最大值(這其實(shí)和梯度下降是相似的,具體可以見這里的部分內(nèi)容) ? ? ? ? ? ? ? ? ? ? ? ? ?然后我們每次迭代使v加上 (β乘以這個(gè)導(dǎo)數(shù)),β是學(xué)習(xí)時(shí)選擇的參數(shù),叫做學(xué)習(xí)速率。

? ?3.2?Regularization

? ? ? ? ? 如果L只是簡單地上面那種形式,算法很可能會過擬合,一些v會變成非常大來更好地增大似然函數(shù),但這種增大是畸形的,叫做overfitting ? ? ? ? ? 解決的方法很多,最簡單的一種就是加入regularization的部分,也就是: ? ? ? ? ?? ? ? ? ? ? 這樣的話如果v過大就會招致penalty ? ? ? ? ? 那么: ? ? ? ? ?

########下面的課程相對細(xì)講了log linear model對于Tagging和Parse問題的方案,我選簡單的寫一個(gè)========= ########其實(shí)模型都是相似的===============================================================

4、Log-Linear Models for History-based Parsing

4.1回顧下Log-Linear Taggers

? ? ? ? ? 好吧,這段我懶了,沒有寫log linera tagger的內(nèi)容,所以在這補(bǔ)充總結(jié)一下,其實(shí)也不是很復(fù)雜 ? ? ? ? ?? ? ? ? ? ? 大概就是這樣的一個(gè)模型,可以看出其實(shí)就是2.4的內(nèi)容。

4.2?History-Based Models

? ? ? ? ?有了tag以后,我們可能還會有需求去求的一個(gè)parse,也就是語法樹,一步步來。 ? ? ? ? ?假設(shè)我們能夠?qū)⒁活w樹表示為一系列的decisions,假設(shè)為m個(gè),我們有: ? ? ? ? ? ? ? ? ? ? ?注意這里的m不一定是句子的長度,我們可以做很多decision來表示句子樹的結(jié)構(gòu) ? ? ? ? 然后我們定義: ? ? ? ? ? ? ? ?表示這個(gè)句子 ? ? ? ? 那么對于一棵樹的probability就是: ? ? ? ? ? ?? ? ? ? ? Over------就這么簡單,關(guān)鍵是我們要怎么來設(shè)計(jì)我們的decision ? ? ? ? 注意和4.1對比一下,我們?nèi)绻裠ecision換成tag的內(nèi)容,就變成了Tagger的問題

4.3Ratnaparkhi's Parser:

? ? ? ?再繼續(xù)我們的內(nèi)容之前,先放一個(gè)例子在這,好繼續(xù)描述: ? ? ? ? ? ? ? ?下面主要講的是一個(gè)叫做Ratnaparkhi的人的model,好吧,又是一個(gè)90后的model…… ? ? ?他的模型主要分三層:

1. Part-of-speech tags?

? ? ? ? ? ? ? ? ? ? ? ? 這部分就是簡單的tag的model,每個(gè)decision就是一個(gè)tag的選擇 ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ??

2. Chunks ??

? ? ? ? ? ? ? ? ? ? ?Chunks其實(shí)就是短語部分的模型: ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? 也就是上面那一排tag,其正式點(diǎn)的定義就是:所有兒子都是?Part-of-speech tags的節(jié)點(diǎn) ? ? ? ? ? ? ? ? ? ? ? 如何表示它的decision呢?我們用SART和JOIN來表示 ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? 一目了然?再加上第一層的模型,現(xiàn)在我們的decision已經(jīng)有2*n個(gè)了: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

?3. Remaining structure

? ? ? ? ? ? ? ? ? ? ? Remaining structure,我們看一下這顆tree還有什么remaining了呢?更高層的樹的結(jié)構(gòu) ? ? ? ? ? ? ? ? ? ? ? 我們將用Check來在第二層的基礎(chǔ)上來表示這棵樹:Check=NO 或者 YES ? ? ? ? ? ? ? ? ? ? ? 首先我們跑一次第二層,Check一直設(shè)置為NO,不增加什么操作,直到: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 我們設(shè)置Check=YES,那么發(fā)生奇跡的時(shí)刻到了,看到?jīng)],一組Start和Join消失了,取而代之的是一個(gè)Chunk:PP ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? 我們再繼續(xù),CHECK繼續(xù)為NO: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 看到?jīng)],在選擇Check為YES的時(shí)候就把上一個(gè)start的部分合并成一個(gè)符號!!! ? ? ? ? ? ? ? ? ? ?這樣繼續(xù)到最后,我們就得到了最終的decision: ? ? ? ? ? ? ? ? ? ? ? ?

4.4?Applying a Log-Linear Model

? ? ? ? ? ? ? ? 其實(shí)比較簡單,就是di作為輸入,而<d1…di-1,S>作為history ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 其中A表示所有可能的action(decision) ? ? ? ? ? ? ? ? 那么現(xiàn)在還有一個(gè)最大的問題,怎么設(shè)計(jì)我們的 f ?!! ? ? ? ? ? ? ? ?Ratnaparkhi的模型中主要還是關(guān)聯(lián)了decision的部分,我們同樣可以對decision進(jìn)行trigram或者bigram模型的設(shè)計(jì),這是和以前的定義一樣的,然后將各部分混雜起來就會得到很多的f了。

4.5 Search Problem

? ? ? ? ? ? 在POS tagging問題中我們能夠使用Viterbi algorithm的原因是我們有如下假設(shè): ? ? ? ? ?? ? ? ? ? ? ? 但是現(xiàn)在的decision可能依靠之前的任意一個(gè)decision,動態(tài)規(guī)劃是沒轍了。。。。 ? ? ? ? ? ? 這一部分會在下一周的課程講到。^_^

轉(zhuǎn)載于:https://www.cnblogs.com/nlpowen/p/3613578.html

總結(jié)

以上是生活随笔為你收集整理的NLP - Log-linear Models的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。