hidden_last_R = hidden_last[-1]#[batchsize, 384]
进行拼接
hidden_last_out = torch.cat([hidden_last_L, hidden_last_R], dim=-1) #[batchsize, 768]
else:
hidden_last_out = hidden_last[-1] # [batchsize, 384]
dropout and fully-connected layer
out = self.dropout(hidden_last_out) #out的shape[batchsize,768]
out = self.fc(out)
return out
def init_hidden(self, batch_size):
weight = next(self.parameters()).data
number = 1
if self.bidirectional:
number = 2
if (USE_CUDA):
hidden = (weight.new(self.n_layers * number, batch_size, self.hidden_dim).zero_().float().cuda(),
weight.new(self.n_layers * number, batch_size, self.hidden_dim).zero_().float().cuda()
)
else:
hidden = (weight.new(self.n_layers * number, batch_size, self.hidden_dim).zero_().float(),
weight.new(self.n_layers * number, batch_size, self.hidden_dim).zero_().float()
)
return hidden
xlnet_lstm需要的参数功6个,参数说明如下:
--xlnetpath:xlnet预训练模型的路径
--hidden_dim:隐藏层的数量。
--output_size:分类的个数。
--n_layers:lstm的层数
--bidirectional:是否是双向lstm
--drop_prob:dropout的参数
定义xlnet的参数,如下:
class ModelConfig:
batch_size = 2
output_size = 2
hidden_dim = 384 # 768/2
n_layers = 2
lr = 2e-5
bidirectional = True # 这里为True,为双向LSTM
training params
epochs = 10
batch_size=50
print_every = 10
clip = 5 # gradient clipping
use_cuda = USE_CUDA
xlnet_path = ‘xlnet-base-chinese’ # 预训练bert路径
save_path = ‘xlnet_bilstm.pth’ # 模型保存路径
batch_size:batchsize的大小,根据显存设置。
output_size:输出的类别个数,本例是2.
hidden_dim:隐藏层的数量。
n_layers:lstm的层数。
bidirectional:是否双向
print_every:输出的间隔。
use_cuda:是否使用cuda,默认使用,不用cuda太慢了。
xlnet_path:预训练模型存放的文件夹。
save_path:模型保存的路径。
==================================================================
本例使用的预训练模型是xlnet-base-cased,下载地址:https://huggingface.co/hfl/chinese-xlnet-base/tree/main
将上图画框的文件下载下来,如果下载后的名字和上面显示的名字不一样,则要修改回来。
文末有福利领取哦~
👉一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
👉二、Python必备开发工具
👉三、Python视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉 四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(文末领读者福利)
👉五、Python练习题
检查学习结果。
👉六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
👉因篇幅有限,仅展示部分资料,这份完整版的Python全套学习资料已经上传
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python爬虫全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:python)
了一份《2024年Python爬虫全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:python)
[外链图片转存中…(img-YblWd5rd-1711070912191)]