利用Python制作AI机器人,带你正确逛知乎

bnmcvzx 2018-10-28

利用Python制作AI机器人,带你正确逛知乎

想要学习Python。关注小编头条号,私信【学习资料】,即可免费领取一整套系统的板Python学习教程!

技术解析

本文所提及的AI机器人,就是自带 颜值检测+性别识别+种族识别 的爬虫程序,来帮你自动找到高学历+高颜值+高质量内容输出 的用户。

技术方面,主要涉及 计算机视觉、人工智能、深度学习、机器学习、网络爬虫 方面的知识,对技术不感兴趣的童鞋可以先跳过这一部分~

刚开始学Python的童鞋,应该大多都会拿爬虫练手,所以这一块就不做过多介绍了,知乎的前后端数据交互都是JSON格式,非常方便,也省去了你解析HTML的功夫~

总之,流程图就是这个样子的~

利用Python制作AI机器人,带你正确逛知乎

Fig. 1: Flow chart of AI-Zhihu-Crawler


以某用户为种子节点,抓取ta关注的用户,后端返回数据如下:

利用Python制作AI机器人,带你正确逛知乎

Fig. 2: Response JSON Data

先来测一下自己的吧,

  • 第一步是编写爬虫爬取用户基础数据:

利用Python制作AI机器人,带你正确逛知乎

Fig. 3: Zhihu User Crawler

  • 这是抓取下来的用户基础数据和头像:

利用Python制作AI机器人,带你正确逛知乎

Fig. 4: User Info

利用Python制作AI机器人,带你正确逛知乎

Fig. 5: Avatar

对于颜值检测,可以看作是一个利用深度卷积神经网络的 回归问题。对这个方向的Research感兴趣的童鞋可以去看相关的Paper。在此就不做过多介绍了,对于人脸检测/关键点定位,也可以看成一个 回归问题,训练神经网络去优化MSE即可。对于性别识别/种族识别,可以看出一个 二分类问题。模型我已经train好了,直接把它融合进爬虫程序即可。

结果

先拿自己关注的用户来测试吧,因我平常关注 Machine Learning, Computer Vision, Data Science 方向的话题比较多,所以可能比较多关注这个领域的前辈~

利用Python制作AI机器人,带你正确逛知乎

Fig. 6: Followee Gender Proportion

看来我关注的大多数都是男性用户啊~

深度学习模型跑出来,结果及说明如下:

  • 颜值(分值为0~5分)性别(红色bbox代表女;蓝色bbox代表男)种族(Asian and Westerner)

我们来看看效果:

利用Python制作AI机器人,带你正确逛知乎

对 @SimonS

测试结果,race/gender信息均正确,颜值为3.81,属于颜值高分用户!

利用Python制作AI机器人,带你正确逛知乎

对 @魏秀参

测试结果,race/gender信息均正确,颜值为3.08,属于颜值高分用户。

利用Python制作AI机器人,带你正确逛知乎

对 @Sean Ye

测试结果,race/gender信息均正确,颜值为3.06,属于颜值高分用户。

利用Python制作AI机器人,带你正确逛知乎

对 @罗韵

测试结果,race/gender信息均正确,颜值为3.31,属于颜值高分用户。

利用Python制作AI机器人,带你正确逛知乎


相关推荐