自然语言处理 项目总结

一、为一个五金搜索网站构建文本相似度检测系统

1、项目介绍

trainset : 产品id 搜索item 产品item 相似度评分
prodcut_description:产品id 产品介绍

2、使用ML model

xgboost

3、系统构建思路

step1:文本预处理(stemmer很重要 in search)
stemmer
step2:特征工程(自制文本特征)
1)搜索str中的word在产品str中出现的次数
2)搜索str的长度 与 产品 str的长度 差值
3)搜索str中的word在description中出现的次数/description单词数
4)搜索str 和 产品str 表示为word2vec,计算二者的夹角值
5)搜索item和产品description 的 word2vec,计算二者的相似度
如果数据分不出现偏差,可以进行Log(1+x)的操作,将其扭转到正态分布,以便模型训练;
6)Levenshtein 文本距离:左边sentence到右边sentence需要修改的次数:
搜索item和产品Item的文本距离
搜索Item和产品description的文本距离
7)搜索item和产品item的tfidf相似度
搜索item和产品description的tfidf相似度
延伸:直接将 用 word2vec表示的 搜索Item 和 产品item /产品description 塞入 Neural network,label为rating,进行训练。直接端到端。

二、新闻文本分类

1、项目简介

从简讯新闻抓取半年左右新闻数据,构建分类器对新闻数据进行分类。数据量:200M+。

  • 任务一:词频分析:构建词云
    针对一类新闻,构建词云,从词云中可以看到频率最高的一些词。一定程度显示主题。
  • 任务二:中文自然语言处理分析:
    tf-idf
    textrank
    LDA
  • 任务三:新闻文本分类:
    朴素贝叶斯 + 语言模型
    SVM + 语言模型
  • 任务四:新闻文本分类:
    使用fasttext进行文本分类;(fasttext不一定要一次性把trainset读到内存里)
    note that:可以使用fasttext进行word2vec训练。其效果可能要比gensim还要赢一点。
  • 任务五:新闻文本分类:
    用DeepLearning的方法进行文本分类的原因如下:
    DeepLearning训练data时,不用一次性将data全部导入内存,可以一批一批进行训练;
    相比将n-gram的feature平铺开来,用ML model进行训练,CNN能够捕捉到文本的一些局部的特征;而LSTM,GRU中,文本中的word一个一个塞入这些model中,不需要n-gram,即可捕捉到文本的时序信息。
    CNN在短文本分类中,可以获得较好的效果,相比 线性模型 来讲。
    LSTM,GRU在长文本分类中,可以获得较好的效果。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sarah ฅʕ•̫͡•ʔฅ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值