数据挖掘实战:以性别预测探索分类算法

5星 · 超过95%的资源 需积分: 20 220 下载量 21 浏览量 更新于2024-07-21 5 收藏 1.21MB PDF 举报
"这篇文档是技术公开课《以性别预测为例,谈谈数据挖掘中常见的分类算法》的PPT,由王琪讲解。课程旨在通过性别预测的案例,介绍数据挖掘的基本内容,包括数据挖掘的定义、主要任务、基本流程以及如何学习。此外,还对比了数据挖掘与机器学习的区别,并列举了数据挖掘的主要任务,如预测、描述性任务(分类、聚类、关联规则发现、序列模式发现)和回归等。课程推荐了一些数据挖掘的学习资源,包括入门书籍和正统教材。" 正文: 在数据挖掘领域,分类算法是一种重要的工具,用于预测未知数据的类别。本文档以性别预测为例,深入浅出地探讨了这一主题。首先,我们需要理解数据挖掘的基本概念,它是利用高效的技术对大量数据进行分析,从中提取出有用且可能未被察觉的模式。这些模式必须是有效的、新颖的、潜在有用的且可理解的。 数据挖掘不同于机器学习,它涵盖了大数据工程师和算法工程师的角色。在数据挖掘的主要任务中,预测任务是最常见的,比如性别预测,即根据某些已知变量预测未知个体的性别。此外,描述性任务如分类和聚类,关注于找出可以解释数据模式的方法;关联规则发现则关注发现变量之间的关联性;序列模式发现则关注数据的时间序列规律;而回归任务则用于预测连续数值型变量的未来值。 在解决性别预测这类问题时,数据挖掘的基本流程通常包括以下步骤:首先,明确问题,定义我们希望通过数据得到的洞察;其次,进行数据预处理,清洗、转化和整合数据;接着,特征工程,选择或构建对预测目标有影响力的特征;然后,选择合适的模型和算法,如决策树、朴素贝叶斯、支持向量机、逻辑回归等;最后,训练模型并评估其性能,产出预测结果。 为了学习数据挖掘,可以参考一些经典读物,例如《Programming Collective Intelligence》、《写给程序员的数据挖掘实践指南》以及吴军的《数学之美》。对于更深入的理论学习,可以查阅学术教材,如《Introduction to Data Mining》和《Data Mining: Concepts and Techniques》。 数据挖掘中的分类算法在性别预测这样的问题中扮演着关键角色,它们通过对历史数据的分析,构建模型来预测未知个体的属性。通过实际案例的学习,我们可以更好地理解这些算法的工作原理和应用,从而提高数据分析和预测的能力。
2021-08-08 上传
从豆瓣批量获取看过电影的用户列表,并应用kNN算法预测用户性别 首先从豆瓣电影的“看过这部电影 的豆瓣成员”页面上来获取较为活跃的豆瓣电影用户。 获取数据 链接分析 这是看过"模仿游戏"的豆瓣成员的网页链接:http://movie.douban.com/subject/10463953/collections。 一页上显示了20名看过这部电影的豆瓣用户。当点击下一页时,当前连接变为:http://movie.douban.com/subject/10463953/collections?start=20。 由此可知,当请求下一页内容时,实际上就是将"start"后的索引增加20。 因此,我们可以设定base_url='http://movie.douban.com/subject/10463953/collections?start=',i=range(0,200,20),在循环中url=base_url+str(i)。 之所以要把i的最大值设为180,是因为后来经过测试,豆瓣只给出看过一部电影的最近200个用户。 读取网页 在访问时我设置了一个HTTP代理,并且为了防止访问频率过快而被豆瓣封ip,每读取一个网页后都会调用time.sleep(5)等待5秒。 在程序运行的时候干别的事情好了。 网页解析 本次使用BeautifulSoup库解析html。 每一个用户信息在html中是这样的: 七月 (银川) 2015-08-23   首先用读取到的html初始化soup=BeautifulSoup(html)。本次需要的信息仅仅是用户id和用户的电影主页,因此真正有用的信息在这段代码中: 因此在Python代码中通过td_tags=soup.findAll('td',width='80',valign='top')找到所有的块。 td=td_tags[0],a=td.a就可以得到 通过link=a.get('href')可以得到href属性,也就用户的电影主页链接。然后通过字符串查找也就可以得到用户ID了。