NLP学习-昇思AI学习赛-图书评论分类

本文讲述了作者参加昇思AI学习赛,通过MindSpore框架进行文本分类的经历,涉及LSTM在解决长序列问题、数据增强、模型集成以及在比赛中遇到的FocalLoss问题。作者分享了优化技巧和不足,强调了超参数调整及预训练模型在未来可能带来的提升。
摘要由CSDN通过智能技术生成

昇思AI学习赛于2023年3月正式开启,面向全球AI开发者,赛题与深度学习紧密结合,多重好礼等你来拿。文本分类研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法,在AI领域承担了重要角色。本赛题旨在让参赛者熟悉MindSpore并锻炼参赛者使用MindSpore进行文本分类的能力。

为熟悉华为的mindspore框架和了解NLP,我参加了文本分类这一赛道。

数据集(由赛方提供)

 目标

训练模型,基于用户的评论文本预测与之对应的用户打分,0-5星,评价指标accuracy越高越佳

使用模型:LSTM

在自然语言处理中常用RNN网络,但RNN细胞结构简单,容易在训练中产生梯度消失问题。例如RNN网络在序列较长时,在序列尾部已经基本丢失了序列首部的信息。为了克服这一问题,LSTM(Long short term memory)模型被提出,通过门控机制来控制信息流在每个循环步中的留存和丢弃。

Tricks

1.数据增强:通过回译的方式将训练数据扩增至原来的3倍

2.模型集成:通过bagging的方式集成3个训练好的模型

3.修改类别相关的参数,使得适应本次任务

4.尝试了fasttext,glove等其他版本的词向量,但模型表现不佳

5.针对focal loss调整了模型权重,试图解决类别不均衡的问题,但模型表现不佳

不足

  • 本次任务并未进行超参数调整,后续调参的改进将进一步提升模型表现
  • 本次任务并未使用预训练模型,如使用Bert或者如GPT等foudation model或进一步提升模型表现

MindSpore API存在问题

mindspore1.8 存在问题: Focal Loss 中的log_softmax操作进行反向传播时存在问题:需要进行更换部分操作:

x = mindspore.ops.Softmax(dim)(x)

x = mindspore.ops.log(x)

开源仓库地址

iLoveData解决方案https://xihe.mindspore.cn/projects/tranquility/must/train

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值