大数据挖掘导论与案例米红娟习题答案_第1页
大数据挖掘导论与案例米红娟习题答案_第2页
大数据挖掘导论与案例米红娟习题答案_第3页
大数据挖掘导论与案例米红娟习题答案_第4页
大数据挖掘导论与案例米红娟习题答案_第5页
已阅读5页,还剩52页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大数据挖掘导论与案例米红娟习题答案第1章绪论习题1:一个大数据应用案例:基于大数据的肿瘤精准诊疗与药物研发。(1)案例背景传统的癌症治疗(如化疗)往往采用“一刀切”的方式,对同一种癌症患者使用相同的治疗方案,有效率有限且副作用大。随着基因测序技术的普及以及医疗机构信息化的深入,产生了海量的患者基因组数据、临床病历数据、医学影像数据和长期随访数据。如何整合并利用这些多源异构的“大数据”,成为突破癌症治疗瓶颈的关键。(2)大数据如何被应用(技术流程)该案例的整个应用过程是一个从数据聚合到智能决策的闭环,涉及以下步骤:步骤1:多源数据汇聚与整合1)基因组数据:通过高通量测序技术,获取患者肿瘤组织和正常组织的全基因组、外显子组或转录组数据,识别基因突变(如EGFR、ALK、KRAS等关键驱动突变)。2)临床数据:从电子病历中提取患者病史、病理报告、治疗方案、用药记录、实验室检查结果、不良反应等结构化与非结构化数据。3)影像数据:对CT、MRI、PET-CT等医学影像进行深度学习分析,量化肿瘤大小、形状、纹理特征(影像组学),评估治疗效果。4)随访与真实世界数据:收集患者治疗后的生存期、复发情况、生活质量等长期数据,形成疗效反馈闭环。步骤2:大数据平台构建与处理利用云计算和分布式存储技术,建立统一的数据平台,对上述海量数据进行清洗、标准化、脱敏和关联等。为每个患者构建一个动态的“数字孪生”档案,整合其多维信息。步骤3:模型构建与智能分析1)知识图谱:构建“基因-疾病-药物-预后”知识图谱。例如,将“EGFRL858R突变”与“非小细胞肺癌”关联,再指向靶向药“奥希替尼”,并链接到该治疗方案下患者的平均生存期数据。2)机器学习模型:①诊断分型:根据基因和病理数据,对癌症进行更精细的分子分型(如将乳腺癌分为LuminalA、B,HER2+,三阴性等),超越传统的器官位置分类。②治疗方案推荐:系统比对当前患者的基因谱和知识图谱/历史数据,自动推荐最可能有效的靶向药物或免疫治疗方案。③预后预测:基于大量类似患者的随访数据,预测新患者的疾病进展风险和生存概率。④新药靶点发现:通过分析成千上万患者的基因突变谱和临床结局,发现新的高频突变靶点,为制药公司研发新药指明方向。步骤4:临床决策支持与反馈优化医生在诊断时,系统会弹出基于数据分析的个性化治疗建议,作为辅助参考。患者接受治疗后,其疗效和副作用数据又被收集回平台,用于持续优化算法模型,形成“数据驱动决策-决策产生新数据”的增强循环。(3)大数据在该案例中发挥了什么作用?(价值与影响)1)对患者,提升了疗效与生存质量。具体包括①精准用药:避免无效治疗。例如,仅对EGFR突变阳性的肺癌患者使用EGFR靶向药,将治疗有效率从传统化疗的约30%提升至70%以上。②延长生存期:通过最优的用药序列和组合,将晚期癌症逐步变为可管理的慢性病,显著延长患者生存期。③减少副作用:避免患者暴露于对其无效且毒性明显的化疗方案,提升生活质量。2)对医生,赋能临床决策。具体包括①克服经验局限:年轻医生也能借助系统获得相当于顶尖专家团队的循证医学支持。②处理信息超载:帮助医生快速从海量文献和病例数据中提取关键信息,制定复杂决策。3)实现动态监测:通过影像组学等手段,更早、更精确地发现肿瘤的微小变化,及时调整方案。4)对科研与医药产业,加速创新。具体包括①加速新药研发:精准招募具有特定生物标志物的患者进入临床试验,提高试验成功率、缩短周期、降低成本。②发现新的适应症:通过真实世界数据分析,发现已上市药物对具有其他基因突变的癌种也有效(“老药新用”)。③揭示疾病机制:通过对人群大数据的分析,发现新的致癌基因或耐药机制。在这个案例中,大数据不再是简单的“大量数据”,而是通过汇聚、关联与分析,将碎片化的信息转化为深刻的医疗洞察。这从根本上改变了肿瘤治疗的范式,从基于人群统计的“群体医疗”走向基于个人数据的“精准医疗”,实现了提高疗效、优化资源、驱动创新的核心作用,是医疗领域从经验医学向数据智能医学转型的典范。习题2:(1)容量(Volume)。该案例具有海量的数据规模,体现在①基因组数据:一个人的全基因组测序产生约200GB的原始数据。②影像数据:一名癌症患者在一次CT或MRI检查中就会产生数百张、数GB的高清影像,长期的随访会产生海量的影像序列数据。③临床与随访数据:整合成千上万名患者的多年电子病历、用药记录和生存数据,形成庞大的数据集。正是由于“大容量”使得发现罕见基因突变、分析微小疗效差异、训练可靠的AI模型成为可能。小样本数据是无法支撑精准的统计结论和机器学习模型的。(2)速度(Velocity)。体现在高速的数据生成与处理,具体包括①数据生成快:测序仪、影像设备、监护仪24小时不间断产生数据流。②处理需求快:临床决策对时效性要求极高。例如,对于晚期患者,需要在几天内(而非几周内)完成基因测序、数据分析和报告生成,以便尽快开始靶向治疗。③反馈循环快:患者治疗后的反应数据需要被快速收集并反馈给分析模型,以进行动态调整。“速度”确保了大数据分析的临床实用性。快速的分析能力能将数据转化为及时的诊疗决策。同时,高速的数据流处理也是建立实时预警和动态预测系统的基础。(3)多样性(Variety)。该案例具有多源异构的数据类型,体现在:①数据来源和格式极其丰富。②结构化数据:包括实验室检查结果(数值)、基因突变列表(文本编码)、用药剂量等。③非结构化/半结构化数据:包括病理报告和医生笔记(自由文本)、医学影像(DICOM格式)、基因组原始序列(FASTQ文件)等。④数据关系复杂:上述不同类型的数据需要通过患者ID、时间戳等进行关联和整合。单一的基因数据或影像数据都只能反映病情的一个侧面。只有将基因型(分子层面)、表型(影像和病理)、临床过程(病历)和结果(随访)等多维数据融合,才能构建完整的“患者数字画像”,实现真正的精准分析。(4)真实性(Veracity)。该案例从数据产生的源头具有的科学仪器与专业记录的客观性,到数据采集与整合过程的严格流程与质量控制,再到数据治理与清洗的策略,均保障了数据具有较高的质量和真实性。“真实性”决定分析结果是否可靠。该案例中,真实性是通过严谨的医学实践、先进的检测技术、规范的数据治理和严格的伦理监管共同主动构建和保障的核心属性,它使得从大数据中提取的“模式”和“洞见”能够真实地反映疾病的生物学规律和临床治疗效果,从而让“精准医疗”落到实处。(5)价值(Value)。该案例的价值表现在数据的低价值密度与高潜在价值。低价值密度体现在:数PB的原始基因组数据中,可能只有几十个关键突变位点具有临床意义;长达数年的病历文本中,决定治疗方案的关键信息可能只存在于几句话中。高潜在价值体现在:一旦通过高级分析(如知识图谱、机器学习)从海量低价值密度数据中提炼出规律,其价值便是巨大的。例如,发现一个全新的药物靶点对每一个患者匹配到最有效的方案,是全人类的福音。习题3:统计方法与数据挖掘方法之间的关系如下:(1)同源性与基础支撑:①数据挖掘中大量使用了经典统计方法。例如,聚类分析

的思想源于统计中的聚类分析;分类算法(如朴素贝叶斯、线性判别分析)直接基于统计概率理论;回归分析

