当前位置: 首页 > news >正文

自己做的表白网站wordpress主动推送代码写在哪里

自己做的表白网站,wordpress主动推送代码写在哪里,网站布局方法分类,网站建设成本表#x1f935;‍♂️ 个人主页#xff1a;艾派森的个人主页 ✍#x1f3fb;作者简介#xff1a;Python学习者 #x1f40b; 希望大家多多支持#xff0c;我们一起进步#xff01;#x1f604; 如果文章对你有帮助的话#xff0c; 欢迎评论 #x1f4ac;点赞#x1f4… ‍♂️ 个人主页艾派森的个人主页 ✍作者简介Python学习者 希望大家多多支持我们一起进步 如果文章对你有帮助的话 欢迎评论 点赞 收藏 加关注 目录 一、实验背景 二、相关算法 2.1Word2vec 2.2支持向量机 2.3随机森林 三、实验数据 3.1 数据说明 3.2评价标准 四、实验步骤 五、实验结果与分析 5.1 SVM模型评估结果 5.2随机森林模型评估结果 六、实验总结 文末推荐与福利 源代码 一、实验背景 当前随着社交媒体的迅猛发展人们也越来越习惯于在论坛、博客、微博等社交网络中发表主观性的言论用于表达自己对周围所见所闻的观点和看法从而形成了大量带有主观情感倾向性的文本。这些海量的主观性文本对人们的行为会产生重要影响因而人们渴望对其进行自动挖掘和处理。然而这些文本大多表现为非结构化的或半结构化的形式使得自动地分析和抽取其中蕴含的情感倾向性成为一项极具挑战性的课题。如果仅仅通过人工获取并分析这些评论中的情感信息效率将会十分低下无法满足实际的需求自然语言处理领域存在一种可行的方法———情感分析sentiment analysis情感分析大致兴起于世纪年代末在进入本世纪后人们开始普遍认识到情感分析的巨大研究价值和潜能经过二十年的发展情感分析已经成为数据挖掘、机器学习、自然语言处理等领域的研究热点之一。 情感分析又叫作观点挖掘倾向性分析等简单而言,是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程。目的是理解文本中作者对于某个实体包括产品、服务、人、组织机构、事件、话题的评判态度支持或反对、喜欢或厌恶等或情感状态高兴、愤怒、悲伤、恐惧等。在研究工作中人们往往把情感分析看作是一种分类问题并将文本的情感标签划分为两类正倾向、负倾向或三类正倾向、负倾向、中立正倾向情感是指主题中持有积极的、支持的、健康的态度和立场负倾向情感是指文本中持有消极的、反对的、不健康的态度和立场中立类别是指文本中持中立态度和立场。虽然文本情感分析的实质是分类问题但它与传统的文本分类任务有着很大的不同。传统的文本分类通常基于文本主题例如体育、经济、政治等进行分类对文本内容的分析与理解都处于比较浅的层次。而情感分析关注的是文本内容所体现的情感、观点或态度并非文本本身的内容。它是对传统的文本分类研究的深入和拓展可以满足人们更深层次获取和利用信息的需求。 文本情感分析涉及到人工智能、机器学习、数据挖掘、信息抽取、信息检索、自然语言处理、计算语言学、统计学等多个研究领域不仅需要应用这些领域的前沿技术而且反过来又对这些技术提出了新的挑战推动了其发展。因此情感分析在科学研究方面具有重要意义。同时情感分析又具有广泛的应用前景主要包括 1.舆情分析。舆情是指在一定社会空间内围绕社会事件的发生、发展和变化民众对事件和当事各方的社会政治态度是人们对于社会中各种现象、问题所表现的信念、态度、意见和情绪等的总和。近年来随着社交媒体的迅速发展我们已经感受到网络舆论对于政策改革、企业重塑、经济调控等发挥的巨大影响。利用文本情感分析技术可以实时、准确地收集、把握群众意见使政府和商家能够及时做出相应调整。 2.市场情报。在购买商品时消费者希望通过其他用户发表的评论来决定自己的购买意向。同时许多商家也希望通过用户评论来及时了解产品的优缺点及用户满意度。文本情感分析技术可自动地从海量评论语料中挖掘有用信息并对这些信息进行组织和分类直观地展示给用户和商家。 3.其他相关系统。情感分析技术可推动其他系统的发展。例如推荐系统中可利用情感分析技术拒绝推荐收到大量负面反馈的项目情感分析技术有利于一些在线网站根据正、负情感信息的数量排列广告自动问答系统中需要将主观情感型问题与客观事实型问题区别对待自动摘要系统中需要考虑文档的多角度主观观点从而丰富摘要的信息量和多样性人机交互系统中利用情感分析技术判断人的情绪提高系统的智能水平。 目前文本情感分析方法主要分为类基于情感词典的方法、基于传统机器学习的方法以及基于深度学习的方法基于情感词典的方法主要依赖人工构建的情感词典该方法实现简单但构建情感词典困难需要耗费大量的人力物力基于传统机器学习的方法依赖人工设计的特征该方法计算量小容易实现但需要专业领域的专业人士分析并提取相关特征且泛化能力不足基于深度学习的方法通过构建网络模型模拟人脑神经系统对文本进行学习自动提取特征进行文本分类。 二、相关算法 2.1Word2vec Word2vec 是 Word Embedding 的方法之一。他是 2013 年由谷歌的 Mikolov 提出的一套新的词嵌入方法是一种神经网络概率语言模型可以用于计算单词的词向量。与传统的高维词向量 one-hot representation 相比Word2vec 词向量的维度通常在 100~300 维之间减少了计算的复杂度也不会造成向量维数灾难。除此之外Word2vec词向量是根据词汇所在上下文计算出的充分捕获了上下文的语义信息很容易通过它计算两个词汇的相似程度。 Word2vec是一个用于处理文本的双层神经网络。它的输入是文本语料输出则是一组向量该语料中词语的特征向量。虽然Word2vec并不是深度神经网络但它可以将文本转换为深度神经网络能够理解的数值形式。 Word2vec的应用不止于解析自然语句。它还可以用于基因组、代码、点赞、播放列表、社交媒体图像等其他语言或符号序列同样能够有效识别其中存在的模式。为什么呢因为这些数据都是与词语相似的离散状态而我们的目的只是求取这些状态之间的转移概率即它们共同出现的可能性。所以gene2vec、like2vec和follower2vec都是可行的。Word2vec的目的和功用是在向量空间内将词的向量按相似性进行分组。它能够识别出数学上的相似性。 Word2vec能生成向量以分布式的数值形式来表示词的上下文等特征。而这一过程无需人工干预。给出足够的数据、用法和上下文Word2vec就能根据过去经验对词的意义进行高度准确的预测。这样的预测结果可以用于建立一个词与其他词之间的联系例如“男人”和“男孩”的关系与“女人”和“女孩”的关系相同或者可以将文档聚类并按主题分类。而这些聚类结果是搜索、情感分析和推荐算法的基础广泛应用于科研、调查取证、电子商务、客户关系管理等领域。Word2vec神经网络的输出是一个词汇表其中每个词都有一个对应的向量可以将这些向量输入深度学习网络也可以只是通过查询这些向量来识别词之间的关系。Word2vec衡量词的余弦相似性无相似性表示为90度角而相似度为1的完全相似则表示为0度角即完全重合。 Word2vec包含了两种训练模型分别是CBOWContinuous Bag-of-words Model和 Skip_gram(Continuous Skip-gram Model)。CBOW的意思就是用上下文来预测当前词而Skip-gram就是用当前词来预测上下文如图所示 优点 1由于 Word2vec 会考虑上下文跟之前的 Embedding 方法相比效果更好。 2比之前的 Embedding方 法维度更少所以速度更快。 3通用性很强可以用在各种 NLP 任务中。 缺点 1由于词和向量是一对一的关系所以多义词的问题无法解决。 2Word2vec 是一种静态的方式虽然通用性强但是无法针对特定任务做动态优化。 2.2支持向量机 支持向量机support vector machine故一般简称SVM通俗来讲它是一种二分类模型其基本模型定义为特征空间上的间隔最大的线性分类器这族分类器的特点是他们能够同时最小化经验误差与最大化几何边缘区因此支持向量机也被称为最大边缘区分类器。其学习策略便是间隔最大化最终可转化为一个凸二次规划问题的求解。SVM在很多诸如文本分类图像分类生物序列分析和生物数据挖掘手写字符识别等领域有很多的应用。 支持向量机将向量映射到一个更高维的空间里在这个空间里建立有一个最大间隔超平面。在分开数据的超平面的两边建有两个互相平行的超平面分隔超平面使两个平行超平面的距离最大化。假定平行超平面间的距离或差距越大分类器的总误差越小。 如图所示我们希望找到如图中粗线所示的边界函数分类超平面因为粗线有更大的几何间距对于离群点有更好的兼容性鲁棒性更好即泛化能力更好。 优点 (1)非线性映射是SVM方法的理论基础,SVM利用内积核函数代替向高维空间的非线性映射 (2)对特征空间划分的最优超平面是SVM的目标,最大化分类边际的思想是SVM方法的核心 (3)支持向量是SVM的训练结果,在SVM分类决策中起决定作用的是支持向量。 (4)SVM 是一种有坚实理论基础的新颖的小样本学习方法。它基本上不涉及概率测度及大数定律等,因此不同于现有的统计方法。从本质上看,它避开了从归纳到演绎的传统过程,实现了高效的从训练样本到预报样本的“转导推理”,大大简化了通常的分类和回归等问题。 (5)SVM 的最终决策函数只由少数的支持向量所确定,计算的复杂性取决于支持向量的数目,而不是样本空间的维数,这在某种意义上避免了“维数灾难”。 (6)少数支持向量决定了最终结果,这不但可以帮助我们抓住关键样本、“剔除”大量冗余样本,而且注定了该方法不但算法简单,而且具有较好的“鲁棒”性。 SVM的限制包括 1SVM算法不适用于大型数据集。 2当数据集的噪声较大时支持向量机不能很好地工作。 3如果每个数据点的实体数量超过了训练数据样本的数量SVM将会表现不佳。 4由于支持向量分类器通过在分类超平面的上方和下方放置数据点来工作因此没有概率解释。 2.3随机森林 随机森林Random Forest是一种基于分类树classification tree的算法Breiman2001。这个算法需要模拟和迭代被归类为机器学习中的一种方法。经典的机器学习模型是神经网络Hopfield1982有半个多世纪的历史了。神经网络预测精确但是计算量很大。上世纪八十年代Breiman等人发明了分类和回归树Classification and Regression Tree简称CART的算法通过反复二分数据进行分类或回归计算量大大降低。 2001年Breiman和Cutler借鉴贝尔实验室的Ho所提出的随机决策森林random decision forests的方法把分类树组合成随机森林即在变量列的使用和数据行的使用上进行随机化生成很多分类树再汇总分类树的结果。后来Breiman在机器学习杂志上发表了他和Cutler设计的随机森林的算法。这篇文章被大量引用根据Google Scholar该文章至2013年被引用9000多次成为机器学习领域的一个里程碑。 随机森林在运算量没有显著提高的前提下提高了预测精度。随机森林对多元公线性不敏感结果对缺失数据和非平衡的数据比较稳健可以很好地预测多达几千个解释变量的作用被誉为当前最好的算法之一。在机器学习的诸多算法中随机森林因高效而准确而备受关注在各行各业得到越来越多的应用。 同其他模型一样随机森林可以解释若干自变量X1、X2、...、Xk对因变量Y的作用。如果因变量Y有n个观测值有k个自变量与之相关在构建分类树的时候随机森林会随机地在原数据中重新选择n个观测值其中有的观测值被选择多次有的没有被选到这是Bootstrap重新抽样的方法。同时随机森林随机地从k个自变量选择部分变量进行分类树节点的确定。这样每次构建的分类树都可能不一样。一般情况下随机森林随机地生成几百个至几千个分类树然后选择重复程度最高的树作为最终结果。 随机森林通过产生大量的分类树建立若干自变量X和一个因变量Y的关系。随机森林的优点是它的学习过程很快。在处理很大的数据时它依旧非常高效。随机森林可以处理大量的多达几千个的自变量。现有的随机森林算法评估所有变量的重要性而不需要顾虑一般回归问题面临的多元共线性的问题。它包含估计缺失值的算法如果有一部分的资料遗失仍可以维持一定的准确度。随机森林中分类树的算法自然地包括了变量的交互作用interaction即X1的变化导致X2对Y的作用发生改变。交互作用在其他模型中如逻辑斯蒂回归因其复杂性经常被忽略。随机森林对离群值不敏感在随机干扰较多的情况下表现稳健。随机森林不易产生对数据的过度拟合overfit然而这点尚有争议。 随机森林通过袋外误差out-of-bag error估计模型的误差。对于分类问题误差是分类的错误率对于回归问题误差是残差的方差。随机森林的每棵分类树都是对原始记录进行有放回的重抽样后生成的。每次重抽样大约1/3的记录没有被抽取。没有被抽取的自然形成一个对照数据集。所以随机森林不需要另外预留部分数据做交叉验证其本身的算法类似交叉验证而且袋外误差是对预测误差的无偏估计随机森林的缺点是它的算法倾向于观测值较多的类别如果昆虫B的记录较多而且昆虫A、B和C间的差距不大预测值会倾向于B。另外随机森林中水平较多的分类属性的自变量如土地利用类型 20个类别比水平较少的分类属性的自变量气候区类型10个类别对模型的影响大。总之随机森林功能强大而又简单易用相信它会对各行各业的数据分析产生积极的推动作用。 三、实验数据 3.1 数据说明 实验训练 word2vec 模型的语料爬虫采集自当当图书评论京东商品评论携程用户评论以及豆瓣电影评论去重后保留 20 000 条数据包括 10000条积极评论和10000条消极评论。为了进行实验将积极和消极的数据集各分为两份其中 80作为训练集余下20作为测试集数据样例如表所示。 实验数据 积   极 感觉手写识别能力强26TFT屏幕效果很好64的YMAHA声音也不错很好听 信号好闹铃中有一星期中具体某几日响铃很方便了显示屏在强光下比以前那个明显清晰 听音乐和相片拍摄及编辑功能非常强。 1.相片拍摄及编辑功能实为超强。2.所拍影像整体色彩以及清晰度都比较理想。 外观很独特给人耳目一新的感觉而且导航键很方便平常的操作。按键手感也不错。16和弦铃声效果还可以声音也比较大。 这本书我想应该大部分人都看过感觉挺好的 交通很方便房间小了一点但是干净整洁很有香港的特色性价比较高。 笑得开心那就够了。 笑到不行喜剧就要有喜剧的样子笑中带泪很想二刷的一部电影不错 五星好评必须支持 前笑后泪非常动人非常真实的电影 走在去二刷的路上能够大家一起坐下来笑笑不容易了。 消   极 机子没发现什么缺点就是京东的服务好像不怎么的5号就完成了付款订单到今天才完成 很后悔买这本书觉得并非作者自己的观点体会而是东拼西凑来的。想吐的感觉。心情指数为什么没“气愤”可选 2.现在为什么订单要等货物审核才可以支付我要老等的。我就直接网上支付不行的。 3.电话服务老让人等的请增加服务人数 感觉内容很虚泛泛而谈没有介绍的那么吸引我有点失望 质量和速度是不错啦,就是圆通快递太差啦,单上注明是本人签收的,可快递员随便一个人就给签啦,一点责任感都没有! 毫无疑问是烂片。 故事老套强行煽情后边真的太拖拉了 笑料还算有点意思但觉得价值观问题很大直导致该片完全是无意义的扯淡 完全get不到笑点…但看的确实特烦 不喜欢就是不喜欢 3.2评价标准 本文情感分类的评价指标采用精度Precision、召回率Recall、F-score。下表是两分类分类器的 混 淆 矩 阵Confusion Matrix 其 中 TPTrue Positive表示实际为正类、预测也为正类的文本数量FN 表示实际为正类、预测为反类的文本数量FP 表示实际为反类、预测为正类的文本数量TN表示实际为反类、预测也为反类的文本数量。 数据类别 预测正例 预测反例 实际正例 TP FN 实际反例 FP TN 四、实验步骤 1 .首先导入本次实验用到的第三方库 from sklearn.model_selection import train_test_split import numpy as np import pandas as pd import jieba as jb from sklearn.externals import joblib from sklearn.svm import SVC from gensim.models.word2vec import Word2Vec from sklearn.ensemble import RandomForestClassifier from sklearn import metrics2.  加载数据使用jieba将数据进行分词将正反样本拼接然后创建全是0和全是1的向量拼接起来作为标签 #读取数据文件 neg pd.read_excel(data/neg.xlsx, headerNone) pos pd.read_excel(data/pos.xlsx, headerNone) # 这两类数据都是x值 neg[words] neg[0].apply(lambda x: jieba.lcut(x)) pos[words] pos[0].apply(lambda x: jieba.lcut(x)) #需要y值 0 代表neg 1代表是pos x np.concatenate((pos[words],neg[words])) y np.concatenate((np.ones(len(pos)),np.zeros(len(neg)))) #拆分训练集和测试集 x_train,x_test,y_train,y_test train_test_split(x,y,test_size0.2,random_state3) #保存数据 np.save(dataset/y_train.npy,y_train) np.save(dataset/y_test.npy,y_test)3.定义生成每一个句子vec的函数 def build_vector(text,size,w2v):#创建一个指定大小的数据空间vec np.zeros(size).reshape((1,size))#count是统计有多少词向量count 0#循环所有的词向量进行求和for w in text:try:vec w2v[w].reshape((1,size))count 1except:continue#循环完成后求均值if count!0:vec/countreturn vec4 .计算词向量 #初始化模型和词表 w2v Word2Vec(size300,min_count10) w2v.build_vocab(x_train) # 训练并建模 w2v.train(x_train,total_examplesw2v.corpus_count, epochsw2v.iter) #获取train_vecs train_vecs np.concatenate([ build_vector(z,300,w2v) for z in x_train]) #保存处理后的词向量 np.save(dataset/train_vecs.npy,train_vecs) #保存模型 w2v.save(dataset/w2v_model.pkl) w2v.train(x_test,total_examplesw2v.corpus_count, epochsw2v.iter) test_vecs np.concatenate([build_vector(z,300,w2v) for z in x_test]) np.save(dataset/test_vecs.npy,test_vecs)5.训练SVM/RF模型 #创建SVC模型/RF模型 cls SVC(kernelrbf,verboseTrue) cls RandomForestClassifier() #训练模型 cls.fit(train_vecs,y_train) #保存模型 joblib.dump(cls,dataset/svm_model.pkl) joblib.dump(cls,dataset/RF_model.pkl)6.对训练得出的模型进行评估 y_pred cls.predict(test_vecs) #模型评估 print(准确率:, metrics.accuracy_score(y_test, y_pred)) #预测准确率输出 #计算宏平均、微平均、加权平均精确率输出 print(宏平均精确率:,metrics.precision_score(y_test,y_pred,averagemacro)) print(微平均精确率:, metrics.precision_score(y_test, y_pred, averagemicro)) print(加权平均精确率:, metrics.precision_score(y_test, y_pred, averageweighted)) #计算宏平均、微平均、加权平均召回率输出 print(宏平均召回率:,metrics.recall_score(y_test,y_pred,averagemacro)) print(微平均召回率:,metrics.recall_score(y_test,y_pred,averagemicro)) print(加权平均召回率:,metrics.recall_score(y_test,y_pred,averageweighted)) #计算宏平均、微平均、加权平均f1-score输出 print(宏平均F1-score:,metrics.f1_score(y_test,y_pred,labels[0,1],averagemacro)) print(微平均F1-score:,metrics.f1_score(y_test,y_pred,labels[0,1],averagemicro)) print(加权平均F1-score:,metrics.f1_score(y_test,y_pred,labels[0,1],averageweighted)) print(混淆矩阵输出:\n,metrics.confusion_matrix(y_test,y_pred))#混淆矩阵输出 print(分类报告:\n, metrics.classification_report(y_test, y_pred))#分类报告五、实验结果与分析 5.1 SVM模型评估结果 5.2随机森林模型评估结果 通过对同一评论数据集采用word2vec生成词向量然后分别采用支持向量机和随机森林两种算法训练并建立模型然后用测试集对两个模型进行评估。分别得出如上图所示结果。通过对两组数据进行对比可以得出支持向量机模型的精确率召回率以及F1值均大于随机森林模型的评估结果。因此可得出支持向量机训练所建立的模型取得的效果更好。 通过网络爬虫采集了电影《你好李焕英》的豆瓣短评483条采用支持向量机所训练得出的分类模型进行判断。部分典型结果如下表所示 评论内容 判断结果 判断正误 “你以为自己已经很爱很爱妈妈了妈妈却远比想象中更爱更爱你。你以为自己是在为妈妈圆梦没成想只是她陪你做了一场好梦。” [积极] 正确 “观众已经笑得不行了” [消极] 错误 说实话吧这要都算电影电影的门槛是太低了点。 [消极] 正确 在夏洛特烦恼的穿越梗用得已经烂大街的时候贾玲用亲情再次焕发了生机 [积极] 正确 什么电影手法在真挚感人面前不重要 [消极] 错误 不知道有多尴尬 全程尬笑 [消极] 正确 我宝那一句真的泪奔了五星好评前面笑点不尬后面反转真的流泪了… [消极] 错误 没有刻意的笑点没有刻意的煽情淳朴自然。最后的反转锦上添花我哭的一塌糊涂 好喜欢贾玲张小斐我宝 [消极] 错误 看懂的人是幸福的。 [积极] 正确 任何时候真心都是最打动人的。 [消极] 错误 根据上表分析该模型对大部分评论可以很好的进行情感分类尤其是采用了比较明显的表达积极或者消极情绪的词汇的评论可以做到很好的分类。而对一部分评论比如“看哭了”“笑得不行”等出现了分类错误。另外对于一些不是很明显偏向于中性的评论以及过长的评论容易出现分类错误。根据分析认为存在数据集中此类表述不够多的原因导致模型对此类评论不能做到很准确的分类。总的来说该模型对大部分评论能够做到较好的分类基本上达到了实验目标。 六、实验总结 通过做本次情感分析的项目实战学习并了解了word2vec生成词向量的相关原理同时学习了支持向量机与随机森林算法在解决文本分类问题中的应用。虽然在通过python编程进行实现的过程中也遇到过一些困难和疑惑最终都通过自己查阅相关资料并在老师的悉心指导下以及和同学的交流过程中得以解决。本次项目虽然经过了不懈得努力得以完成但仍有不足之处在之后得学习中我会继续学习与文本情感分析相关的算法并将其加以应用以期更好的解决文本情感分析相关问题。 文末推荐与福利 《AI时代项目经理成长之道》与《AI时代产品经理升级之道》二选一免费包邮送出3本 ​ 内容简介 《AI时代项目经理成长之道》         本书是一本致力于揭示人工智能如何颠覆和重塑项目管理并以ChatGPT为核心工具推动项目管理创新的实用指南。本书通过 13 章的系统探讨带领读者踏上项目管理卓越之路。         第 1 章人工智能颠覆与重塑项目管理首先揭示了人工智能对项目管理的深刻影响和带来的机遇与挑战为读者构建了认知框架。紧接着第 2 章至第 13 章依次介绍了使用ChatGPT编写各种文档、在项目启动中的应用、帮助组建高效团队、辅助项目沟通管理、项目计划与管理、项目成本管理、项目时间管理、项目质量管理、项目风险管理、采购计划与采购流程、项目绩效管理以及辅助进行项目总结等各方面的内容。         本书注重理论与实践的结合每章都以具体案例、实用技巧和最佳实践为基础帮助读者深入了解ChatGPT的应用场景掌握在项目管理中实际运用的方法和策略。无论您是初入职场的新手项目经理还是经验丰富的专业人士本书都将成为您的导航指南帮助您在人工智能时代展现卓越的项目管理和创新能力并在日常工作中取得更加优 异的成果。 购买链接 当当网链接http://product.dangdang.com/29621634.html 京东的链接https://item.jd.com/14129232.html 《AI时代产品经理升级之道》         本书是一本面向产品经理的实用新书分 12 章系统探讨如何用ChatGPT提升产品管理工作的效率和质量。         第 1 章介绍了人工智能对产品管理的影响第 2 章介绍用ChatGPT提高文档写作效率第 3 章介绍用ChatGPT进行竞品和市场分析第 4 章介绍用ChatGPT优化需求管理第 5 章介绍用ChatGPT分析产品数据第 6 章介绍用ChatGPT改进用户体验第 7 章介绍用ChatGPT设计产品原型第 8 章介绍用ChatGPT管理产品项目第 9 章介绍用ChatGPT测试和控制产品质量第 10 章介绍用ChatGPT发布和运营产品第 11 章介绍用ChatGPT驱动产品创新第12 章介绍用ChatGPT维护和支持产品。         通过本书的理论和实践指导产品经理可以在AI时代高效利用ChatGPT全流程提升产品管理能力从而取得更好的工作成果。本书将帮助产品经理在激烈竞争的环境中站稳脚跟获得持续成功。 购买链接 当当网链接http://product.dangdang.com/29634895.html 京东的链接https://item.jd.com/14194202.html 抽奖方式评论区随机抽取3位小伙伴免费送出参与方式关注博主、点赞、收藏、评论区评论“人生苦短拒绝内卷”切记要点赞收藏否则抽奖无效每个人最多评论三次活动截止时间2023-12-3 20:00:00 名单公布时间2023-12-3 21:00:00  源代码 model-train.py from sklearn.model_selection import train_test_split import numpy as np import pandas as pd import jieba as jb from sklearn.externals import joblib from sklearn.svm import SVC from sklearn.metrics import confusion_matrix from sklearn.metrics import classification_report from gensim.models.word2vec import Word2Vec from sklearn.model_selection import cross_val_score from sklearn import metricsneg pd.read_excel(dataset/800neg.xlsx,headerNone,indexNone) pos pd.read_excel(dataset/800pos.xlsx,headerNone,indexNone) # 这是两类数据都是x值 pos[words] pos[0].apply(lambda x:list(jb.cut(x))) neg[words] neg[0].apply(lambda x:list(jb.cut(x))) #需要y值 0 代表neg 1代表是pos y np.concatenate((np.ones(len(pos)),np.zeros(len(neg)))) x np.concatenate((pos[words],neg[words])) x_train,x_test,y_train,y_test train_test_split(x,y,test_size0.2,random_state3) #保存数据 np.save(dataset/y_train.npy,y_train) np.save(dataset/y_test.npy,y_test)def build_vector(text,size,w2v):#创建一个指定大小的数据空间vec np.zeros(size).reshape((1,size))#count是统计有多少词向量count 0#循环所有的词向量进行求和for w in text:try:vec w2v[w].reshape((1,size))count 1except:continue #循环完成后求均值if count!0:vec/countreturn vec#初始化模型和词表 w2v Word2Vec(size300,min_count10) w2v.build_vocab(x_train) # 训练并建模 w2v.train(x_train,total_examplesw2v.corpus_count, epochsw2v.iter) #获取train_vecs train_vecs np.concatenate([ build_vector(z,300,w2v) for z in x_train]) #保存处理后的词向量 np.save(dataset/train_vecs.npy,train_vecs) #保存模型 w2v.save(dataset/w2v_model.pkl) w2v.train(x_test,total_examplesw2v.corpus_count, epochsw2v.iter) test_vecs np.concatenate([build_vector(z,300,w2v) for z in x_test]) np.save(dataset/test_vecs.npy,test_vecs)#创建SVC模型 cls SVC(kernelrbf,verboseTrue) cls RandomForestClassifier() #训练模型 cls.fit(train_vecs,y_train) #保存模型 joblib.dump(cls,dataset/svm_model.pkl) joblib.dump(cls,dataset/RF_model.pkl) y_pred cls.predict(test_vecs) #模型评估 print(准确率:, metrics.accuracy_score(y_test, y_pred)) #计算准确率输出 print(宏平均精确率:,metrics.precision_score(y_test,y_pred,averagemacro)) #计算宏平均精确率输出 print(微平均精确率:, metrics.precision_score(y_test, y_pred, averagemicro)) #计算微平均精确率输出 print(加权平均精确率:, metrics.precision_score(y_test, y_pred, averageweighted)) #计算加权平均精确率输出 print(宏平均召回率:,metrics.recall_score(y_test,y_pred,averagemacro))#计算宏平均召回率输出 print(微平均召回率:,metrics.recall_score(y_test,y_pred,averagemicro))#计算微平均召回率输出 print(加权平均召回率:,metrics.recall_score(y_test,y_pred,averageweighted))#计算加权平均召回率输出print(宏平均F1-score:,metrics.f1_score(y_test,y_pred,labels[0,1],averagemacro))#计算宏平均f1-score输出 print(微平均F1-score:,metrics.f1_score(y_test,y_pred,labels[0,1],averagemicro))#计算微平均f1-score输出 print(加权平均F1-score:,metrics.f1_score(y_test,y_pred,labels[0,1],averageweighted))#计算加权平均f1-score输出 print(混淆矩阵输出:\n,metrics.confusion_matrix(y_test,y_pred))#混淆矩阵输出 print(分类报告:\n, metrics.classification_report(y_test, y_pred))#分类报告test.py import jieba import numpy as np import pandas as pd from gensim.models.word2vec import Word2Vec from sklearn.externals import joblib from sklearn.model_selection import cross_val_score from sklearn.svm import SVC from sklearn.ensemble import RandomForestClassifiermodel joblib.load(dataset/svm_model.pkl) #model joblib.load(dataset/RF_model.pkl)def total_vec(words):w2v joblib.load(dataset/w2v_model.pkl)vec np.zeros(300).reshape((1,300))count 0for word in words:try:vec w2v.wv[word].reshape((1,300))count 1except KeyError:continue#循环完成后求均值if count!0:vec/countreturn vecdef svm_predict():#读取数据df pd.read_excel(dataset/comments.xlsx)#读取支持向量机模型comment_sentiment []for string in df[评论内容]:#对评论分词words jieba.lcut(str(string))words_vec total_vec(words)result model.predict(words_vec)comment_sentiment.append(积极 if int(result[0]) else 消极)if int(result[0]) 1:print(string,[积极])else:print(string,[消极]) comment_sentiment [] svm_predict()
http://www.zqtcl.cn/news/376499/

