ADM-201 dump PMP dumps pdf SSCP exam materials CBAP exam sample questions

通过推特数据进行文本情感分析 – 译学馆
未登录,请登录后再发表信息
最新评论 (0)
播放视频

通过推特数据进行文本情感分析

Twitter Sentiment Analysis - Learn Python for Data Science #2

去我的YouTube频道
看更多超酷的科研视频
大家好 我是西拉杰
这节课 我们要学习用python脚本
写14行代码
利用自然语言处理库TextBlob
分析推特上人们对于某个话题的看法
我觉得有些人让我困惑 比如
为什么2016大选这么多人支持特朗普?
为啥男人就得喝啤酒 女人就得喝果汁?
为啥人们会觉得某样东西美?
“美”到底是什么?
配乐很美
人类的偏好是几乎无法预测的
我们创造了心理学和社会学等科学类别
来帮助我们研究人类偏好
二者都是研究人类的科学
以及人类表现出的情感 关系 行为
传统上 心理学家会
先提出假设
然后再找一些符合条件的志愿者
把他们带到实验室 进行测试
并记录结果
但是如果有数据
我们数据科学家也能做到
用的就是最好的心理学工具――推特
推特上有大量的情感信息
每时每刻 世界各地的人都在推特上
针对每个话题发表自己的反应 观点
推特就像一个大的心理学数据库
时刻都在更新
有了机器学习的力量
我们能在很短时间内分析上百万条数据
啊……
那 怎么进行情感分析呢?
我们收到一条信息后 比如一条推文
要把这条消息分解成若干单词或句子
这个过程叫做符号化
因为我们是从一段长文本创造符号
文本符号化后 我们可以数一下
每个单词在文本中出现的次数
这就是词袋模型
接着在事先记录好的情绪词典中
查询每个词的情绪值
计算整条推文的情绪值
要完成我们的工作
首先要注册推特API
然后安装依赖项
最后写情感分析器的脚本
我们首先来看注册推特API
API或者应用程序编程接口
让我们能访问一些服务器的内部功能
在我们这就是推特
使用推特API
我们可以在自己的程序上读写推文内容
我们来用浏览器注册一个推特API
首先我们得有一个自己的推特帐号
绑定手机号
有了这个 我们就能
创建第一个推特应用程序
选择“创建新应用”图标
输入程序的名字 描述以及一个网址
网址那一栏就像一个文科学位 没啥用
然后点击底部的“创建”按钮 创建程序
点击程序 可以查看密钥和访问令牌
在之后的脚本中 我们会使用这些密钥
让Twitter给我们授权或向其证明我们的身份
现在我们来安装依赖项
第一个依赖叫tweepy
是可以访问推特API的开发库
另外一个依赖叫TextBlob
我们用它来进行情感分析
在讲解代码前
我们先在终端中的python解释器中
写一段TextBlob演示程序
输入python可以启动解释器
现在可以直接在终端写python代码
首先导入TextBlob
之后创建第一个TextBlob对象
下面是一小段文本
我们给blob对象命名
把文本以字符串的形式赋值给它
字符串为:
西拉杰很生气
他在Tinder上从来没有过好的匹配
现在我们有了blob变量
如果你想知道词性
可以查看tags属性
如果想要分词和分句
可以查看words属性
查看这句话的情感分析结果也很容易
只要输入sentiment.polarity就可以了
结果会在-1到1之间
言归正传 首先我们要创建4个变量
用来通过推特的身份验证
这4个变量可以在操作界面找到
可以直接复制粘贴过来
我们来进行推特的身份验证
也就是通过代码来登录
要通过验证 我们得创建一个变量叫auth
还得使用tweepy的OauthHandler函数
该函数有两个参数
分别是用户密钥和用户机密
这个函数已经在tweepy库中定义
包含一堆我们看不到的代码
我们不需要了解其中的细节
只要调用函数就能使用它所有的功能
不管参数值是什么
它们都是函数用来进行内部计算的
这样我们的验证过程就完成了一半
另外一半需要调用auth变量的set_access_token函数
它有两个参数
访问令牌和访问令牌机密
这样 我们就创建了身份验证变量
现在我们要创建主变量
用它来完成所有的推特魔法
我们将它命名为api
使用tweepy.API函数给其赋值
该函数的唯一参数是身份验证变量
我们把它填在这里
现在我们有api变量
可以使用很多不同的函数
而我们要做的就是搜索推文
搜索的是包含特定关键词的推文
为此 我们来创建一个公共推文变量
来存储一系列的推文内容
为了得到推文内容
要用api变量的搜索函数
它只有一个参数
我们把它设置为“特朗普”
该函数会返回一些包含“特朗普”的推文
我们可以把这些推文打印到终端
为此要创建一个for循环
代码为for tweet in public_tweets:
for循环会访问列表中的所有元素
现在的问题是
我们怎么处理这些推特文呢?
我们把它打印出来
每条推文都有自己的文本属性
也就是它的字符串版本
因此输入print(tweet.text)
现在要来进行情感分析了
我们先创建一个变量叫analysis
调用TextBlob
将其参数设置为推文文本字符串
之后我们就能打印
analysis变量的情感属性了
我们能看到与特朗普有关的推文
以及对其情感的分析
polarity衡量文本消极或积极的程度
subjectivity衡量
文本是主观或客观
分开来看
情感分析就是从数据中提取并且
理解人类情感
API让我们能从自己的应用程序上
访问一些服务器比如推特的内部功能
python的textblob库
让我们用几行代码就能进行情感分析
我们的情感分析器能做的还有很多
本周的挑战就是将这个代码进行扩展
让它能处理任意选定主题的推文内容
并且生成有标签的CSV文件
具体要求在说明文档中
在评论中留下你的github链接
我会在下周视频中宣布冠军
上节课中性别分类挑战的获胜者是
Naresh Nagabushan
我尤其喜欢他在最后创建词典
来分别存储三个分类器的结果
之后再用argmax函数输出最优解
避免了使用一堆if-then语句
上周的大牛
第二名是Victor Mazzei
代码非常简洁
更多信息可以点击描述中的链接
订阅可以观看更多视频哦
现在我要去……
西拉杰 总统来电话了
你是我们唯一的希望
我要去拯救世界了
那么……感谢观看

发表评论

译制信息
视频概述

使用python和推特API,对推特上的文本进行情感分析

听录译者

收集自网络

翻译译者

想念

审核员

审核员#LN

视频来源

https://www.youtube.com/watch?v=o_OZdbCzHUA

相关推荐