| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 记录详细的pytorch文本情感分类实战过程 -> 正文阅读 |
|
[人工智能]记录详细的pytorch文本情感分类实战过程 |
word embedding APItorch.nn.Embedding(num_embeddings, embedding_dim) 参数介绍:1.num_embeddings:词典的大小 (当前词典中不重复词的个数) ? ? ? ? ? ? ? ? ? 2.embedding_dim:embedding的维度(用多长的向量表示我们的词语) 使用方法:embedding = nn.Embedding(vocab_size, 300) # 实例化 embedding维度为300维 ? ? ? ? ? ? ? ? ? input_embeded = embedding(input)? ? ? ? # 进行embedding操作 数据的形状变化如果每个batch中的每个句子有十个词语,经过形状为[20, 4]的word embedding 之后,原来的句子会变成什么样的形状? //这里的20是指整个词库中不重复的词的个数,4是指我们想要embedding的维度 实际就是一个降维的过程 我们根据实际情况选择embedding_dim? ? ? ?? 每个词语用长度为4的向量表示,所以,最终会变成[batch_size , 10 , 4]的形状? //这里的10就是seq_len? 句子长度 所以形状的变化为:[batch_size, seq_len] -----[batch_size, seq_len, embedding_dim]? 这里插入一张图 方便理解word embedding的过程 ? 思路分析:首先可以把上述问题定义成一个分类问题,情感评分为1-10,10个类别,那么我们大致的流程如下: 1.准备数据集 2.构建模型 3.模型训练 4.模型评估 准备数据集?需要注意的点:1.如何完成基础的dataset和dataloader的准备 ? ? ? ? ? ? ? ? ? ? ? ? ?2.如何解决每个batch中的文本长度不一致的问题 ? ? ? ? ? ? ? ? ? ? ? ? ?3.如何解决每个batch中的文本转化为序列的问题 基础Dataset的准备?简单的数据预处理 这里涉及到正则表达式 re.sub re.S 和flags的操作: ?从上面的代码中可以看到re.sub()方法中含有5个参数 strip()的用法: str.strip() : 去除字符串两边的空格 注:此处的空格包含’\n’, ‘\r’, ‘\t’, ’ ’
整个数据准备阶段代码
这里插入collate_fn实现方法 collate_fn的默认值为torch自定义的default_collate,collate_fn的作用就是对每个batch进行处理,而默认的default_collate处理出错 解决方法:1.考虑先把数据转化为数字序列,观察其结果是否符合要求,之前使用DataLoader并未出现类似错误 ? ? ? ? ? ? ? ? ? 2.考虑自定义一个collate_fn,然后观察结果:
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 4:01:38- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |