举例: 在阅读理解问题中,article 常常长达1000+, 而Bert 对于这个量级的表示并不支持, 诸位有没有什么好的解决办法, 除了分段来做?或者提一提如何分段来做。感谢诸位大佬。

-------------------------------------------------

这是个好问题,可以看下Amazon今年EMNLP的这篇文章:Multi-passage BERT

主要思路是global norm + passage rank + sliding window

实验做的很扎实,从ablation study看这几个trick都很有用。

如果不想切passages就上XLNet吧。

作者:斤木
链接:https://www.zhihu.com/question/327450789/answer/867657576
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

----------------------------------------------------

作者:猪猪侠和狗子
链接:https://www.zhihu.com/question/327450789/answer/1024153978
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

这个问题现在的解决方法是用Sliding Window(划窗),主要见于诸阅读理解任务(如Stanford的SQuAD)。Sliding Window即把文档分成有重叠的若干段,然后每一段都当作独立的文档送入BERT进行处理。最后再对于这些独立文档得到的结果进行整合。

Sliding Window可以只用在Training中。因为Test之时不需要Back Propagation,亦不需要large batchsize,因而总有手段将长文本塞进显存中(如torch.nograd, batchsize=1)。

至于具体实现可以参考原始BERT的run_squad:https://github.com/google-research/bert/blob/master/run_squad.py

PyTorch的版本暂时只找到这个半成品,基本上是对着tf的实现逐句翻译过来的:https://github.com/huggingface/transformers/blob/master/templates/adding_a_new_example_script/utils_xxx.py

P.S.

这个问题现只问及对于长文本(long-text)的处理。此外还有一个常见的问题是多文档(multi-document,案例如各种open domain QA),现在的主要思路是Retrieval + BERT。即先用retrieval选一些相关的document,之后当作阅读理解的问题来做。

详尽内容可以参考一下HotpotQA Leaderboard的前13名:HotpotQA Homepage。此外最近Google的新作的REALM也值得一观,其所展现的End-to-End暴力美学实在令人叹为观止。有钱就是好啊。

Bert 如何解决长文本问题?相关推荐

  1. ACL 2019 | 图表示解决长文本关系匹配问题:腾讯提出概念交互图算法

    本文作者:Bang Liu.Di Niu等 文章之间关系匹配是自然语言处理领域的重要问题.传统算法忽略了文本内部语义结构,而深度神经网络目前主要用于句子对之间的匹配.同时由于长文本对计算量需求较大,且 ...

  2. 毕业设计-基于 BERT 的中文长文本分类系统

    目录 前言 课题背景和意义 实现技术思路 一.文本分类的相关技术 二.文本表示模型 三.文本分类模型 实现效果图样例 最后 前言

  3. 将预训练模型应用于长文本阅读理解

    摘要: 基于transformers预训练模型(如BERT.RoBERTa)的表现突出,预训练模型基本作为模型的baseline,但是由于self-attention的矩阵计算时间复杂度为,导致输入长 ...

  4. 谷歌提出 RNN 版 Transformer,或为长文本建模的当前最优解

    文 | 小轶 今天给大家介绍一篇谷歌的最新工作,解决的是 Transformer 的长文本处理问题.在原生 Transformer 中,attention 的复杂度是输入序列长度的平方级别,因此限制了 ...

  5. NeurIPS'20 | 通过文本压缩,让BERT支持长文本

    作者 | wangThr 来源 | 知乎 这是今年清华大学及阿里巴巴发表在NIPS 2020上的一篇论文<CogLTX: Applying BERT to Long Texts>,介绍了如 ...

  6. 如何解决NLP分类任务的11个关键问题:类别不平衡低耗时计算小样本鲁棒性测试检验长文本分类 JayLou娄杰

    原文链接:https://zhuanlan.zhihu.com/p/183852900 欢迎关注<高能AI>公众号- 声明:文中观点谨代表笔者个人立场,盲目搬运有风险- 在2020这个时间 ...

  7. SAP save_text 解决导入物料主数据长文本丢失空格

    1. 问题 导入前长文本 IKK Coooe machine 9744R-230V(EU) Kain boood V1.0-Y DIP IKK Coooe machine 9744R-230V(EU) ...

  8. SAP MM02主数据维护多语言长文本,丢失空格的解决办法

    1.问题 导入前长文本 IKK Coooe machine 9744R-230V(EU) Kain boood V1.0-Y DIP IKK Coooe machine 9744R-230V(EU) ...

  9. CogLTX:应用BERT处理长文本

    论文标题:CogLTX: Applying BERT to Long Texts 论文链接:https://arxiv.org/abs/2008.02496 论文来源:NeurIPS 2020 一.概 ...

最新文章

  1. Codeforces Gym 100523E E - Gophers SET
  2. 2.05亿美元!马斯克Neuralink获脑机接口领域史上最大融资,公司正急招软件工程师...
  3. linux suse 时区设置,suse设置时间服务器
  4. Linux自定义命令
  5. TCP连接(client、server)状态转换
  6. leetcode初级算法2.旋转数组
  7. 为什么在生产中进行硒自动化测试对于您的下一个版本至关重要?
  8. 全面永久退出!又一巨头被逼上绝路!
  9. Android中MVC框架的运用
  10. JZYZOJ1140 飞船控制站
  11. 字符设备驱动程序的使用
  12. c语言复制粘贴快捷键_C++小知识:复制粘贴代码千万要小心
  13. java将当前页面隐藏,java 如何将当前程序隐藏到任务栏(类似windows上的其他程序)...
  14. seaJS 模块加载过程分析
  15. 汽车零部件智能工厂MES生产进度管理系统
  16. 如何使用 Putty 以密钥 private key 的方式登录腾讯云主机
  17. Eclipse中source folder、folder、package的区别?
  18. php蘑菇街商城源码,php源码:dedecms精仿蘑菇街(mogujie.com)源码,时尚购物社区源码...
  19. 2021年最后一天,学点Selenium玩点新鲜~新的一年,让分布式测试有更多玩法
  20. 计算机开机检测dhcp,电脑开机显示dhcp是什么意思

热门文章

  1. (面试)java基础-String一些特性
  2. win运行pycharm找不到要加载的model.pkl文件是workingspace设置路径与文件路径位置不对应
  3. 数据预处理为什么使用独热编码one-hot
  4. 计算机网络:自顶向下方法(第七版)Wireshark实验指南
  5. E2Cloud体验-快速构建一个开发项目环境
  6. 直播|清华谢晓晖——面向互联网图像搜索的用户行为模型研究
  7. Mila唐建专访:Bengio领路,缘起生物梦,AI如何变革生物制药?
  8. 内行的AI盛会——北京智源大会带你洞见未来!
  9. 这几本豆瓣高分设计好书,人人都应该读!
  10. 教授在飞机上做微积分,被当作恐怖分子抓了......