PyTorch 深度学习实战
方远
LINE China 数据科学家
10381 人已学习
新⼈⾸单¥59
登录后,你可以任选3讲全文学习
课程目录
已完结/共 32 讲
开篇词 (1讲)
PyTorch 深度学习实战
15
15
1.0x
00:00/00:00
登录|注册

24 | 文本分类:如何使用BERT构建文本分类模型?

你好,我是方远。
在第 22 节课我们一起学习了不少文本处理方面的理论,其实文本分类在机器学习领域的应用也非常广泛。
比如说你现在是一个 NLP 研发工程师,老板啪地一下甩给你一大堆新闻文本数据,它们可能来源于不同的领域,比如体育、政治、经济、社会等类型。这时我们就需要对文本分类处理,方便用户快速查询自己感兴趣的内容,甚至按用户的需要定向推荐某类内容。
这样的需求就非常适合用 PyTorch + BERT 处理。为什么会选择 BERT 呢?因为 BERT 是比较典型的深度学习 NLP 算法模型,也是业界使用最广泛的模型之一。接下来,我们就一起来搭建这个文本分类模型,相信我,它的效果表现非常强悍。

问题背景与分析

正式动手之前,我们不妨回顾一下历史。文本分类问题有很多经典解决办法。
开始时就是最简单粗暴的关键词统计方法。之后又有了基于贝叶斯概率的分类方法,通过某些条件发生的概率推断某个类别的概率大小,并作为最终分类的决策依据。尽管这个思想很简单,但是意义重大,时至今日,贝叶斯方法仍旧是非常多应用场景下的好选择。
之后还有支持向量机(SVM),很长一段时间,其变体和应用都在 NLP 算法应用的问题场景下占据统治地位。
随着计算设备性能的提升、新的算法理论的产生等进步,一大批的诸如随机森林、LDA 主题模型、神经网络等方法纷纷涌现,可谓百家争鸣。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

BERT模型是一种在自然语言处理领域广泛应用的深度学习算法模型。本文详细介绍了使用PyTorch快速构建基本文本分类模型的过程,包括获取和转化BERT的预训练模型、分类网络的设计方法以及训练过程的编写。文章强调了对Transformer中的模型代码的学习对技术提升的重要性,并提出了对NLP应用中的业务方面考虑的建议。此外,文章还提出了思考题,即当BERT处理长文本时的应对方法。整体而言,本文通过实际案例和技术指导,帮助读者快速了解了如何利用PyTorch构建文本分类模型,同时强调了对数据预处理和传统机器学习算法的重要性。文章内容丰富,适合对BERT模型和NLP技术感兴趣的读者阅读学习。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《PyTorch 深度学习实战》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(12)

  • 最新
  • 精选
  • vcjmhg
    1.截断法 截断法是非常常用办法,大致分为三种,head截断,tail截断,head+tail 截断。 head截断即从文本开头直到限制的字数。 tail截断是从结尾开始往前截断。 head+tail 截断,开头和结尾各保留一部分,比例参数是一个可以调节超参数。 缺点:处理方法较为暴力,不是太长的文本 2.Pooling法,缺点性能较差 3.压缩法,提取文本中有限segment,但压缩效果可能会很有限。

    作者回复: 👍🏻👍🏻👍🏻👍🏻^^

    2021-12-09
    3
  • Qwen
    才入行新人,文章读了好几遍,还有很多问题点不能理解。 希望大佬能否考虑整理一份完整的训练代码,在参照您的文档去理解,应该能帮助到很多像我这样的新人。

    作者回复: 你好,感谢你的留言。图像的课程有整理好的代码。链接在文章里。

    2022-09-08归属地:北京
    2
  • (●—●)
    请问怎么转换模型?

    作者回复: 你好,不好意思,没太看明白。 转什么模型?从哪里转?

    2022-03-26
    3
    1
  • xiaolan
    请问bert模型的用处是不是跟word2vec一样?

    作者回复: hello,感谢留言。 他们不一样。可以一样用,但是bert更强大,还有别的功能。

    2022-01-24
    1
  • Geek_1e9742
    你文章里的多语言bert模型的链接已经失效不能使用了

    编辑回复: 链接已更新,刷新可见

    2023-04-04归属地:江苏
  • 亚林
    预训练模型地址失效了: https://github.com/google-research/bert/blob/master/multilingual.md

    作者回复: hi,没有失效,可能是你的网络问题

    2022-06-07
  • 亚林
    上一节提到的pipelines能否解决长文本的办法

    作者回复: hello pipelines不是解决长文本问题的。

    2022-06-02
  • Geek_709f77
    “转换完模型之后,你会发现你的本地多了三个文件”这个转换完成模型是怎么做的?另外,老师给的链接有的打开后跟文章中内容不一样,代码下载也不对,能不能把所有代码放在一个地方,让我们下载运行?

    作者回复: 你好,感谢你的留言。 模型的转换需要transformers中提供的convert_tf_checkpoint_to_pytorch.py 文件的帮忙,具体的使用方法会随着版本的更新而有所不同,但是好在用法都在该文件的main函数中进行了介绍。你可以看一下。 链接与文章中内容不一样的问题,我刚才看了一下git中的代码,他三天前更新了。 按照文章中的流程,代码基本都是可以实现的^^。

    2022-04-15
  • 向坤
    请问有完整的训练代码链接吗

    作者回复: 你好,向坤,感谢你的留言。 按照文章里的一步步来就是可以运行的。

    2022-04-13
  • 亚林
    我觉得这篇的主角是huggingface
    2022-06-07
    1
收起评论
显示
设置
留言
12
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部