是预测模型的基础;假设检验用于评估模型或模式的有效性②统计学为数据挖掘提供了坚实的数学理论基础。没有统计学,数据挖掘就如同无源之水。(2)目标重叠:两者的终极目标是一致的,均是从数据中发现有价值的信息、模式或知识,以支持决策和预测。(3)相互促进与融合:数据挖掘面临的大规模、高维度数据挑战,也推动了统计学在新领域的发展,例如高维统计学。现代数据分析中,纯粹的“统计”或“数据挖掘”项目越来越少,更多的是两者的混合。尽管统计方法与数据挖掘方法同源,但在处理实际数据分析问题时,二者是有差异的,表1.1描述了这些不同之处。表1.1统计方法与数据挖掘的不同之处比较的方面统计方法数据挖掘方法内在逻辑假设驱动:先有理论或假设,然后使用数据验证或拒绝这个假设,即问题先行。数据驱动:事先无明确假设,让数据自己“说话”,通过算法自动地、迭代地探索可能存在的所有模式和关系,即让数据发现问题。主要目标推断与解释:关注理解变量之间的关系和因果关系,模型的可解释性至关重要,即关注“为什么?”,验证已知。预测与发现:关注构建具有高预测精度的模型,或发现未知的、有用的模式(如关联规则)。“是什么?”

“接下来会怎样?”探索未知数据规模与类型中小规模,结构化:传统上处理经过精心设计的、相对干净的结构化数据(如调查数据、实验数据)。海量数据,多种类型:专为处理海量(TB/PB级)、高维、有噪声的数据而生,包括非结构化数据(文本、图像、日志等)。模型构建方法“简约”原则:崇尚简约模型(如奥卡姆剃刀原则),倾向于用尽可能少的变量来解释现象,避免过拟合。“有效”原则:倾向于使用复杂模型(如集成学习、深度学习),只要它能提供更高的预测准确率。接受“黑盒”模型,只要它有效。对先验知识的要求高:建模需要丰富的领域知识来构建假设和选择模型。相对较低:更自动化,可以在领域知识较少的情况下开始探索,发现知识后再由专家解释验证方式统计显著性检验:依赖p值、置信区间等来判断结果是否由随机偶然造成。交叉验证/Hold-out验证:通常将数据分为训练集、验证集和测试集,使用交叉验证和准确率、召回率、AUC等指标来评估模型性能。习题4:(1)分类与回归的区别和相似之处分类和回归是有监督学习最重要的两个分支。它们的共同点是模型都是从已标注的数据(有标签数据)中学习,即每个训练样本目标表量的值是已知的。表1.2描述了分类与回归的核心区别。表1.2分类与回归的核心区别特性分类回归预测目标离散的类别标签或类别连续的数值输出形式有限的、固定的几个类别任意数值(在一定范围内)本质问题“这是什么?”“有多少?”评估指标准确率、精确率、召回率、F1分数、AUC等。均方误差(MSE)、平均绝对误差(MAE)、R平方等。常用算法逻辑回归、决策树、随机森林、SVM、KNN线性回归、多项式回归、决策树(回归)、随机森林(回归)(2)分类与聚类的区别和相似之处分类和聚类都涉及“区分类别”,但这是两个截然不同的概念,最核心的区别是分类是有监督学习,即训练样本带有标签,而聚类是无监督学习,即训练样本没有标签。表1.3描述了分类与聚类的核心区别。表1.3分类与聚类的核心区别特性分类聚类学习类型有监督学习无监督学习训练样本有标签。数据已知类别和结果无标签。数据只有特征,没有已知结果核心任务从标签中学习,构建一个模型,用于预测新数据的类别。探索数据内在结构,自动将相似的数据点分组到一起过程特点是一个“预测”的过程。是一个“探索”的过程算法示例逻辑回归、决策树、随机森林、SVM、KNN等K-Means、DBSCAN、层次聚类等二者尽管本质不同,但在某些层面有相似之处。1)目标都是“分组”。无论是分类还是聚类,最终的目的都是将数据划分到不同的组别中。2)依赖特征相似性。两者都基于数据点的特征进行计算,都假设同一组内的数据点彼此之间更相似,而不同组的数据点则不那么相似。3)互为补充:在实践中,聚类和分类可以结合使用。比如,先用聚类探索数据,发现潜在的分组,并由专业人员为这些分组命名(赋予标签),然后用这些新标注的数据训练一个分类模型,来预测新数据的类别。习题5:(1)分类:预测客户流失,实现精准挽留客户流失是电信行业最大的痛点之一。提前识别出有高流失风险的客户,并采取有效的干预措施。对相关历史数据,使用分类算法进行训练,学习“流失客户”和“未流失客户”的行为模式差异。模型对当前活跃用户流失的可能性进行预测,输出每个用户的“流失概率得分”,并列出导致其可能流失的最重要因素。对高流失风险客户群体,不再进行无差别的优惠,而是提供个性化的挽留方案。例如,对因流量不够而可能流失的用户,推送定向的“流量加油包”优惠;对因网络质量投诉的用户,优先安排技术人员上门检测。并将有限的客服和营销资源优先投入到最需要关注的客户身上,提升挽留成功率和投入产出比。(2)聚类:发现客户细分,指导产品与营销电信公司的客户群体庞大而复杂,一刀切的套餐和营销策略效率低下。如何深入了解不同客户群体的自然特征,从而实现精细化运营是电信公司持续关注的问题。对包含客户的消费行为特征如额度(ARPU)、通话模式、流量使用时间(夜间/白天)、APP使用偏好(是否经常使用视频类APP)等构成的数据集,采用K-Means、DBSCAN等聚类算法,在没有预设标签的情况下,按行为模式相似的客户自动分群。假设算法发现的典型客户群有4个:高价值商务群,具有高ARPU、高频国际通话、大量商务APP使用等特点;年轻流量群,具有中等ARPU、夜间流量消耗大、频繁使用社交媒体和视频应用等特点;节俭长者群:低ARPU、很少使用流量、通话对象固定等特点;潜在价值群:使用中等流量,但主要用的是竞争对手的OTT服务(如微信、Q语音)。决策支持可以是:为“高价值商务群”中的客户推出高品质国际漫游包;为“年轻流量群”群中的客户设计包含大量夜间低价流量的专属套餐;向“节俭长者群”中的客户推广适合他们的亲情网套餐;以优质的服务。引导“潜在价值群”使用本公司的同类或相似业务。(3)关联规则挖掘:实现交叉销售与产品捆绑当客户购买一种产品或服务时,还能向他成功推荐什么产品?如何设计最受欢迎的产品捆绑包来提升销售额呢?关联规则挖掘可发现数据集中项之间的有趣联系,即关联规则,而关联规则的有效性可用支持度、置信度、提升度等评估。对客户订单、业务办理记录等数据,使用Apriori或FP-Growth算法从中提取强关联规则。假设有一个强关联规则是{国际漫游服务}→{移动WiFi租赁}(置信度80%),意思是订购了国际漫游服务的客户,有80%的概率也会租赁移动WiFi。决策支持:将强关联的产品打包销售;在客户办理业务的流程中(如在线营业厅、客服电话),根据其当前选择,智能推荐下一个最可能购买的产品;货架规划:虽然适用于零售业,但其思想也可用于规划电子营业厅的产品展示。(4)异常检测:欺诈检测与网络运维如何实时发现可疑的欺诈行为?如何在海量网络设备指标中快速定位故障点?是电信公司必须解决的问题。异常检测方法与技术能够识别与绝大多数数据模式显著不同的罕见事件、异常点或异常群体。关于数据来源,欺诈检测:呼叫详细记录数据,如短时间内来自同一号码的大量呼出电话、异常高的国际通话时长、同时从两个不同地区发起的通话等;网络运维:网络设备(如基站、路由器等)的性能指标数据流,如CPU使用率、流量吞吐量、错误率等。关于欺诈检测,可采用异常检测的相关技术与算法发现非正常的用户通话模式,或学习正常用户的通话模式,并对异常模式发出警报。对于网络运维,所训练的模型会实时监控设备指标,在其出现异常陡增或下降时(可能是故障前兆)立即发出警报。决策支持:实时阻止欺诈性通话,为公司减少收入损失;在用户感知到网络问题(如掉线、卡顿)之前,运维团队就能发现并修复网络故障,保障服务质量(QoS)。习题6:根据数据挖掘的定义,数据挖掘涉及从大量数据中发现模式、关联、异常或其他有价值的信息,通常包括分类、聚类、回归、关联规则挖掘、异常检测等分析技术。而简单的数据查询、聚合计算或排序操作不属于数据挖掘任务。通过对每项活动进行分析可知,是大数据挖掘任务的有:4),5),6),7),8),10),12)。习题7:略,可从教材中找到答案。

大数据挖掘导论与案例习题参考答案第2章数据分析与可视化技术习题1:不可变数据类型创建之后,其值无法被修改,若对这类数据进行修改,实际上是创建了一个新的对象。不可变数据类型主要有数值类型int、float、complex,字符串,元组,布尔值(True和False),空值None等。可变数据类型主要有列表,字典和集合等。习题2:布尔值False,整数0,浮点数0.0,负数0j、空字符串''或""、空列表、空元组、空字典、空集合、‌None。习题3:在Python中,主要有for循环和while循环两种循环控制结构,for循环用于遍历可迭代对象,如列表、元组、字符串、字典、集合等,循环次数由可迭代对象的元素个数决定,适用于已知迭代次数或需要遍历固定序列时使用。while循环根据条件表达式的真假来控制循环,只要条件为True就会一直执行,适用于未知迭代次数,需要根据条件动态控制循环时使用。习题4:算术运算符‌:用于数值计算,包括加(+)、减(-)、乘(*)、除(/)、取模(%)、幂(**)、取整除(//)等;‌比较运算符‌:用于比较两个变量的值是否相等或大小关系,包括等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)等;‌逻辑运算符‌:用于连接两个或多个条件,判断它们的逻辑关系,包括与(and)、或(or)、非(not)等;‌位运算符‌:用于对二进制数进行位运算,包括按位与(&)、按位或(|)、按位异或(^)、按位取反(~)、左移位(<<)和右移位(>>)等;‌成员运算符‌:用于判断一个值是否在指定的序列中,包括in和notin‌;‌身份运算符‌:用于判断两个变量是否是同一个对象,包括is和isnot‌;‌赋值运算符‌:用于给变量赋值,包括等于(=)、加等(+=)、减等(-=)、乘等(*=)、除等(/=)、取余等(%=)等‌;运算符之间的优先级顺序如下‌:括号‌:用于改变运算顺序或创建元组。幂运算符‌:**优先级最高按位取反‌:~乘法、除法、取模、整除‌:*,/,%,//加法、减法‌:+,-。‌左移、右移‌:<<,>>。‌按位与、按位异或、按位或‌:&,^,|。‌等于、不等于‌:==,!=。‌大于、小于‌:>,<。‌大于等于、小于等于‌:>=,<=。‌身份比较、成员比较‌:is,isnot,in,notin。‌逻辑非、逻辑与、逻辑或‌:not,and,or。‌赋值运算符‌:=,+=,-=,*=,/=,%=,//=,‌=‌‌习题5:(1)函数功能主要有将封装代码,提高代码复用性,通过参数和返回值与外部交互,降低耦合,‌提高代码的可读性和可维护性,变量作用域控制,提高程序的安全性。(2)模块的功能主要将相关的函数、类、变量等放在同一个.py文件中,组织代码文件。避免不同模块中函数和变量的命名冲突,通过import语句在其他文件中导入模块复用模块代码。习题6:与列表相比Numpy数组在处理数学运算和大数据集时的执行效率更高,Numpy数组支持广播操作,可以对不同维度的数组进行数学运算,而列表则不支持。Numpy数组支持更多高级的索引方式。习题7:元素级乘法使用“*”或numpy.multiply()方法,作用是数组对应位置元素相乘。矩阵乘法使用“@”或numpy.matmul()方法,遵循矩阵乘法行列数匹配的规则。点积numpy.dot()计算内积,结果为标量,数组与标量相乘使用“*”,作用是每个元素乘以标量。习题8:在NumPy中,可借助numpy.random模块生成随机矩阵。np.random.rand()生成指定矩阵形状,数值在[0,1)区间内的均匀分布的随机数矩阵。np.random.uniform()生成指定形状,数值区间[low,high)内的均匀分布的随机数矩阵。np.random.randn()生成指定形状,数值为标准正态分布的随机数矩阵。np.random.normal()生成指定形状,指定均值、标准差正态分布的随机数矩阵。np.random.randint()生成指定形状,指定区间[low,high)内整数的随机数矩阵。习题9:NumPy的广播机制允许在不同形状的数组之间进行算术运算,NumPy从数组的最后一个维度开始向前比较两个数组的形状。如果对应维度相等,或其中一个数组的该维度为1,则认为这两个维度兼容,将维度为1的数组在该维度上复制,使其与另一个数组的对应维度匹配后执行计算。习题10:在Pandas中,元素访问的索引方式丰富多样,且与关系型数据库索引既有相似之处,也存在明显差异。位置索引使用iloc[],和Python列表索引的使用方法类似,但索引值与标签无关,当数据重新排序后,容易引发混淆,代码的可读性欠佳,特别是在列名有实际意义的时。标签索引使用loc[]。代码的可读性强,能直接通过标签理解访问意图,索引稳定。但标签必须唯一。布尔索引则通过条件表达式与前两种索引方式结合,用于过滤数据。能够基于条件灵活筛选数据,且支持复合条件查询,但多次使用会降低检索性能。多级索引可以高效处理高维数据,适用于分组统计和聚合操作,但索引结构复杂,理解和调试都有一定难度。习题11:在Pandas中主要通过pd.merge()、pd.concat()、join()和append()等方法实现DataFrame合并。pd.merge()实现类似SQL的表连接操作,基于一个或多个键(列)合并DataFrame,支持内连接(inner)、左连接(left)、右连接(right)和外连接(outer)。pd.concat()按轴堆叠两个DataFrame,并支持按索引对齐(join='inner'或join='outer'),当轴axis为0时按行(垂直堆叠),为1时按列(水平拼接)。索引连接join()方法按索引(或指定列)合并多个DataFrame,类似pd.merge(),默认以索引作为键。append()方法向DataFrame末尾追加另一个DataFrame,与pd.concat(axis=0)等价,该方法返回新对象,原DataFrame不变。习题12:Scikit-Learn提供了丰富的内置数据集,这些数据集涵盖分类、回归和聚类等多种任务,帮助用户快速上手和验证模型。(1)分类数据集较多,主要有鸢尾花数据集(Iris),3个类别的分类数据集(3类),包含150条样本,4个特征(花萼/花瓣的长度/宽度),适合分类(如决策树、SVM),手写数字数据集(Digits)是10个类别的多分类数据集,1797张8×8像素图像,64个特征,是图像分类的基础数据集,更应适合传统机器学习算法(如KNN、随机森林),乳腺癌数据集(BreastCancer)是二分类数据集(良性/恶性),包含569条样本,30个特征,医疗领域的数据集,类别分布略有不平衡,可测试模型在不平衡数据上的表现。(2)回归数据集。波士顿房价数据集(BostonHousing)包含506条样本,13个特征(如犯罪率、房屋年龄等),适合测试线性回归、决策树等模型。糖尿病数据集(Diabetes)包含442条样本,10个特征(如年龄、BMI、血压等),可用于预测慢性病发展。(3)聚类与降维数据集,奥利维蒂人脸数据集(OlivettiFaces)包含400张64×64像素人脸图像,10个不同人各40张,用于聚类、降维、人脸识别。20新闻组数据集(20Newsgroups)包含约20,000篇新闻文章,分为20个类别,主要用于文本分类、聚类、主题建模。(4)生成式数据集,make_classification()和make_regression()可生成分类和回归数据集。习题13:Scikit-Learn提供了丰富的机器学习模型,涵盖回归和分类两大核心任务。回归方法如普通最小二乘法LinearRegresion()、决策树回归DecisionTreeRegressor(),随机森林RandomForestRegressor()、支持向量机SVR()和SVC()、K近邻KNeighborsRegressor()、神经网络MLPRegressor()等。分类方法包括逻辑回归LogisticRegression()、线性支持向量机LinearSVC()、决策树分类DecisionTreeClassifier()、随机森林RandomForestClassifier()、AdaBoost分类方法AdaBoostClassifier()、贝叶斯方法GaussianNB()和MultinomialNB()、多层感知机MLPClassifier()、K近邻KNeighborsClassifier()等。习题14:导入Matplotlib库中的pyplot模块后。使用plt.figure()函数创建画布,也可使用plt.add_subplot()或plt.subplots()函数在画布上创建一个或多个子图。在子图上使用各种绘图方法,如plot()、scatter()、bar()等。可以使用set_color()、set_marker()、set_xlim()、legend()等方法设置图形的颜色、标记样式、坐标轴范围、刻度标签、图例等属性来增强图形的可读性和美观度。最后使用plt.show()函数来显示绘制的图形。习题15:plot()绘制折线图,用于展示数据随时间或其他连续变量的变化趋势,bar()或barh()绘制柱状图,用于比较不同类别的数据量或频率,scatter()绘制散点图,用于展示两个变量之间的关系,可以通过点的位置来观察它们之间的相关性,pie()绘制饼图,用于展示各个部分占总体的比例,通常用于展示分类数据,hist()绘制直方图,用于展示数据的分布情况,包括数据的频数分布。

大数据挖掘导论与案例习题参考答案第3章认识数据习题1:序号属性描述分类类型是否有序说明1)用AM和PM表示的时间二元有序仅两个值,且AM逻辑上早于PM,可排序。2)曝光表测出的亮度连续有序取值为连续数值,亮度数值可直接比较大小,有序。3)人的判断测出的亮度分类有序通常为离散等级,无连续数值,但等级可排序。4)医院中的病人数分类有序取值为非负整数(离散值),病人数可比较多少,有序。5)书的ISBN号分类无序仅用于唯一标识书籍,无数值意义,无顺序6)每立方厘米表示的物质密度连续有序取值为连续数值,密度大小可直接比较,有序。7)快递单号分类无序仅用于唯一标识快递,无逻辑顺序。习题2:问卷调查中易出现多种数据质量问题,如抽样偏差(样本无法代表总体,仅覆盖部分群体)、无响应偏差(部分对象拒绝回答致样本失衡)、回答偏差(含主观隐瞒真实想法的社会期望偏差、因问题模糊产生的理解偏差、回忆过往信息出错的记忆偏差),还存在人工录入漏填错填的数据录入错误,以及答案违反常识的逻辑矛盾。为避免这些问题,需优化抽样设计,用分层抽样等概率抽样法覆盖总体子群体并控制样本量;优化问卷设计,使问题简洁明确、敏感问题后置或间接提问,且加入逻辑校验题;控制调查过程,培训调查员、开展预调查、追访无响应者;做好数据录入与清洗,采用双录入法,用Excel或Python筛选矛盾值并标记异常值。习题3:1)均值:所有数据之和除以数据个数。总和=13+15+16+16+19+20+20+21+22+22+25+25+25+25+30+33+33+35+35+35+35+36+40+45+46+52+70=809,均值=809/27≈29.96(保留两位小数)。中位数:数据排序后中间位置的数值(n=27,奇数,第(27+1)/2=14位数据)。第14位数据为25,故中位数=25。2)众数是出现频率最高的数值。数据中”25”出现4次,”35”出现4次,均为最高频率,故众数为25和35(双众数)。3)中列数=(最大值+最小值)/2。最小值=13,最大值=70,故中列数=(13+70)/2=41.5。4)四分位数将数据分为4等份,Q₂即中位数,Q₁是前50%数据的中位数,Q₃是后50%数据的中位数:总数据量n=27,Q₂(中位数)=第14位=25;前13个数据(第1-13位):13,15,16,16,19,20,20,21,22,22,25,25,25,Q₁是前13个数据的中位数(第7位)=20;后13个数据(第15-27位):30,33,33,35,35,35,35,36,40,45,46,52,70,Q₃是后13个数据的中位数(第7位)=35。5)五数概括:最小值(13)、Q₁(20)、中位数(25)、Q₃(35)、最大值(70)。盒图绘制规则:绘制数轴,范围覆盖13-70;绘制“盒子”:左边界=Q₁(20),右边界=Q₃(35),盒子内横线=中位数(25);绘制“须”:左须延伸至最小值(13),右须延伸至最大值(70)(无异常值时)。说明:此处介绍盒图绘制过程,不展示盒图结果。6)分位数图和分位数-分位数图核心不同:分位数图仅展示“实际数据分位数与数值的关系”,用于观察数据自身分布;Q-Q图需结合“理论分布”,用于检验数据是否符合特定分布(如正态分布、均匀分布)。习题4:(1)关于产量(x)均值:40+42+50+55+65+78+84+100+116+125+130+140)/12=925/12≈77.08;中位数:n=12(偶数),第6、7位数据的平均,第6位=78,第7位=84,中位数=(78+84)/2=81;标准差:先算方差(各数据与均值差的平方和/11,样本标准差分母为n-1),方差≈1021.38,标准差≈√1021.38≈31.96。(2)关于生产费用(y)均值:(130+150+155+140+150+154+165+170+167+180+175+185)/12=1821/12=151.75;中位数:第6、7位数据的平均,第6位=154,第7位=165,中位数=(154+165)/2=159.5;标准差:方差≈254.02,标准差≈√254.02≈15.94。产量及生产费用的盒须图、散点图、分位数-分位数图如下:习题5:答案略。习题6:(1)计算机网络,静态属性:连接;动态属性:通信量。a)表示映射:对象:网络节点(如路由器、服务器)→圆形(大小表示节点重要性,如服务器用大圆形);属性:静态(连接):节点间连线(实线=已连接,虚线=未连接;线宽=带宽);动态(通信量):连线颜色(红色=高流量,黄色=中流量,绿色=低流量)+连线动画(闪烁频率=流量大小,频率高=流量大);联系:节点间的连接关系→连线的有无/类型。b)安排:视点:采用分层布局(核心节点在中心,边缘节点在外侧),支持鼠标缩放和旋转;透明度:低流量连线透明度=0.6,高流量=1.0(突出高流量路径);分组:按网络区域(如A区、B区)用不同颜色的节点边框分组。c)选择:大量节点:采用聚合策略(低重要性节点合并为节点簇,鼠标hover时展开);大量属性:仅展示核心属性(连接状态、实时流量),其他属性(如节点IP)通过点击节点弹出详情框查看。(2)特定时间动植物的全球分布a)表示映射:对象:动植物种类→不同形状(植物=三角形,动物=圆形)+颜色(每种物种唯一颜色,如大熊猫=黑白色,红豆杉=绿色);属性:分布密度→形状大小(密度高=大形状,密度低=小形状);联系:同区域共现关系→形状的重叠程度(重叠度高=共现频繁)。b)安排:视点:基于全球地图底图(如高德/Google地图),支持切换大洲/国家层级;透明度:低密度区域形状透明度=0.5(避免遮挡),高密度=1.0;分组:按生态系统(如热带雨林、温带草原)用不同颜色的地图底色分组。c)选择:大量物种:提供物种筛选框(按纲、目筛选,如仅显示哺乳动物);大量区域:默认显示有分布记录的区域,空白区域不显示(减少冗余)。(3)基准数据库程序的计算机资源使用情况a)表示映射:对象:数据库程序→x轴上的标签(如程序A、程序B…);属性:资源使用量(内存=MB,磁盘=GB,运算量=GFLOPS)→y轴数值,用不同颜色的柱状图(内存=蓝色,磁盘=绿色,运算量=橙色);联系:资源使用的比例关系→柱状图的高度比例。b)安排:视点:采用水平柱状图(程序名横向排列,避免名称过长重叠),支持按资源类型排序(如按内存使用量降序);透明度:无重叠,柱状图间距=10px(清晰区分);分组:按程序用途(如OLTP、OLAP)用不同颜色的图表标题背景分组。c)选择:大量程序:采用分页显示(每页显示10个程序)+搜索框(按程序名快速定位);大量属性:默认显示内存、磁盘、运算量3个核心资源,其他属性(如CPU使用率)通过切换图表标签页查看。(4)30年国家工人职业变化(含性别、受教育程度)a)表示映射:对象:职业类型→堆叠面积图的不同颜色区域(如教师=红色,工程师=蓝色…);属性:人数→y轴数值(万人);性别→面积图的分层(下层=男性,上层=女性,两层高度之和=总人数);受教育程度→面积图的纹理(本科及以上=斜线纹理,高中及以下=无纹理);联系:职业人数变化趋势→面积图的曲线斜率(斜率正=人数增长,负=减少)。b)安排:视点:x轴=年份(1994-2024),y轴=人数,支持鼠标hover显示某年某职业的详细数据(男/女人数、学历占比);透明度:女性层透明度=0.8(突出性别差异);分组:按职业大类(如服务业、制造业)用图例分组,支持点击图例隐藏/显示某大类。c)选择:大量职业:将小众职业合并为其他类别,点击其他可展开详情;大量年份:提供年份滑块(可选择任意时间段,如2000-2010年),聚焦特定时期变化。习题7:相异性用于衡量两个数据对象的差异程度,值越大则差异越大。对于标称属性(如颜色、职业),因其无数值意义,主要通过属性值是否相同判断,单属性时相同则相异性为0、不同为1,多属性时相异性为不同属性值个数与总标称属性个数的比值;非对称二元属性(如疾病是否阳性,0为主要值、1为次要值)忽略0-0匹配,仅关注1-1、1-0情况,相异性通过(x为1且y为0的属性个数+x为0且y为1的属性个数)与(x和y均为1、x为1且y为0、x为0且y为1的属性个数总和)的比值计算;数值属性(如身高、体重)常用欧几里得距离(连续空间直线距离)或曼哈顿距离(街区距离)计算,若属性量纲不同,需先进行标准化(如z-score标准化);词频向量(如文本TF-IDF向量)的相异性则是1减去余弦相似度,余弦相似度衡量向量方向差异(忽略长度),相异性据此间接体现两向量的差异。习题8:1)欧几里得距离d(A,B)=2)曼哈顿距离d(A,B)=|22−20|+|1−0|+|42−36|+|10−8|=113)闵可夫斯基距离(q=3)d(A,B)=4)上确界距离d(A,B)=max(|22−20|,|1−0|,|42−36|,|10−8|)=max(2,1,6,2)=6习题9:查询点x₀=(1.4,1.6),数据集x₁=(1.5,1.7)、x₂=(2.0,1.9)、x₃=(1.6,1.8)、x₄=(1.2,1.5)、x₅=(1.5,1.0),距离(欧几里得、曼哈顿、上确界)值越小,相似性越高;余弦相似度值越大,相似性越高。1)计算各点与x₀的欧几里得距离:x₁约为0.14,x₂约为0.67,x₃约为0.28,x₄约为0.22,x₅约为0.61。排序:x₁(0.14)>x₄(0.22)>x₃(0.28)>x₅(0.61)>x₂(0.67)。2)计算各点与x₀的曼哈顿距离:x₁为0.2,x₂为0.9,x₃为0.4,x₄为0.3,x₅为0.7。排序:x₁(0.2)>x₄(0.3)>x₃(0.4)>x₅(0.7)>x₂(0.9)。3)计算各点与x₀的上确界距离:x₁为0.1,x₂为0.6,x₃为0.2,x₄为0.2,x₅为0.6。排序:x₁(0.1)>x₃(0.2)=x₄(0.2)>x₂(0.6)=x₅(0.6)。4)计算各点与x₀的余弦相似度:x₁为约0.999,x₂约0.992,x₃约0.999,x₄约0.998, x₅约0.964。排序:x₁(0.999)=x₃(0.999)>x₄(0.998)>x₂(0.992)>x₅(0.964)。

