需求分析的方法有哪些(关于情感分析的文章)

文章插图
动机:作为我为了更好地理解NLP的个人旅程的一部分,我决定从头开始构建一个Twitter scroller。我相信这样的项目可能在不同领域有很大帮助 。
NLP是什么?自然语言处理(NLP)指的是我们人类相互交流的方式 。即语音和文本 。是计算机分析、理解和产生人类语言(包括语音)能力 。NLP是计算机程序在口头或书面上理解人类语言的能力 。NLP是人工智能(AI)的一个组成部分,许多研究都是为了让这些工具以正常的方式与人类交流 。

文章插图
NLP有用的领域:
- 企业搜索是组织内有组织和非结构化数据的有组织检索 。
- 解释自由文本并使其可分析存储在自由文本文件中的大量信息 。例如,患者的医疗记录 。
- 观点挖掘是一种NLP,用来跟踪公众对某一特定产品的情感并找出市场的正确位置 。
这就是为什么我只选择了这些流行库,它们可以处理各种各样的任务,比如词性标注、情感分析、文档分类、主题建模等等 。
- NLTK:这是最着名的Python NLP库,它带来了该领域令人难以置信的突破 。NLTK也很受教育和研究的欢迎 。NLTK拥有超过50个语料库和词典,9个词干分析器和数十种算法可供选择 。然而,这也是NLTK的主要缺点之一 。它很沉重,并且学习曲线陡峭 。第二个主要缺点是它很慢而且没有生产准备就绪 。
- TextBlob:TextBlob通过为NLTK提供直观的界面,使文本处理变得简单 。这是一个非常可靠的Python NLP库阵容的一个受欢迎的补充,因为它具有温和的学习曲线,同时拥有惊人的功能 。这就是为什么我在我的项目中选择了这个库 。

文章插图
TextBLob Sentiment Analysis
- spaCy:因为它是基于Cython构建的,所以它也是闪电般快速的 。人们称spaCy为“最先进的” 。它的主要弱点是它目前只支持英语 。
- 收集数据:使用Twitter API获取有关特定搜索词的推文列表
from tweepy import Stream
from tweepy import OAuthHandler
import tweepy
from tweepy.streaming import StreamListener
consumer_key=""
consumer_secret=""
access_token=""
access_secret=""
auth = OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_secret)
api = tweepy.API(auth)
#Get a list of tweets:
public_tweets = api.search(query)
- 清理数据:由于数据是以原始状态收集的,我们需要将它们以某种格式开始进行情绪分析; 为此,我们必须引入一些变化:
import re
pattern1 = re.compile('http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*(),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+')
pattern2 = re.compile('RT @:?(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*(),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+')
#Foreach Element we should introduce our cleaning Process
for tweet in public_tweets:
tweet.text = pattern1.sub('', tweet.text)
tweet.text = pattern2.sub('', tweet.text)
str(tweet.text)
- 现在,我们准备提取并应用情绪分析算法:事实上,TextBlob将提供我们列表中每个tweet的极性和主观性 。
from tweepy import Stream结果:NLP是人工智能的一个非常有前途的领域,但具有挑战性,但将为人类带来一个新的时代 。
from tweepy import OAuthHandler
import tweepy
from tweepy.streaming import StreamListener
from textblob import TextBlob
import pandas as pd
import re
consumer_key=""
consumer_secret=""
access_token=""
access_secret=""
auth = OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_secret)
api = tweepy.API(auth)
pd = pd.DataFrame( columns=('Tweets', 'Polarity', 'Subjectivity'))
def CollectingTweets(query):
public_tweets = api.search(query)
tw = []
pl = []
su = []
pattern1 = re.compile('http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*(),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+')
pattern2 = re.compile('RT @:?(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*(),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+')
for tweet in public_tweets:
tweet.text = pattern1.sub('', tweet.text)
tweet.text = pattern2.sub('', tweet.text)
str(tweet.text)
sent = TextBlob(tweet.text)
tw.append(tweet.text)
pl.append(sent.sentiment.polarity)
su.append(sent.sentiment.subjectivity)
pd['Tweets'] = tw
pd['Polarity'] = pl
pd['Subjectivity'] = su
return pd
def GetPolarityMean():
return pd['Polarity'].mean()
def GetSubjectivityMean():
return pd['Subjectivity'].mean()
def GetPolarityCount():
return pd[pd['Polarity']<=0].count().Polarity
def GetSubjectivityCount():
return pd[pd['Subjectivity']<=0].count().Subjectivity
【需求分析的方法有哪些(关于情感分析的文章)】
def GetTweetCount():
return pd.count().Tweets
- 亲爱的自己(亲爱的她们)
- 孕妇|孕妇生下罕见“双头婴”,众人都来围观,专家的话却令人担忧
- 当男人恋爱时解析(女主喜欢男二的韩剧)
- 绒毛促性腺激素|孕妇可以吃草莓吗?吃草莓的好处要知道,并非补铁补血那么简单
- 畸形|怀孕后不能玩手机虽然可能会导致胎宝畸形,但没你想的那么可怕
- 霸道校草的拽丫头免费观看(霸道校草的拽丫头结局)
- 孕妈|临近预产期,每周一次的胎心监护做还是不做?认识到这两点很重要
- 妈妈|孕期有6种情况表明可能怀的是男宝,中三条以上的,迎接小王子吧
- 穿山甲|新一届的孕妈迷信行为大赏,第一个就是重灾区
- 占地方|养娃后钱都去哪了这些“鸡肋”的母婴用品,希望你没买过!
