天池-NLP文本分类挑战赛(1)

NLP介绍

Stanford CS 224N | Natural Language Processing with Deep Learning

CS224U: Natural Language Understanding - Spring 2023

GitHub - graykode/nlp-roadmap: ROADMAP(Mind Map) and KEYWORD for students those who have interest in learning NLP

NLP实现方法

1、传统机器学习方法:预处理、特征工程、模型

2、深度学习方法:预处理、模型

文本分类的流程

文本预处理、特征提取、文本表示和分类器

特征提取、文本表示将文本处理成模型能识别的形式

1、lower,转大小写

2、punctuation,剔除标点符号

3、tokenization,分词

4、stop words,去除停用词

5、lemmatize,替换通用单词/去除时态

6、将文本转化为向量

7、进行截取或填充

预训练词向量:可以使用现有的预训练模型对语料进行训练,常见的词向量包括:fasttext、word2vec、glove和bert

TFIDF

N-gram:

语言模型,利用滑动窗口的思想统计出现相同字符的频率

Countvectorizer:

将文本进行编码并进行统计

稀疏

向量维度取决于非重复次数

TFIDF公式:

W_{x,y}=tf_{x,y}*log(N/df_x)

TF:词频

tf=(某一文档中某一单词出现的次数/该文档中的总词数)

1、进一步筛选单词出现次数

2、只统计单词出现的次数,没有前后关系

IDF:逆文本频率

log(N/df_x)=log(语料库总文档数/包含该词文档的个数)

IF*IDF
当单词次数出现越少时权重越小

当单词出现在不同文档的次数越高,权重越小,用来排除每个文档都使用的无意义词

可以屏蔽每个文档中都使用的套词,留下具有每个文档特点的词

词向量

词向量可以将含义相同的单词映射到含义相同的稠密空间

基础:可以使用字典查表

高阶:使用LSTM或者transformer进行预测

在映射后不容易区分单词的重要性,可以通过衔接LTSM/transformer来确定单词的重要性

Fasttext:

由单词维度转化为句子维度时,对ngram窗口内的单词使用平均池化(mean-pooling)

1、速度快、不要求GPU

2、快速迭代,工业入门方案

在分类的时候采用mean-pooling,在检索的时候可以使用max-pooling目的为得到单词中的最大值

TextCNN:

使用卷积的感受野来代替ngram的作用

TextCNN+FC

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值