| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 【推荐系统】基于文本挖掘的推荐模型【含基于CNN的文本挖掘、python代码】 -> 正文阅读 |
|
[人工智能]【推荐系统】基于文本挖掘的推荐模型【含基于CNN的文本挖掘、python代码】 |
【推荐系统】基于文本挖掘的推荐模型【含基于CNN的文本挖掘】基于文本挖掘的推荐模型 – 了解基于文本评论的推荐模型,实现评分预测 一、实现的主要原理及思路1. 深度神经网络关于神经网络更详细介绍可以看此篇【深度学习】含神经网络、CNN、RNN推理 1.1神经网络原理1.2神经网络的表示1.3示例1.4深度神经网络(Deep Neural Networks,DNN)DNN则是指包含多个隐层的神经网络 2. 卷积网络(Convolutional Neural Networks, CNN)处理文本评价的方式2.1图像 应用 卷积网络二维卷积网络是通过将卷积核在二维矩阵中,分别从width和height两个方向进行滑动窗口操作,且对应位置进行相乘求和。而图像则正是拥有二维特征像素图,所以图像应用卷积网络是二维卷积网络。 2.2文本挖掘 应用 卷积神经网络当文本由一系列单词组成,eg:hello world, I like you.是一个一维的单词序列,卷不起来。所以此时应将卷积网络的思想运用到文本挖掘中,则需要考虑到单词的表征。如下图👇cat延申出是否是动词,是否是人类等等一系列表征,便变成二维进行卷积。但需要注意的是,将卷积核在二维矩阵中,只能从width和height两个方向进行滑动窗口操作(即卷积要包括一个单词的所有表征),且对应位置进行相乘求和。放在下图中也就是只能上下进行卷积。 3. 基于CNN的评论文本挖掘3.1数据预处理原始数据👇【由于原数据集2125056万条过大,为方便调试后续代码,实现整个过程,所以数据集仅选取其中一部分,训练集大小为425001*1】 提取出我们所需要的评分以及评论文本,并将两者组成列表👇 利用jieba包,构建分词函数,从而得到分好词的评论。👇【下图为拿一个评论进行分词尝试,并存为列表】 有了词以后我们需要针对单词进行向量化,也就是上面 2.2文本挖掘 应用 卷积神经网络中的图的数据获取,而这里使用了包word2vec(word2vec是一种将单词转换为向量形式的工具。用于将文本的处理的问题简化为向量空间中的向量运算,通过计算向量空间上的距离来表示文本语义上的相似度),而word2vec实现原理是它将词表中所有的词进行统一编码,每个词在向量中占为1(让向量中只有一个维度为1),eg:“开心”=[0000001000000……],然后根据每个词的上下文进行训练,从而判断两个词之间的相似性👇 为了统一卷积的输入,计算每条评论的最长单词数,然后将所有评论单词数量进行扩充至最长单词数👇
3.2CNN利用tensorflow的keras进行构建模型,模型细则👇
损失函数采用多分类损失函数categorical_crossentropy 4.基于文本挖掘的推荐模型将自定义单条评论进行单词分量,预测,取预测结果元素最大值所对应的索引即为预测评分 二、 结果与分析1. 基于CNN的评论文本挖掘结果👇 【21108份训练集,21251份测试集,训练迭代10次,测试loss约为1.96,测试准确率为0.108】👇 当我的测试集以及训练迭代次数增加时,测试的loss减少,准确率提高 【212466份训练集,42501份测试集,报错过大】 2. 基于文本挖掘的推荐模型-评分预测三、总结其实如果增大数据集训练量,准确率应该会更为理想,但是,当我尝试将训练集增到21万左右时,我的电脑跑了一晚上也没跑出来直接卡住。所以还是以学习整个流程,学会实现为主,不强求/(ㄒoㄒ)/~~柳暗花明又一村,不抛弃不放弃,它会跑起来的,要有坚定的信念感,去吧,皮卡丘 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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/26 5:50:04- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |