【学习草稿】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)

相关推荐
@小匠3 小时前
Read Frog:一款开源的 AI 驱动浏览器语言学习扩展
人工智能·学习
网教盟人才服务平台6 小时前
“方班预备班盾立方人才培养计划”正式启动!
大数据·人工智能
芯智工坊6 小时前
第15章 Mosquitto生产环境部署实践
人工智能·mqtt·开源
菜菜艾6 小时前
基于llama.cpp部署私有大模型
linux·运维·服务器·人工智能·ai·云计算·ai编程
TDengine (老段)6 小时前
TDengine IDMP 可视化 —— 分享
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据·时序数据
小真zzz6 小时前
搜极星:第三方多平台中立GEO洞察专家全面解析
人工智能·搜索引擎·seo·geo·中立·第三方平台
Dxy12393102167 小时前
Python基于BERT的上下文纠错详解
开发语言·python·bert
GreenTea7 小时前
从 Claw-Code 看 AI 驱动的大型项目开发:2 人 + 10 个自治 Agent 如何产出 48K 行 Rust 代码
前端·人工智能·后端
火山引擎开发者社区7 小时前
秒级创建实例,火山引擎 Milvus Serverless 让 AI Agent 开发更快更省
人工智能