• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Word2Vec詞嵌入和雙向長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)的文本分類(lèi)實(shí)現(xiàn)

    2020-02-02 06:46:30王玲
    電子技術(shù)與軟件工程 2020年15期
    關(guān)鍵詞:詞頻語(yǔ)料梯度

    王玲

    (廣東郵電職業(yè)技術(shù)學(xué)院 廣東省廣州市 510630)

    文本分類(lèi)是指對(duì)文本集按照一定的分類(lèi)體系或標(biāo)準(zhǔn)進(jìn)行自動(dòng)分類(lèi)標(biāo)記。主要應(yīng)用于信息檢索、垃圾文本過(guò)濾、輿情檢測(cè)、情感分析等領(lǐng)域,一直是自然語(yǔ)言處理領(lǐng)域的研究熱點(diǎn)。它依據(jù)已經(jīng)被分類(lèi)標(biāo)注的文本訓(xùn)練集合,得到文本特征和文本類(lèi)別之間的關(guān)系模型,然后利用這種通過(guò)學(xué)習(xí)得到的模型對(duì)新的文本進(jìn)行類(lèi)別判斷。現(xiàn)階段文本分類(lèi)從基于知識(shí)的方法轉(zhuǎn)變?yōu)榛诮y(tǒng)計(jì)和機(jī)器學(xué)習(xí)的方法。

    當(dāng)前文本分類(lèi)主要面對(duì)的是兩方面問(wèn)題:

    (1)文本表示問(wèn)題,即怎樣高質(zhì)量的實(shí)現(xiàn)詞語(yǔ)的向量表達(dá);

    (2)文本分類(lèi)的訓(xùn)練模型問(wèn)題。

    本文對(duì)常用的模型進(jìn)行對(duì)比的基礎(chǔ)上,選擇了基于Word2Vec的詞嵌入模型的實(shí)現(xiàn),以及基于雙向長(zhǎng)短期記憶網(wǎng)絡(luò)(BiLSTM)的文本分類(lèi)神經(jīng)網(wǎng)絡(luò)模型。

    1 詞嵌入(word embedding)模型選擇

    文本語(yǔ)料是符號(hào)集合,計(jì)算機(jī)是無(wú)法處理符號(hào)集合的,詞嵌入就是將符號(hào)集合中的詞(或者更高粒度的句子等)映射為向量。這是NLP 工作中必要的部分。文本的語(yǔ)義表示能力決定著文本表示能力的強(qiáng)弱。

    1.1 文本表示技術(shù)的主要種類(lèi)

    (1)離散表示,有One-hot 表達(dá)、Bag of Words 詞袋表達(dá)、Tf-Idf 權(quán)值向量表達(dá)等等,他們各有缺陷,比如One-hot 表達(dá)忽略了詞頻信息,面臨著高維困境,并且忽略了詞語(yǔ)上下文關(guān)聯(lián);Tfidf 表達(dá)用詞頻來(lái)衡量文章中的一個(gè)詞的重要性不夠全面,而且無(wú)法體現(xiàn)詞在上下文的重要性??傮w上,離散表示方法,存在無(wú)法衡量詞向量之間的關(guān)系、詞向量維度膨脹、數(shù)據(jù)稀疏等缺陷。

    (2)神經(jīng)網(wǎng)絡(luò)表示,目前最常用的詞嵌入模型之一Word2Vec,是谷歌2013年提出的。Word2Vec 詞向量是深度學(xué)習(xí)在自然語(yǔ)言處理領(lǐng)域的應(yīng)用,它有兩種網(wǎng)絡(luò)結(jié)構(gòu),分別是連續(xù)詞袋模型CBOW(Continues Bag of Words)和跳字模型Skip-gram。

    CBOW 模型的訓(xùn)練輸入是某一個(gè)特征詞的上下文相關(guān)的詞對(duì)應(yīng)的詞向量,而輸出就是這個(gè)特定詞的詞向量。Skip-Gram 模型和CBOW 的思路相反,即輸入是特定的一個(gè)詞的詞向量,而輸出的是特定詞對(duì)應(yīng)的上下文詞向量。

    1.2 Word2Vec實(shí)現(xiàn)

    可以通過(guò)gensim、tensorflow、spark 等實(shí)現(xiàn)Word2Vec。這里以gensim 為例實(shí)現(xiàn)Word2Vec 詞嵌入訓(xùn)練。

    # 詞向量訓(xùn)練

    #text 是經(jīng)過(guò)文本預(yù)處理的語(yǔ)料(對(duì)于中文要首先經(jīng)過(guò)分詞,去除停用詞、低頻詞)

    #wlen 是詞向量上下文的距離設(shè)定值

    #size 是詞向量的維度設(shè)定值

    w2v_model=Word2Vec(sentences=text,window=win_len,size=wlen,min_count=1)

    # 存儲(chǔ)所有詞語(yǔ)

    vocab_list=[word for word,_ in w2v_model.wv.vocab.items()]

    # 生成一個(gè)全零數(shù)組用于后續(xù)存儲(chǔ)詞向量,長(zhǎng)度加1,用于表示新詞

    data=np.zeros([len(vocab_list)+1,w2v_model.vector_size])

    for i in range(len(vocab_list)):

    data[i+1]=w2v_model.wv[vocab_list[i]]# 存儲(chǔ)某個(gè)詞的詞向量

    # 將數(shù)組轉(zhuǎn)為DataFrame,這里設(shè)置一個(gè)全零行,用于匹配不存在的新詞

    data_frame=pd.DataFrame(data,index=['0']+ vocab_list)

    # 保存詞向量

    data_frame.to_csv('embedding_matrix.csv',index=None)

    創(chuàng)建Word2Vec 模型時(shí),主要的參數(shù)有:

    sentences:要訓(xùn)練的語(yǔ)料列表;

    window:詞向量上下文的距離,默認(rèn)為5;

    size:詞向量的維度,默認(rèn)值是100;

    min_count:計(jì)算詞向量的詞語(yǔ)的最小詞頻,默認(rèn)是5。如果所有詞語(yǔ)都需要參與訓(xùn)練,就設(shè)置為1;

    sg:如果是0,則是CBOW 模型,是1 則是Skip-Gram 模型,默認(rèn)是0;

    iter:隨機(jī)梯度下降法中迭代的最大次數(shù),默認(rèn)是5。語(yǔ)料量大的情況下,可以增大這個(gè)值。

    可以在計(jì)算量和訓(xùn)練效果之間,權(quán)衡參數(shù)的設(shè)置值。

    2 文本分類(lèi)模型訓(xùn)練

    2.1 文本分類(lèi)模型選擇

    CNN 可以提取句子特征,但缺乏學(xué)習(xí)順序相關(guān)性的能力。近年來(lái),對(duì)時(shí)間序列敏感的問(wèn)題,RNN 比較適合。

    循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)是一種對(duì)序列型數(shù)據(jù)進(jìn)行建模的深度神經(jīng)網(wǎng)絡(luò)模型。比如某個(gè)單詞的含義會(huì)因?yàn)樯舷挛牡膬?nèi)容不同而不同,RNN 就適合解決這類(lèi)問(wèn)題。

    但是,在RNN 中,常用的激活函數(shù)(sigmoid 函數(shù)、tanh 函數(shù)),在求梯度的過(guò)程中,隨著時(shí)間序列的不斷深入,會(huì)導(dǎo)致梯度越來(lái)越小直到接近于 0,這就會(huì)引起梯度消失現(xiàn)象。梯度消失就意味著那一層的參數(shù)再也不更新了,則模型的訓(xùn)練毫無(wú)意義。Relu 函數(shù)一定程度上可以解決梯度消失的問(wèn)題,但是容易引起梯度爆炸的問(wèn)題。

    為了避免RNN 模型的缺陷,一種由長(zhǎng)短期記憶單元LSTM 組成的RNN(longshort-term memory,LSTM)的循環(huán)神經(jīng)網(wǎng)絡(luò)架構(gòu)得到廣泛的應(yīng)用。LSTM 增加了對(duì)過(guò)去狀態(tài)的過(guò)濾,從而可以選擇哪些狀態(tài)對(duì)當(dāng)前更有影響,而不是簡(jiǎn)單的選擇最近的狀態(tài)。

    LSTM 只能夠捕獲前向的上下文信息,隨著深度學(xué)習(xí)的發(fā)展,可以分別捕獲前向和后向的上、下文信息的雙向長(zhǎng)短期記憶網(wǎng)絡(luò)(bidirectional long short-tem memory,BiLSTM)出現(xiàn)了,BiLSTM 能得到更好的文本表示。近幾年LSTM 和BiLSTM 在文本分類(lèi)領(lǐng)域取得很多的進(jìn)展。

    2.2 文本分類(lèi)模型訓(xùn)練

    這里基于tensorflow 搭建文本分類(lèi)的RNN 神經(jīng)網(wǎng)絡(luò)模型:

    2.3 模型優(yōu)化

    首先,沒(méi)有進(jìn)行詞嵌入預(yù)訓(xùn)練,在Embedding 層,沒(méi)有設(shè)置weights 參數(shù),那么詞嵌入權(quán)值矩陣則是隨機(jī)初值。而當(dāng)用語(yǔ)料中的詞語(yǔ)進(jìn)行單獨(dú)的預(yù)訓(xùn)練之后,將預(yù)訓(xùn)練得到的詞向量用于此詞嵌入層,經(jīng)過(guò)實(shí)際對(duì)比,采用預(yù)訓(xùn)練之后,模型精度顯著提升。

    模型可以通過(guò)調(diào)整以下主要參數(shù),進(jìn)行性能和精度的調(diào)整:將詞向量預(yù)訓(xùn)練的window 增大,可以將更長(zhǎng)范圍的上下文詞語(yǔ)考慮進(jìn)來(lái),但是并不是越大越好,要根據(jù)實(shí)際情況進(jìn)行調(diào)整,并且會(huì)增加計(jì)算量;網(wǎng)絡(luò)設(shè)置,全連接層的個(gè)數(shù),每個(gè)層的神經(jīng)元個(gè)數(shù)。在訓(xùn)練時(shí)候,訓(xùn)練集和驗(yàn)證集的占比,增加訓(xùn)練集的占比,使得訓(xùn)練更加充分;將詞向量矩陣設(shè)為在模型訓(xùn)練過(guò)程中是可調(diào)試的形式(通過(guò)trainable 設(shè)置)等。通過(guò)調(diào)整epochs 和batch_size 參數(shù),控制模型訓(xùn)練過(guò)程中的計(jì)算負(fù)荷。

    3 總結(jié)

    文本分類(lèi)是自然語(yǔ)言處理領(lǐng)域的研究熱點(diǎn)。當(dāng)前重點(diǎn)側(cè)重在兩個(gè)方面,一是詞向量模型的研究,二是文本分類(lèi)深度神經(jīng)網(wǎng)絡(luò)分類(lèi)模型的研究。本文采用基于Word2Vec 的詞嵌入模型和BiLSTM 雙向長(zhǎng)短期記憶模型,實(shí)現(xiàn)對(duì)文本的分類(lèi)模型訓(xùn)練,以及模型優(yōu)化,對(duì)比其他主要模型,當(dāng)前選擇模型的準(zhǔn)確率是相對(duì)較高的。

    猜你喜歡
    詞頻語(yǔ)料梯度
    基于詞頻分析法的社區(qū)公園歸屬感營(yíng)建要素研究
    園林科技(2021年3期)2022-01-19 03:17:48
    一個(gè)改進(jìn)的WYL型三項(xiàng)共軛梯度法
    一種自適應(yīng)Dai-Liao共軛梯度法
    一類(lèi)扭積形式的梯度近Ricci孤立子
    基于語(yǔ)料調(diào)查的“連……都(也)……”出現(xiàn)的語(yǔ)義背景分析
    華語(yǔ)電影作為真實(shí)語(yǔ)料在翻譯教學(xué)中的應(yīng)用
    詞頻,一部隱秘的歷史
    云存儲(chǔ)中支持詞頻和用戶(hù)喜好的密文模糊檢索
    《苗防備覽》中的湘西語(yǔ)料
    國(guó)內(nèi)外語(yǔ)用學(xué)實(shí)證研究比較:語(yǔ)料類(lèi)型與收集方法
    新民市| 武穴市| 元江| 松溪县| 赤峰市| 广西| 迭部县| 荣成市| 景谷| 武义县| 酒泉市| 通辽市| 邵阳市| 徐水县| 齐河县| 扬中市| 衡水市| 崇阳县| 吉隆县| 淅川县| 谷城县| 咸阳市| 中江县| 聂荣县| 宁陕县| 凤山县| 临城县| 连城县| 馆陶县| 青铜峡市| 拉孜县| 岑巩县| 喜德县| 舞阳县| 读书| 乐都县| 湟中县| 中方县| 芷江| 繁昌县| 阜平县|