大数据挖掘导论与案例习题参考答案第4章数据预处理习题1:数据质量的准确性、完整性、一致性问题,主要源于数据生命周期中采集、存储、处理等环节的疏漏。准确性问题是数据与真实情况不符,多因采集误差(如人工录入将“25岁”误写为“52岁”、温度计故障致读数偏差)、主观偏差(求职时虚报工作年限)或数据转换错误(Excel中日期误转为数字未修正,像“2024/08/29”变“45567”),例如某电商平台用户地址“北京市朝阳区”被误录为“北京市朝阳市”,导致物流配送出错。完整性问题指数据缺失,可能是采集遗漏(问卷未标注“月收入”为必填项致部分人跳过、工厂传感器断连漏记1小时生产数据)、用户因隐私保护拒绝提供敏感信息(APP注册不填身份证号),或多源数据整合时字段匹配失败(合并“用户表”与“订单表”,部分用户ID未关联致订单缺用户信息),比如某医院10%病例因护士未强制填写缺“过敏史”。一致性问题是同一数据在不同场景或存储位置表述矛盾,可能因多源采集标准不一(A系统日期“YYYY/MM/DD”、B系统“DD-MM-YYYY”)、数据违反业务逻辑(“年龄10岁”却“职业为教授”、“订单金额100元”但“实付金额200元”),或数据更新不同步(用户改手机号后“账户表”更新,“订单历史表”仍显旧号),如某银行同一客户在“储蓄账户表”地址是“上海市黄浦区”,“信用卡表”却为“上海市静安区”。习题2:实际数据挖掘中,数据缺失会从多维度影响流程与结果:首先会降低模型精度,比如用“年龄、收入、学历”预测用户消费能力时,“收入”缺失会导致模型无法完整捕捉用户购买力特征,增大预测误差;其次会扭曲数据分布,若高收入用户普遍不填写“收入”,样本会偏向低收入群体,使消费偏好分析结果偏离真实情况;还会增加计算复杂度,多数算法(如逻辑回归、SVM)无法直接处理缺失值,需额外清洗,若某属性缺失超50%,可能被迫丢弃属性或样本,浪费数据资源;甚至可能误导结论,比如电商分析“商品评分与销量关系”时,低评分因用户懒填而缺失,易误判“评分与销量无关”。处理缺失值需结合场景选择方法:缺失比例低(<5%)可删除缺失样本,比例极高(>50%)可删除缺失属性;随机缺失的数值属性用均值/中位数填充、分类属性用众数填充,时序或有序数据用线性/多项式插值填充;缺失比例中等且属性相关时,用KNN、决策树等模型预测填充,或直接用XGBoost等支持自动处理缺失值的算法;若缺失本身有意义(如“婚姻状况”未填),可将“缺失”视为独立类别保留。习题3:插值填充法与模型填充法均为填充缺失值的核心手段,二者既有共性也有显著差异:共性在于都通过推断补充缺失值,避免删除样本/属性导致的数据浪费,且都依赖数据本身特征(有序性或关联性)。差异体现在原理与效果:插值填充法基于数据的有序性或连续性,通过相邻数据的数学关系(如线性、多项式)计算缺失值,优点是计算简单、速度快,缺点是仅适用于时序或有序数据,未利用属性间关联,易丢失细节;模型填充法基于属性相关性,用KNN、决策树等机器学习模型预测缺失值,优点是精度高(尤其属性关联强时),可处理非有序数据,缺点是计算复杂、耗时长,样本量小时易过拟合。应用场景上,插值填充法适合有序或时序数据,如气象站小时温度数据(缺失值用前后小时温度线性插值)、学生考试分数排名(缺失分数用相邻排名分数多项式插值);模型填充法适合非有序数据且属性相关性强的场景,如用户画像中缺失“月收入”(用“年龄、职业、学历”通过KNN预测)、商品数据缺失“销量”(用“价格、评分、类目”通过决策树预测),且需保证有足够样本训练模型。习题4:1)分箱法处理步骤,箱深度=3,箱均值平滑。箱深度:每个箱包含的样本数量(本题n=27,27÷3=9个箱),步骤如下:数据排序:13,15,16,16,19,20,20,21,22,22,25,25,25,25,30,33,33,35,35,35,35,36,40,45,46,52,70;划分等深箱:按“每箱3个样本”拆分,共9个箱:箱1:[13,15,16]箱2:[16,19,20]箱3:[20,21,22]箱4:[22,25,25]箱5:[25,25,30]箱6:[33,33,35]箱7:[35,35,35]箱8:[36,40,45]箱9:[46,52,70]计算每箱均值:箱1均值:(13+15+16)/3=14.67;箱2均值:(16+19+20)/3=18.33;箱3均值:(20+21+22)/3=21;箱4均值:(22+25+25)/3=24;箱5均值:(25+25+30)/3=26.67;箱6均值:(33+33+35)/3=33.67;箱7均值:(35+35+35)/3=35;箱8均值:(36+40+45)/3=40.33;箱9均值:(46+52+70)/3=56;箱均值平滑:用每箱的均值替换箱内所有样本值,平滑后数据为:[14.67,14.67,14.67,18.33,18.33,18.33,21,21,21,24,24,24,26.67,26.67,26.67,33.67,33.67,33.67,35,35,35,40.33,40.33,40.33,56,56,56]2)均值平滑的效果及其他数据平滑方法均值平滑的效果:优点:能有效降低数据噪声(如箱9中的“70”是极端值,被均值56平滑后,减少了对整体分布的影响);计算简单,易理解。缺点:过度平滑,丢失了箱内数据的细节差异(如箱1中的“13”和“16”本有3的差距,平滑后均为14.67,掩盖了原始数据的离散性)。其他数据平滑方法:箱中位数平滑:用箱的中位数替换箱内样本值(如箱1中位数=15,平滑后为[15,15,15]),优点是对极端值更鲁棒(如箱9中位数=52,比均值56更贴近非极端值);箱边界平滑:将箱内样本值替换为“箱的最小值或最大值”(如箱1取最小值13,平滑后为[13,13,13];或取最大值16),优点是保留数据的边界特征,适用于需突出“区间范围”的场景;回归平滑:用回归模型(如线性回归、LOESS局部回归)拟合数据,用预测值替换噪声值(如用“年龄”与“收入”的回归关系,平滑年龄中的异常值),优点是利用属性关联,精度高;聚类平滑:将数据聚类(如K-Means),用簇中心值替换簇内样本值(如将年龄聚为3个簇,用每个簇的中心年龄平滑簇内数据),适用于数据有明显聚类结构的场景。习题5:噪声数据和离群点虽都表现为偏离数据正常模式,但核心区别在于产生原因与业务意义:噪声数据是随机误差导致的无意义数据偏差,多源于采集或记录环节的失误,比如温度计故障将实际25℃误记为52℃、问卷填写时将“年龄25岁”错填为250岁,这类数据不反映真实规律,属于需修正或剔除的数据质量问题;而离群点是真实存在的异常现象,由特殊事件或规律驱动,比如某用户日常月消费约1000元,某月因购置家电突然消费10万元,某城市夏季历史平均气温28℃,某天真值达到40℃,这类数据虽偏离常态,却承载着重要业务或客观信息,并非数据错误。离群点分析的意义在于挖掘这些异常数据背后的隐藏价值,为决策提供关键依据:在金融领域,离群的异地大额转账、凌晨高频交易可能是欺诈行为的信号,及时分析可触发账户保护机制,降低资金损失风险;在电商场景,某款冷门商品销量突然激增10倍,通过离群点分析能识别潜在爆款,助力调整库存与营销策略;工业生产中,设备传感器记录的温度、压力等指标突然出现离群值,可能预示设备故障,提前排查可减少停机损失;在科研与公共事务领域,极端气候数据、特殊疾病发病率等离群点,还能为气候变化研究、公共卫生政策制定提供重要参考,帮助发现常规数据中难以察觉的关键规律。习题6:假设数据集分为k个组(如按“地区”分组),第i组大小为mi,目标样本量n<m,两种抽样方案的核心区别是是否保持原分组比例:(1)方案1:按组比例抽样((n×mi)/m个元素/组)抽样逻辑:先计算每组的“抽样比例”(与组大小成正比),再从每组抽取对应数量的样本(如组1占总样本的20%,则样本中组1的比例也为20%);特点:保持原分组结构的比例(即“分层抽样”的有放回版本),避免某组因样本量小而被过度抽样或遗漏;适用场景:需保证样本的“分组代表性”,如分析“不同地区用户的消费习惯”时,若A地区占总用户的10%,B地区占90%,方案1可确保样本中A地区仍占10%,避免方案2可能出现的“样本中无A地区用户”的情况;示例:总样本m=1000(A组m₁=100,B组m₂=900),目标n=100。方案1从A组抽(100×100)/1000=10个,B组抽90个,样本中A:B=1:9(与原比例一致)。(2)方案2:从整体随机抽样(n个元素)抽样逻辑:不考虑分组,直接从所有m个样本中随机抽取n个(每个样本被抽中的概率相等);特点:不保证原分组比例,可能导致某组在样本中比例过高或过低(甚至缺失),随机性更强;适用场景:无需关注分组结构,仅需样本“整体代表性”,如分析“所有用户的平均消费金额”时,分组(地区)不影响结果,方案2更简单高效;示例:同上总样本,方案2可能从A组抽5个、B组抽95个(A:B=1:19),或A组抽15个、B组抽85个(A:B=3:17),比例随机。习题7:1)逐步向前选择2)逐步向后删除3)逐步向前选择和逐步向后删除结合习题8:1)分箱法此处采用“等宽分箱”(按数据取值范围均分,数据最小值13、最大值70,范围57,3区间每区间宽度≈19),离散化结果为:[13,32],[33,52]、[35,70]2)基于熵的离散化基于熵的离散化核心是通过最小化离散后数据的熵,选择最优分割点,逐步将连续数据划分为区间。步骤1:确定候选分割点排序后的数据相邻值的中点为候选分割点,共26个。步骤2:计算每个分割点的“信息增益”此处假设目标类别为“低龄(≤30)”和“高龄(>30)”。以分割点“25.5”(分隔[13-25]和[30-70])为例:左区间[13-25]:低龄14个,高龄0个,熵=0;右区间[30-70]:低龄0个,高龄13个,熵=0;总熵=(14/27)×0+(13/27)×0=0,信息增益最大(原始熵≈0.996,增益≈0.996)。步骤3:递归分割或停止若需多区间,对上述两个区间继续分割(如右区间[30-70]的最优分割点“35.5”,分隔[30-35]和[36-70],熵进一步降低)。最终确定最优区间(此处以3个区间为例):[13-25],[30-35],[36-70]3)ChiMerge方法ChiMerge通过卡方检验判断相邻区间的“独立性”:若相邻区间的类别分布无显著差异,则合并;反之则保留,逐步减少区间数。假设目标类别仍为“低龄(≤30)”和“高龄(>30)”。步骤1:初始化区间(此时每个数据为一个区间),共27个初始区间。步骤2:计算相邻区间的卡方值以相邻区间[25](第14个数据,低龄)和[30](第15个数据,高龄)为例:观察值(低龄,高龄):[25]=(1,0),[30]=(0,1);期望值:低龄总占比14/27,高龄13/27,每个区间期望值=(14/54,13/54);卡方值≈3.9(大于卡方临界值3.84,拒绝“类别分布一致”,不合并)。步骤3:合并卡方值最小的相邻区间,重复至目标区间数逐步合并卡方值小的相邻区间(如[13]与[15]、[16]与[16]等),最终保留3个区间(与基于熵的离散化对应):[13-22],[25-35],[36-70]习题9:1)最小-最大规范化(min=0,max=1):值域固定为[0,1],通过线性变换将原始数据映射到该区间,无超出此范围的数值。2)z-score规范化:理论值域为(-∞,+∞),数据经变换后均值为0、标准差为1;实际中若原始数据近似正态分布,约99.7%数据落在[-3,3],但无严格边界。3)z-score规范化(使用均值绝对偏差):理论值域同样为(-∞,+∞),以均值为中心、均值绝对偏差为离散程度衡量标准,实际数据分布范围因原始数据特征而异,无固定上下界。4)小数定标规范化:值域为(-1,1)(不包含端点),通过移动小数点使原始数据绝对值小于1,所有规范化后的数据均落在该开区间内。习题10:此处只给出结果。1)最小-最大规范化:[0,0.125,0.25,0.5,1];2)z-score规范化:[-1.06,-0.71,-0.35,0.35,1.77](保留2位小数);3)z-score规范化(使用均值绝对偏差):[-1.25,-0.83,-0.42,0.42,2.08](保留2位小数);4)小数定标规范化:[0.02,0.03,0.04,0.06,0.1]。

大数据挖掘导论与案例习题参考答案第5章分类概念与方法习题1:使用决策树模型分类分为两个阶段:决策树模型构建和决策树模型应用。第一阶段:决策树模型的构建这个阶段的主要步骤如下:(1)数据准备:收集已标注类别的数据集,并进行必要的数据预处理(如处理缺失值、异常值、连续属性离散化等)。将数据划分为训练集和测试集。(2)选择划分属性:从根节点开始,将训练集视为当前节点数据集,根据所选算法使用的不纯性度量(如信息增益、增益率、基尼指数等),从可用特征中选择一个最佳特征,将当前节点的数据集划分为更纯的子集。(3)节点分裂与树生长:根据所选特征的取值创建分支,每个分支形成一个子节点。对每个子节点递归地重复步骤(2),使用其对应的数据子集和剩余特征继续划分。(4)停止分裂与标记叶节点:当满足以下任一停止条件时,当前节点停止分裂,成为叶节点:1)节点上的样本属于同一类别;2)没有可用属性,或属性取值相同;3)样本数量少于预定阈值。4)达到预设树的最大深度;5)划分带来的“纯度”提升小于阈值。(5)剪枝:对初始决策树剪枝,以解决过拟合问题。有先剪枝和后剪枝两种剪枝方法。(6)模型评估:使用测试集数据,评估最终决策树模型的分类性能。常用指标包括:准确率、精确率、召回率、F1分数、AUC等。(7)超参数调优:根据评估结果,调整模型构建时的超参数(如树的最大深度、最小分裂样本数、剪枝标准等),通过交叉验证寻找最优配置,确立泛化性能最好的决策树模型。第二阶段:模型应用这个阶段的任务是使用第一阶段已构建的决策树模型对新样本分类,即对于一个未知样本,从树的根节点开始,根据其有关属性的取值,沿着对应的分支向下遍历决策树,直到到达某个叶节点。该叶节点所代表的类别即为模型对该未知样本预测的类别。习题2:(1)计算训练集关于类别的熵。记训练数据集为D,Entropy(2)计算属性x1、x2的信息增益。Gain=≈0.229438Gain=≈0.007215bit(3)对连续属性x3,计算所有可能的划分的信息增益。按x31.03.04.05.06.07.08.0+-+-,-++,--最好的分割点可能在2.0、3.5、4.5、5.5、6.5、7.5处取到,下面计算每个分割点对应的信息增益:Gain=≈0.14269bit同理可得:GainD,xGainD,Gain可见,2.0为分割点时信息增益最大,所以2.0是最好的分割点。TTF+:1-:4x+:3-:1(5)如果用基尼指数作为不纯性的度量,哪个划分是x1、x2、x3中的最佳划分。计算属性x1、x2、x3作为分裂属性时子节点的基尼指数GiniGiniGiniGiniD,x1、GiniD,x2和GiniD习题3:计算属性x1、x2、x3作为分裂属性时子节点的信息增益率:GiniRatioGiniRatioGiniRatioGiniRatioD,xxxx+:3-:5x+:1-:0同理,对沿右侧分支下来的8个样本重复上述计算,选择最佳分裂。最终得到如下决策树:习题4:(1)使用乐观方法计算决策树的泛化错误率。训练误差可提供对泛化误差的乐观估计。将图5.37中的训练样本依此提交图中的决策树,分别得到类标号:+,+,-,-,-,-,-,+,-,-。对照可得训练误差率为0.30,所以泛化错误率的乐观估计为0.30。(2)使用悲观方法计算决策树的泛化错误率,罚项因子取0.5。悲观误差估计是指结合模型复杂度,使用训练误差与模型复杂度罚项的和作为泛化误差的估计。即泛化错误率的悲观估计为:0.3+(3)使用测试集计算决策树的泛化错误率。这种方法叫作降低误差剪枝。将测试样本依此提交决策树,分别得到类标号:+,-,-,+,-,对照可得泛化误差为:+0+01011B-AC-+0训练集实例编号ABC类别1000+2001+3010+4011-5100+6100+7110-8101+9110-10110-测试集实例编号ABC类别11000+12011+13110+14101-15100+图5.37习题4的决策树和数据集习题5:下面分析各方法的准确率及其可靠性:(1)保持法:使用数据集的2/3作为训练集,1/3作为测试集。由于决策树未剪枝,可认为决策树完全拟合了训练集,即训练集准确率约为100%。在测试集上,由于标签随机,二分类且正负样本数量相等,可认为准确率约为50%。所以,保持法测试集准确率≈0.5。(2)10-折交叉验证法:将数据集大致均为10份,每次用9份训练,其余1份测试,循环10次,取10次所得测试集上准确率的平均值。每一折上,训练集仍然被决策树完全拟合(未剪枝),测试集准确率仍然约为50%。交叉验证会比单次保持法略稳定,因为用多个子集测试,减少了偶然性。所以,10-折交叉验证法的准确率≈0.5,波动比保持法小。(3).632自助法:每次从训练集中有放回抽样形成新的训练集,约63.2%的样本会出现在训练集中,剩余36.8%样本作为测试集。对随机标签来说,测试准确率仍然约为50%。因为决策树完全拟合训练集,所以自助法通常会稍微高估模型准确率(0.632×0.5+0.368×1)。所以,.632自助法准确率略高于保持法和交叉验证法,但还是接近随机猜测。总之,保持法可能受训练/测试拆分偶然性影响较大;十折交叉验,通过多次拆分减少了偶然性,结果更稳定;.632自助法略高估准确率。相比而言,10-折交叉验证法更可靠。习题6:表5.29比较决策树T1和T2的测试准确率数据集准确率T1T2A0.860.97B0.840.77(1)分析:T1在训练集A上准确率为0.86,T2在A上为0.97,即T2几乎完全拟合了训练集,T1拟合适中。测试集B上的准确率:T1为0.84,T2为0.77,即T2的准确率下降明显,说明过拟合训练集。而T1在测试集B上的准确率几乎和训练集一致,说明泛化能力更好。总之,T1在未知实例(测试集B)上的性能更好,而T2过拟合了训练集,泛化能力较差。(2)分析:在(A+B)上测试,T1的准确率为0.85,T2的准确率为0.87,虽然T2在整体数据集上准确率略高,但注意到(A+B)是已知数据,相当于在训练集与测试集混合之后的数据集上进行测试,复杂度更高的T2的过拟合可能掩盖了泛化性能不足的问题。从小样本测试(AvsB)来看,T2在未知数据上准确率低(0.77),表明泛化能力比T1差,T1训练-测试差异小,说明性能稳定,泛化可靠。综合考虑:仍应选择T1进行分类,因为它在未知实例上更稳健,泛化能力更强。虽然T2在整体准确率稍高,但这是在已知数据上计算的结果,可能受到过拟合的影响。习题7:表5.30习题7的数据集x0.53.07.09.5y--+++--+--(1)数据点x=5.0与表5.30中的各数据点(自左向右依此记为x1,……,x10)之间的欧氏距离依次为:4.5,2.0,0.5,0.4,0.1,0.2,0.3,0.5,2.0,4.5。k取1时,x=5.0的最近邻是x5=4.9,由此判断其类别号为+。k取3时,x=5.0的3个最近邻是x5=4.9,x6=5.2,x7=5.3,由此判断其类别号为-。k取5时,x=5.0的5个最近邻是x5=4.9,x6=5.2,x7=5.3,x4=4.6,x3=4.5,按多数类标号判断其类别号为+。k取9时,x=5.0的9个最近邻是x5=4.9,x6=5.2,x7=5.3,x4=4.6,x3=4.5,x8=5.5,x2=3.0,x9=7.0,x1=0.5按多数类标号判断其类别号为-。(2)距离加权表决法(Distance-WeightedVoting)是k-最近邻(k-NN)算法的一种改进方法。在标准的k-NN中,所有最近邻的投票权重相同,分类结果由简单多数投票决定。而距离加权表决法,则根据每个最近邻与待分类点之间的距离来分配投票权重,使距离更近的邻居对分类结果的影响更大。对于每个近邻,根据距离分配权重。通常权重是距离的递减函数,这里选则wi=1/di(i=1,……,10)。对于每个类别,将属于该类别的所有最近邻的权重相加,得到该类别的总权重。最后将待分类数据点指派到总权重最大的类别。利用(1)中所计算的x=5.0与每个点的距离,得到如下权重:w5=10,w6=5,w7=3.33,w4=2.5,w3=2,w8=2,w2=0.5,w9=0.5,w1=0.22,w10=0.22。对每个k值,计算正类(+)和负类(-)的权重和:k=1时,x5(+)对应的w5=10,正类权重和10,负类权重和0,故分类结果为+k=3时,x5(+)对应的w5=10,x6(-)对应的权重w6=5,x7(-)对应的权重w6=3.33。正类权重和为10,负类权重和为8.33,正类胜出,故k=5时,同理可得:正类权重和为10+2.5+2=14.5,负类权重和为5+3.33=8.33,正类胜出,故同理可得,k=9时,仍然因此,使用距离加权表决法时,对于k=1,3,5,9时习题8:(1)朴素贝叶斯分类器的核心是贝叶斯定理,算法通过贝叶斯公式计算样本属于某个类别的后验概率,然后据此进行分类。贝叶斯定理公式为:P目标:对于给定的样本属性集X,找到使后验概率P(Y∣由于P(X)(2)类条件独立性(关键假设):假设样本的所有属性在给定类别条件下是相互独立的,即:P该假设简化了联合概率P(X∣虽然现实中属性往往相关,但该假设使得模型计算高效且在许多场景(尤其是文本分类)中效果良好。习题9:在二分类问题中,如果正负样本数量差异很大(如欺诈交易很少,正常交易很多),普通分类器很可能会偏向多数类,导致少数类(欺诈)预测准确率低。处理类别不平衡常用方法包括:数据层面方法和算法层面的方法。数据层面方法包括:过采样和欠采样等。过采样增加少数类样本数量,通过合成新样本来平衡类别;欠采样减少多数类样本数量,避免模型被多数类主导。算法层面方法包括:调整分类器权重、调整分类阈值和特殊算法设计等。调整分类器权重通过给少数类样本分配更高权重,让模型在训练时更关注欺诈样本;调整分类阈值在模型输出概率后,不按0.5划分类别,而是使用对少数类更敏感的阈值;特殊算法设计使用专门处理不平衡数据的算法,如集成方法(Boosting、Bagging)等。处理类别不平衡数据时,评估指标的选择也要考虑。不能只看准确率(Accuracy),因为在严重不平衡下,大部分样本属于多数类,准确率可能很高,但少数类完全被错误预测。通常综合精度(Precision)、召回率(Recall)、F1-score、AUC-ROC等指标衡量模型在少数类上的表现。(2)构造高质量信用卡欺诈分类器的方法假设银行有大量非欺诈交易和少量欺诈交易的数据集。数据预处理:可以先对非欺诈样本做

欠采样

或对欺诈样本做

过采样(SMOTE),得到平衡训练集。保留原始比例的测试集,用于真实性能评估。算法选择与调整:选择对不平衡数据鲁棒的算法,如随机森林等。在训练时设置类别权重,让模型更关注欺诈样本。阈值与评估:调整分类阈值以增加对欺诈的召回率,同时监控精度,避免误报太高。使用AUC-ROC或F1-score作为主要评估指标。模型验证:使用交叉验证保证模型泛化能力。避免模型只在训练集上表现好(过拟合多数类)。总之,通过数据平衡+权重调整+精确评估指标,可以构建既能捕捉少数欺诈交易,又能控制误报的高质量分类器。习题10:详见教材5.8.1和5.8.2节。习题11:学习率(LearningRate)是神经网络训练中最重要的超参数之一,它控制着模型参数在每次迭代中更新的“步长”,通常用符号表示。其取值直接影响模型的收敛速度、优化效果甚至训练稳定性。学习率的取值既不能过大,也不能过小,学习率过小,训练效率低下,收敛速度极慢,可能陷入局部最优。若学习率过大,参数更新步长超过损失函数最小值的范围,会导致模型在最优解附近来回震荡。若学习率极大,参数更新步长可能直接跳过损失函数的最小值,甚至向损失增大的方向移动,过大的步长可能导致参数值异常。习题12:SVM的超平面仅由支持向量决定,而非全部样本,超平面的表达式为,其中参数和的优化完全依赖于支持向量,这些样本是临界样本,直接决定了间隔的大小和超平面的位置。这种“少数样本决定模型”的特性,使得噪声点(尤其是靠近分类边界的噪声)极易成为支持向量,进而直接扭曲超平面的位置和方向。若数据中存在噪声,硬间隔SVM会因无法满足“所有样本正确分类”的约束,导致无法找到有效超平面。为处理噪声和线性不可分问题,软间隔SVM引入了松弛变量和惩罚参数C,但软间隔仍无法完全解决噪声敏感问题,若C过大,对噪声点的惩罚严厉,模型会强制将噪声点“拉回”间隔外,导致超平面被噪声点严重扭曲。若C过小,对噪声点的惩罚宽松,模型允许大量样本违反间隔,导致超平面过于“迁就”噪声,间隔缩小甚至分类边界模糊,模型欠拟合。习题13:详见教材5.9.1节。习题14:决策树的训练过程中,最耗时的步骤是节点分裂,对于每个内部节点,需要遍历所有可用特征,对每个特征尝试所有可能的分裂点,并通过计算分裂增益选择“最优分裂特征和分裂点”,计算复杂度与特征数量直接相关。决策树Bagging组合的核心是“样本随机抽样”,但在每棵决策树的节点分裂时,默认使用所有特征。随机森林在Bagging的基础上增加了特征随机选择机制,在每棵树的每个节点分裂时,并非使用所有特征,而是从全部特征中随机选择一个子集,从根本上降低了单棵树的训练成本。Bagging树由于使用全特征,不同树的分裂逻辑可能高度相似,导致树之间的冗余度高,随机森林通过特征随机选择,迫使每棵树基于不同的特征子集分裂,树之间的差异更大,冗余度更低。这种低相关性使得随机森林在达到相同性能时,需要的树数量可能少于Bagging树,进一步减少了总训练时间。习题15:支持向量机、Adaboost和逻辑回归是机器学习中经典模型,分别属于核方法、集成学习和广义线性模型,其学习策略和算法存在显著差异。逻辑回归是针对二分类问题的广义线性模型,核心是通过线,算法是凸优化问题,通常使用梯度下降或牛顿法优化,而支持支持向量机的学习策略基于几何间隔最大化,寻找能将两类样本完全分开的最大间隔超平面,使边界到两类样本的最小距离最大,支持向量机算法的原始优化问题是带约束的凸二次规划问题,直接求解复杂,实际通过对偶变换简化求解。Adaboost是集成学习中Boosting的代表,通过“迭代优化弱分类器+加权组合”构建强分类器,适用于各类分类问题,对噪声较敏感。三者的本质差异源于学习策略,逻辑回归是概率驱动的线性模型,SVM是几何间隔驱动的核模型,Adaboost是迭代优化驱动的集成模型。算法实现则围绕各自的优化目标展开,分别通过梯度下降、对偶变换+SMO、权重迭代实现。

大数据挖掘导论与案例习题参考答案第6章关联分析概念与方法习题1:1)高支持度和高置信度的规则高支持度和高置信度的规则通常表现为常见商品之间的强关联关系。例如,规则"牛奶→面包"“豆浆→油条”等可能具有高支持度和高置信度,表明这两种商品经常被一起购买,且购买牛奶的顾客有很大概率会购买面包。这类规则反映了大众化的消费习惯,适合用于基础的商品陈列优化和常规促销组合设计,但由于过于明显,可能缺乏新颖性,营销价值有限。2)高支持度和低置信度的规则高支持度和低置信度的规则表现为常见商品之间的弱关联。例如规则“牛奶→啤酒”“汽水→雪糕”等可能支持度较高但置信度较低,说明虽然两种商品都很常见,但一起购买的概率不高。这类规则普遍性高但关联性弱,通常没有实际应用价值,可能反映商品之间的替代关系而非互补关系。3)低支持度和高置信度的规则低支持度高置信度的规则表现为小众商品之间的强关联关系,经典案例如是“尿布→啤酒”“专业相机→高端镜头”等。这类规则虽然不常见,但关联性极强,具有较高的商业洞察价值,适合用于精准营销和特殊人群的定向促销,应用中需要结合提升度等指标进一步验证其实际价值。4)低支持度和低置信度的规则低支持度和低置信度的规则表现为不常见商品之间的弱关联。这类规则通常没有实际应用价值,可能是数据中的噪声,在商业决策中可以安全忽略。在实际应用中,理想的关联规则应同时具备较高的支持度、置信度和提升度,并且与业务目标高度相关。对于特殊场景(如奢侈品销售、细分场景或专业领域分析),可适当放宽支持度要求,重点考察置信度和提升度。习题2:1)将每个事务看做一个购物篮,则事务数据集包含10个事务,易得项集{e}的支持度为0.8,项集{b,d}的支持度为0.2,项集{b,d,e}的支持度为0.2。2)关联规则{b,d}→

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论