云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

京东云_手机照片云存储_试用

小七 141 0

云数据库备份_表较好的_全球人工智能技术

分析是不断发展的;随着数据集变得越来越大、越来越复杂,只有人工智能、物化视图和更复杂的编码语言才能从中获得洞察力。在下一步行动中,我们将深入研究高级分析技术为下一轮创新浪潮铺路的方式。机器学习(ML)是指利用现有的数据、计算能力和有效的算法来识别数据中的模式,在这些模式再次出现时识别这些模式,并根据这些模式正确预测结果。在ML中经常遇到的一类问题是分类问题。在这些问题中,我们试图预测一个对象或一个事件是否属于某个类别。分类问题的一些例子包括检测信用卡交易是否欺诈,检测电子邮件是否为垃圾邮件,以及检测客户是否可能流失情感分析是一个分类问题,数据团队试图预测文本的语气是积极的还是消极的。许多公司使用情绪分析来自动分析产品评论、社交媒体评论和调查响应,网站用云服务器,以量化对其产品和服务的反馈。在本文中,我们将在使用SQL准备文本数据之后使用Python构建一个情感分析器。我们将使用naivebayes算法,一个流行的情绪分析算法。我们开始吧ML学习过程ML过程包括三个主要步骤-准备数据、训练模型和测试模型。模型经过测试后,就可以进行部署了。一旦模型被部署,智能物联网,应用程序就会使用这个模型来回答一个问题——在本例中,我们将确定文本是正数还是负数。但它并不止于此,ML过程是非常迭代的。一个成功的模型需要不断的测试,训练,并随着世界的变化而重新创造!准备数据任何ML过程的第一步都是准备训练数据。我们将使用UCI机器学习库中的情感标记句子数据集。该数据集包含来自Amazon、IMDB和Yelp的用户评论,以及关于每个评论是正的(分数为1)还是阴性(分数为0)的判断。数据集以CSV形式提供,因此我们可以使用CSV上传功能导入数据导入数据后,需要对其进行清理以删除重复数据和丢失的数据。这最好使用SQL来完成,SQL是数据分析人员最常用的语言。下面是我为ML分析准备此数据集时使用的SQL:选择回顾,情感从【亚马逊政府评论】联盟选择回顾,国内云服务器,情感从【govind_yelp_餐厅评论】联盟选择回顾,情感从【govin_imdb_电影评论】哪里审核不为空感情也不是空的一旦数据被清理干净,我们将使用它作为我们的培训数据。它已经准备好输入到我们的ML算法(naivebayes)中来构建我们的模型。在我们开始之前,让我花点时间解释一下naivebayes算法。了解天真的贝耶斯培训阶段如果我们从标注的句子数据集中随机抽取一个评论,它的正概率是P,负概率是1-P。评论是由单词组成的。利用一个词在所有评论中的出现频率,我们可以计算出每个词的正分和负分。例如,这里是P,N的计算,以及"爱"一词的正负分P=正面评价数/总评价数n=1–P正分("爱")=正面评论中"爱"的频率之和/所有评论中"爱"的频率之和负分数("爱")=1-正分("爱")在浏览完我们的整个训练数据之后,我们将得到P&N,在数据集中随机选取的任何评论的概率分别为正和负,以及训练数据中每个单词的正分和负分。假设在我们的训练阶段结束时,P为60%,N为40%,正分("Love")为90%,正分数("Sisense")为80%。试验阶段给出一个新的评论,算法现在根据评论中的单个单词来确定该评论的正分数和负分数。如果阳性分数大于阴性分数,则将整个评估视为阳性。 为了计算评论的正负分,物联网门锁,我们的模型使用在训练阶段获得的信息。例如,正分("Love Sisense")=正分("Love")*正分("Sisense")*P负分("Love Sisense")=(1-正分("Love"))*(1-正分("Sisense"))*(1-P)正分("Love Sisense")=0.9*0.8*0.6=0.43负分("Love Sisense")=0.1*0.2*0.4=0.008因此,《爱西森斯》被列为正面评论。独立于Bayes算法的正数或负数贡献了Bayes算法。它不考虑单词之间的依赖关系。尽管如此,naivebayes是一个强大的算法,它可以产生强大的结果,大数据的未来,特别是当我们没有大量的训练数据或问题域的大量信息时。建立模型让我们回到使用naivebayes算法构建我们的模型。我们的SQL查询的输出可以作为dataframe(df)使用。构建naivebayes模型的第一步是用术语频率表示法来表示每个评论。Skikit学习包有一个名为CountVectorizer的内置对象,它将我们的评论表示为一个术语频率矩阵。#SQL输出作为名为"df"的数据帧变量导入将熊猫作为pd导入进口sklearn.feature_提取.text作为skltext进口朴素的贝耶斯作为sklnbreviews=df['REVIEW']情感=df["情感"]计数矢量器=skltext.CountVectorizer(binary='true')转换的_reviews=计数_vectorizer.fit_变换(评论)打印(转换_评论.形状)每个评论都被转换成4812个数字的元组,这是数据集中唯一单词的数量。在4812个数字中,有许多将是0,因为他们不会出现在一个审查。如果我们打印任何一个评论,我们只得到元素是1。Skikit学习包还包含naivebayes分类器的算法。我们实例化了这个分类器(BernoulliNB),并将术语频率表示中的评论与情感一起传递给fit方法。这就建立了一个能够将文本分为正反两类的模型将熊猫作为pd导入进口sklearn.feature_提取.text作为skltext进口朴素的贝耶斯作为sklnbreviews=df['REVIEW']情感=df["情感"]计数矢量器=skltext.CountVectorizer(binary='true')转换的_reviews=计数_vectorizer.fit_变换(评论)分类器=贝努林布().适合(转变后的评论、观点)测试模型现在模型已经建立好了,我们准备测试它。这是通过调用分类器上的predict方法并通过review来测试术语频率表示来完成的。该方法返回评审是肯定的还是否定的将熊猫作为pd导入进口sklearn.feature_提取.text作为skltext进口朴素的贝耶斯作为sklnbreviews=df['REVIEW']情感=df["情感"]计数矢量器=skltext.CountVectorizer(binary='true')转换的_reviews=计数_vectorizer.fit_变换(评论)分类器=贝努林布转变后的评论(美国版)结果=分类器。预测(计数_矢量器.transform(['I love sissense']))sisense.文本(‘阳性’)如果结果==1 elsesisense.文本("阴性")我们不必每次修改Python代码来提供用于测试的文本,而是可以设置一个过滤器,用户可以自由输入或从数据源加载,并将过滤器中的文本传递到我们的分析代码中。设置好过滤器之后,我们修改SQL以将过滤器中的输入值传递到Python代码中。选择回顾,情感,'[InputText]'作为InputText从【亚马逊政府评论】联盟选择回顾,情感,'[InputText]'作为InputText从【govind_yelp_餐厅评论】联盟选择回顾,情感,'[InputText]'作为InputText从【govin_imdb_电影评论】哪里审核不为空感情也不是空的然后在Python代码中,我们将测试文本"我爱Sisense"替换为通过数据帧接收的过滤器输入df['INPUTTEXT'][0]结果=分类器。预测(计数_矢量器.transform([df['INPUTTEXT'][0]]))这使得我们现在可以通过直接从用户界面输入文本来测试我们的情绪分析器。摘要使用几行SQL,我们准备好要分析的数据;使用几行Python,我们训练了一个能够分析文本情绪的模型。这显示了我们手中的工具的强大功能,这些工具可以帮助我们今天进行数据分析。Sisense for Cloud Data Teams支持许多用于数据分析和可视化的R和Python库,准备好并等待您的下一个数据项目!Govind Rajagopalan是Sisense的高级工程经理。标签:高级分析|云数据团队|数据工程师|数据准备|数据团队| Python |情绪分析| SQL