NLP文本分类入门学习及TextCnn实践笔记——基础知识学习及理解(一)

    碎碎念:

之前有一些机器学习相关的概念基础,但从未实践过,看的知识也不系统。这次刚好工作中有应用需求,就以NLP的文本分类为切入点,进行相关知识的学习和模型实践。

    当前进展:

研究了两周,完成文本预处理、word embedding、TextCnn模型训练、API封装等代码工作,模型效果调优、验证中。计划以笔记的形式记录几篇博客。

    首篇主要是个人对NLP及文本分类的理解、一些基础知识的学习及参考资料记录。下一篇计划关于TextCnn算法学习和代码实践等。

    本次个人学习方式:

1. 基础知识补充,形成系统概念,明确方向(多看,遇见不会的就查,把概念盲点都补齐)。

2. 选定算法,找开源代码,针对中文文本及业务场景进行改版、调试。

3. 训练样本标注、分析

5. 模型训练、评估

6. API封装、线上数据测试、模型调整。

 

    正文:

我个人理解的NLP文本分类分为两大步,特征提取和特征学习(模型训练)(对这两部分展开介绍后,最后再简单记一下模型分析的概念)。

一、特征提取

无论是基于统计的机器学习,还是基于神经网络的深度学习,都是用样本数据训练模型,教给机器做特定的工作的(NLP能做那些工作参考:https://blog.csdn.net/yimingsilence/article/details/54934516)。而样本数据都需要转化成向量的数学表示才能输入给模型的。

在非NLP的场景,可以是选定的n个特征,每个特征可以有自己的取值,归一化到0-1的范围,就可以形成n维的向量,输入给模型进行训练。

而在NLP的场景文本怎么转化向量?转化的过程中怎么把原来的文本信息尽量多的保留?(你教给模型的信息越多,它可能学习的越好,当然也可能学“死”了,也就是过拟合问题,把一些不该学到的特征也学到了)

这就包含两部分,即文本预处理和word embedding词嵌入。

1. 文本预处理

将文本中的无用信息剔除或归一化处理(例如URL、长串数字字母、表情等),有用信息保留,变体信息转换(如特殊符号替换、同音近型替换、简繁替换、中英文转换)等。

例如在涉赌等非法内容,为了对抗识别,经常在文本中插入无意义的字符或者用各种音近字、形近字、拼音表情等,如果直接那来训练就会要么提取不到有用的信息(变体的词都找不到词向量,例如‘啋僄’是彩票的变体词),要么把无用的特征保留了(例如‘投猪’是投注的变体,分词的时候会把‘猪’单独分成一个词,那机器就会错误的认为提到‘猪’是涉赌的特征之一)

可参考https://www.sohu.com/a/271534609_383123前半部分描述。

2. 分词+word embedding词嵌入

文本梳理顺了,就要做文本到向量的转换了,这个过程就是

  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值