前言
之前在忙考试周, 这个项目就搁置了一段时间, 最近考完试重新捡起来, 继续学习! 目前我们已经做完了数据处理, 复现了多篇论文的代码, 实验结果都和原论文一致, 接下来可以试一试提出自己的Idea并且做出一些实验啦~
做实验时有各种收获, 也学了几个新东西, 这一篇就打算分享一下
关于Pytorch
Mask
之前经常听到Mask这个词, 看了bert论文后知道原来是“遮住”一些词。那么除了作为预测任务外, 我们什么时候需要mask呢?
我目前遇到的情况就只有一种:即当我们不想让模型计算和padding相关的某些值时, 需要将padding的0或者是由这些0计算得到的结果mask掉
- 比如
KRNM中就会mask掉doc中padding的单词和query中任何单词交互后kernel过滤的结果, 也会mask掉query中padding的单词和doc中的任何词交互kernel过滤的结果
PyTorch中有很方便的接口tensor.masked_fill(), 具体可以参考文档, 注意可以方便地讲只包含0,1的tensor转化为布尔类型, 只需要tensor.bool()
一些学习笔记
自己一直在总结PyTorch中的一些好用的api之类的, 都在

本文作者在完成数据处理和论文复现后,分享了在PyTorch中使用Mask的场景,以及在实验中学到的画图、脚本编写和可视化技巧。提到了`torch.BoolTensor`用于处理padding,`matplotlib`的美观图表,`argparse`作为命令行参数解析工具,以及使用`tensorboard`进行训练过程的参数可视化。文章还简述了如何理解可视化参数图的分布变化,展示了一个新闻推荐系统的相关研究资源。
最低0.47元/天 解锁文章
2万+





