日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

【数据竞赛】NLP竞赛中99%上升的技巧!

發(fā)布時(shí)間:2025/3/12 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【数据竞赛】NLP竞赛中99%上升的技巧! 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作者:杰少

強(qiáng)化Transformer的語(yǔ)意表示的策略

簡(jiǎn)介

在諸多NLP等的問(wèn)題中,我們會(huì)使用預(yù)訓(xùn)練模型并在其最后一層進(jìn)行微調(diào),例如我們就會(huì)經(jīng)常采用下面的微調(diào)方式:

  • 在Transformer之后為下游任務(wù)或模型的后面部分添加一個(gè)額外的輸出層,并使用該模型最后一層的表示作為默認(rèn)輸入。

然而,由于Transformer經(jīng)常是多層的結(jié)構(gòu),不同的層可以捕獲到不同的表示信息。可以學(xué)習(xí)到更為豐富的語(yǔ)言信息層次,即:

  • 最下層的表面特征;

  • 中間層的句法特征;

  • 更高層的語(yǔ)義特征。

BERT的作者通過(guò)將不同的向量組合作為輸入特征輸入到命名實(shí)體識(shí)別任務(wù)的BiLSTM,并觀察結(jié)果F1分?jǐn)?shù),來(lái)測(cè)試單詞嵌入的策略。最后四層的連接產(chǎn)生了最好的結(jié)果

也就是說(shuō),如果我們處理NLP的相關(guān)問(wèn)題時(shí):

  • 我們應(yīng)該將后續(xù)的多層輸出結(jié)果一起進(jìn)行拼接用作后續(xù)的輸入可以拿到比任何某層更好的效果。

示例代碼

  • 代碼摘自:https://towardsdatascience.com/my-first-gold-in-kaggle-tips-and-tricks-for-an-nlp-competition-cec48dda5895

class?AttentionHead(nn.Module):def?__init__(self,?h_size,?hidden_dim=512):super().__init__()self.W?=?nn.Linear(h_size,?hidden_dim)self.V?=?nn.Linear(hidden_dim,?1)def?forward(self,?features):att?=?torch.tanh(self.W(features))score?=?self.V(att)attention_weights?=?torch.softmax(score,?dim=1)context_vector?=?attention_weights?*?featurescontext_vector?=?torch.sum(context_vector,?dim=1)return?context_vectorclass?CLRPModel(nn.Module):def?__init__(self,transformer,config):super(CLRPModel,self).__init__()self.h_size?=?config.hidden_sizeself.transformer?=?transformerself.head?=?AttentionHead(self.h_size*4)self.linear?=?nn.Linear(self.h_size*2,?1)self.linear_out?=?nn.Linear(self.h_size*8,?1)def?forward(self,?input_ids,?attention_mask):transformer_out?=?self.transformer(input_ids,?attention_mask)all_hidden_states?=?torch.stack(transformer_out.hidden_states)cat_over_last_layers?=?torch.cat((all_hidden_states[-1],?all_hidden_states[-2],?all_hidden_states[-3],?all_hidden_states[-4]),-1)cls_pooling?=?cat_over_last_layers[:,?0]???head_logits?=?self.head(cat_over_last_layers)y_hat?=?self.linear_out(torch.cat([head_logits,?cls_pooling],?-1))return?y_hat

小結(jié)

在NLP所有用到預(yù)訓(xùn)練模型的問(wèn)題中,我們都應(yīng)該嘗試將最后幾層一起拼接使用的策略。

參考文獻(xiàn)

  • http://jalammar.github.io/illustrated-bert/

  • https://towardsdatascience.com/my-first-gold-in-kaggle-tips-and-tricks-for-an-nlp-competition-cec48dda5895

  • 往期精彩回顧適合初學(xué)者入門(mén)人工智能的路線及資料下載機(jī)器學(xué)習(xí)及深度學(xué)習(xí)筆記等資料打印機(jī)器學(xué)習(xí)在線手冊(cè)深度學(xué)習(xí)筆記專輯《統(tǒng)計(jì)學(xué)習(xí)方法》的代碼復(fù)現(xiàn)專輯 AI基礎(chǔ)下載黃海廣老師《機(jī)器學(xué)習(xí)課程》視頻課黃海廣老師《機(jī)器學(xué)習(xí)課程》711頁(yè)完整版課件

    本站qq群955171419,加入微信群請(qǐng)掃碼:

    總結(jié)

    以上是生活随笔為你收集整理的【数据竞赛】NLP竞赛中99%上升的技巧!的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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