【学习草稿】bert文本分类

https://github.com/google-research/bert

https://github.com/CyberZHG/keras-bert

在 BERT 中,每个单词的嵌入向量由三部分组成:

Token 嵌入向量:该向量是 WordPiece 分词算法得到的子单词 ID 对应的嵌入向量。

Segment 嵌入向量:该向量用于表示每个单词所属的句子。对于一个包含两个句子的序列,使用0表示第一个句子,使用1表示第二个句子。对于一个只包含一个句子的序列,将所有的句子标记都设置为0。

Position 嵌入向量:该向量用于表示每个单词在序列中的位置。对于一个长度为L的序列,每个单词都会被分配一个表示其位置的向量,该向量的维度为d,其中d是嵌入向量的维度。

这三个向量会被按照一定的方式进行组合,得到一个最终的嵌入向量,用于表示当前单词在上下文中的语义信息。这个嵌入向量会作为输入序列的一部分,输入到模型中进行训练或推理。


return ["".join(x) for x in output]

return ["".join(x) for x in output]是一个列表推导式,用于将output列表中的子列表转换为字符串列表。

具体来说,output列表中的每个子列表表示一个单词,其中包含了该单词中的所有字符。例如,对于输入文本Hello, world!,_run_split_on_punc()函数会将其分割成一个包含5个子列表的列表[['H', 'e', 'l', 'l', 'o'], [','], [' '], ['w', 'o', 'r', 'l', 'd'], ['!']],其中每个子列表表示一个单词。

列表推导式["".join(x) for x in output]的作用是将每个子列表中的字符拼接成一个字符串,并将这些字符串组合成一个新的字符串列表。具体来说,"".join(x)将一个子列表中的所有字符拼接成一个字符串,而["".join(x) for x in output]则将output列表中的每个子列表都转换为一个字符串,并将这些字符串组合成一个新的列表。

例如,对于输入文本Hello, world!,_run_split_on_punc()函数会将其分割成一个包含5个子列表的列表[['H', 'e', 'l', 'l', 'o'], [','], [' '], ['w', 'o', 'r', 'l', 'd'], ['!']],而列表推导式["".join(x) for x in output]则会将这些子列表转换为一个新的字符串列表['Hello', ',', ' ', 'world', '!'],其中每个字符串表示一个单词。

打印格式问题,才会有空格。。


![在这里插入图片描述](https://img-blog.csdnimg.cn/56628d678330476fab698daf7d8c5703.png![在这里插入图片描述](https://file.jishuzhan.net/article/1715654994151084034/8892b00c510de9e7b0d8d1adce37567c.webp)

相关推荐
小猪佩奇TONY5 分钟前
C++ 学习(3) ----设计模式
c++·学习·设计模式
IT_陈寒6 分钟前
Java并发编程避坑指南:7个常见陷阱与性能提升30%的解决方案
前端·人工智能·后端
星期天要睡觉15 分钟前
计算机视觉(opencv)——嘴部表情检测
人工智能·opencv·计算机视觉
Brookty17 分钟前
【算法】二分查找(一)朴素二分
java·学习·算法·leetcode·二分查找
bawangtianzun1 小时前
重链剖分 学习记录
数据结构·c++·学习·算法
Vizio<1 小时前
ERT中正问题和逆问题的传统数学推导
学习·数学建模·机器人·触觉传感器
丰锋ff1 小时前
2007 年真题配套词汇单词笔记(考研真相)
笔记·学习·考研
musenh2 小时前
mysql学习---事务
学习·mysql
musenh2 小时前
mysql学习--DCL
学习·mysql·adb
woshihonghonga4 小时前
Jupyter Notebook模块导入错误排查
人工智能