大数跨境

如何快速辨别海量真假新闻?

如何快速辨别海量真假新闻? Atlas OS
2020-10-13
1
导读:达仁云主机丨超简单入门Python的sklearn聚类学习,视频图文教程技能get!

人类在处理大量信息时,是有局限的。

如果现在有几条新闻让你辨别真假:
1震惊!深圳市将于10月15日发生极昼现象!;
2腾讯将给每位微信用户充值100元,手慢无!;
3美职篮:湖人4-2击败热火,荣获赛季总冠军……

你肯定觉得超简单,但如果现在有几千、甚至数万条新闻让你辨别真假,你会觉得“是在搞我吧!”

图1:黑人问号

当然,如果你特别有毅力,可能会尝试一下各种评判标准,去进行快速筛选,但这样大量快速手工操作的准确率和效率,往往可能是不尽如人意的。

 

怎么办呢?这个时候就要借助AI了,也就是机器学习,让计算机通过学习足够数量的样本,根据数据中的特征构建模型,并利用此模型对新的情境给出判断和预测。


图2:机器学习图示


你可能会觉得有点意思了!更加有意思的是,你也可以通过机器学习的方法,利用Python里强大的scikit-learn包中的聚类学习工具,来迅速判定海量新闻的真假(而Atlas OS的云主机的使用能让整个过程轻松便捷)。


下面跟着视频或图文介绍来试试看!

视频1:用达仁云主机快速入门sklearn聚类

数据和代码准备

我们从DataFlair的“Fake News Detection Project”教程中下载了6335条真假新闻数据集,并开发了相应代码。(数据和代码链接:https://data-flair.training/blogs/machine-learning-project-ideas/

环境搭建

如果我们要进行sklearn聚类学习,就需要一个Python开发环境来进行开发,为了省去可能会有一万字的繁琐环境搭建步骤,所以这里选择了Atlas OS 的达仁云主机Linux+JupyterLab开发环境,里面已经预设好了Python环境,只需简单几步就能调出使用。

1,首先在浏览器中输入atlas.daren.io登陆(如果没有账号可以免费注册);
图3:Atlas OS登录界面

2,选择达仁云主机,新建一个虚拟硬盘,并上传新闻数据集文件news.csv,这是一个逗号分隔的纯文本文档,可以用任何文本编辑器打开查看;

图4:达仁云主机虚拟硬盘界面

3,选择主机镜像,启动Linux+Jupyterlab镜像,并选择镜像配置,这里选了一个2核2G的就够了,跑一个小时才0.1元,然后选择数据文件所在的虚拟硬盘,点击启动云主机。
图5:镜像选择界面

4,仅需2分钟,一个崭新的Linux+Jupyterlab镜像就出炉了,在主机信息中,复制链接密码网页登陆,就可以看到镜像界面了。
图6:linux+jupyterlab界面

开始机器学习:真假新闻识别

首先在Terminal里,安装这个机器学习项目需要的支撑包。
图7:安装项目支撑包

这个项目使用的数据是我们之前放入虚拟硬盘的数据文件news.csv,里面有6335条真假新闻数据,包含新闻标题、内容和真假性质数据。

然后新建一个JupyterLab文档,在文档代码中import项目需要的支撑包,并读取数据。

图8:import项目支撑包

一个机器学习的项目里,我们需要将数据的一部分作为模型训练使用,一部分用来测试。这个例子里面我们可以看到test_size=0.001,也就是随机使用千分之一的数据用来测试,剩下的千分之九百九十九的其他数据用来训练模型。这个test_size参数可以根据需要调整。


图9:test_size=0.001

我们使用sklearnTfidfVectorizer函数,用TF-IDF词频-逆向文件频率方法进行文本特征提取,使用sklearn fit_transform 函数根据输入的训练数据,统计词汇词典并返回数据对象,生成文档稀疏矩阵,建立模型。


最后,我们使用sklearnPassiveAggressiveClassifier来做学习,这是一种增量学习算法(PA算法),即被动感知算法对测试数据进行预测,并统计结果。


图10:建立模型进行预测

可以看到这里程序输出了部分新闻的信息,以及模型对测试数据的预测结果和真实数据的对比信息,以及最终预测正确与错误的数据,可以看到结果预测准确率为100%,也就是说,本次随机测试到的7条新闻完成预测正确。

图11:预测结果
 
上面测试数据较少,调整test_size=0.2,运行,查看结果,这里显示计算出的模型的预测准确率有92%以上。我们可以看到对1267条测试数据的验证结果:589个真阳性,587个真阴性,42个假阳性和49个假阴性(即1176个预测正确,91个预测错误)。

图12:验证结果

可以看到,在达仁云主机中开启环境,可以快速学习和实践Python的机器学习功能。我们通过这个简单的scikit-learn聚类学习项目,我们可以判断出90%以上的假新闻。那么在这个广告和假新闻满天飞的年代,也许我们后续可以逐步按这个方式过滤假新闻。

 

你学会了吗?想要马上练习!赶快登陆atlas.daren.io一键启用你的云主机吧,不仅是JupyterLab,达仁云主机还提供RStudio、Eclipse等多种主流开发环境,可选配置多达百余种,可选CPU涵盖1~96核,可选内存涵盖0.5~3TB,可选硬盘涵盖1-16TB,费用低至0.03元每小时起,浏览器中即开即用,这下再也不用为各种学习、开发、测试环境而苦恼了。


想了解更多新鲜实用的云计算和云数据分析工具欢迎关注“Atlas OS”微信公众号,或联系达仁基算团队ddeng@daren.io。

长按二维码关注我们




微信公众号:Atlas OS

新浪微博:@达仁基算

【声明】内容源于网络
0
0
Atlas OS
Atlas OS(达仁基算云操作系统)是深圳市达仁基算科技有限公司推出的一款集云存储、云计算和云办公协作于一体的的云操作系统:简单易用+功能强大(The Easy & Ready-to-use Cloud)
内容 30
粉丝 0
Atlas OS Atlas OS(达仁基算云操作系统)是深圳市达仁基算科技有限公司推出的一款集云存储、云计算和云办公协作于一体的的云操作系统:简单易用+功能强大(The Easy & Ready-to-use Cloud)
总阅读14
粉丝0
内容30