相关文章:

  • python开发做网站代理注册公司怎么样
  • 网站开发技术简介深圳市市场监督管理局官网
  • 有那种网站的浏览器wordpress调用当前分类文章
  • 电子商务网站推广论文网站规划思想方法有哪些内容
  • adsl做网站无锡免费网站制作
  • 怎么利用网站开发app免费软件库合集软件资料网站
  • 做变形字的网站工程公司简介模板
  • 网站建设网页怎么排列顺序网站制作 用户登录系统
  • 音乐网站用什么语言做深圳网站排名优化公司
  • h5响应式网站建设方案南京做微网站
  • 建设班级网站首页查注册公司什么网站
  • 中小企业网站建设平台网站开发技术大学教材
  • 有四川建设人才网这个网站吗青岛外贸网站运营哪家好
  • 网站建设j介绍ppt模板注册企业公司流程及费用
  • 建网站多少费用设计公司推荐
  • 东莞市营销网站建设哪个推广网站好
  • 上海青浦房地产网站建设广西建设人才网
  • 做网站的网络公司税收优惠推广优化关键词
  • 找能做网站的怎么查看网站备案号
  • 石嘴山北京网站建设h5网站建设
  • 滨州区建设局网站中国建行官网首页
  • 网站建设服务网站网站建设销售实习
  • 网站注册都需要什么给装修公司做推广的网站
  • me域名的网站wordpress 扩展字段
  • 新开三端互通传奇网站企业推广方式有哪些
  • 怎么制作网站页面做理论的网站
  • 哪家公司做跳转网站wordpress 网页缩放
  • 小说网站建设的支柱深圳建设发展集团有限公司
  • 陕西高速公路建设网站做网站不用编程
  • wordpress网站秒开网站建设设计理念