版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
CHAPTER03·教学课件学会从数据中成长——典型机器学习模型应用机器学习流程·六类范式·聚类·回归·分类王丹丹2026.11.12从AI养鸡大模型出发,走完"数据→智能"的完整旅程:让程序自己找规律,让数据"物以类聚",让模型预测数值、判别类别。配套教材:《人工智能基础:案例驱动的技术认知与应用》第3章CHAPTER03·CASESTUDY导读案例:AI赋能智慧养殖第3章·导读案例——破解家禽养殖难题的智能革命家禽养殖是保障"菜篮子"工程、助力农民增收的核心产业,肉鸡与蛋鸡养殖更是关系民生的重要板块。但长期以来,传统养殖模式深陷"高成本、高风险、低效益"的困境。死亡率与产蛋率的双重压力种鸡死亡率普遍高达5%,产蛋率仅66.07%;其中30%以上的意外死亡源于温/湿度失控、通风不良等管理漏洞。成本高企,利润被严重压缩单位面积养殖密度低、智能化不足,每斤鸡肉养殖成本居高不下至6元左右;饲料投喂浪费、疫病预警滞后等问题频发。小规模户高度依赖人力每批养殖约2万只、年养3.5批,人工巡检与经验管理的局限性日益凸显,精细化管理无从谈起。抗风险能力薄弱缺乏科学化标准支撑,环境调控失准;一旦遭遇疫情或极端天气,便可能面临重大经济损失。如何降低死亡率、提升产蛋率与养殖效率?机器学习正是破解这一难题的"智能内核"——自主可控的AI养鸡大模型应运而生。内容来源:教材第3章导读案例02CHAPTER03·CASESTUDY案例解析:AI养鸡大模型,让经验驱动变数据驱动第3章·导读案例(1)"瘦设备+胖平台"创新架构前端部署低成本、易安装的数字装备,实时采集温度、湿度、氨气浓度、二氧化碳、光照强度、用水量、鸡群体重等多维度数据;后端依托统一数据中台,让机器学习算法成为养殖全流程的"智慧大脑"。(2)三类学习算法协同发力监督学习:学习健康鸡群与患病鸡群体征映射,实现疫病早期预警;无监督学习:挖掘环境参数潜在关联,识别温/湿度突变、氨气超标等异常;强化学习:根据生长状态、饲料消耗与市场反馈,动态优化投喂策略与养殖密度。(3)种鸡销售决策模型融合监督学习与回归分析,综合市场行情、日龄、体重、日增重趋势,动态推荐最佳出栏时机,助力增收7%。图3-1AI养鸡大模型(教材原图)科技助农的坚守研发团队收集全国20余个省份的养殖数据,覆盖高温、高湿、严寒等环境,标注上万组临床病例数据;以迁移学习复用成熟养殖知识,让中小养殖户无须大量本地数据即可快速部署。机器学习让家禽养殖从"经验驱动"彻底转向"数据驱动",实现养殖全流程的可视化、自动化与智能化。内容来源:教材第3章导读案例(图3-1)03SECTION3.1·MACHINELEARNING机器学习:让程序从数据中学会"找规律"3.1·机器学习机器学习是AI领域的核心基石,既是连接理论模型与实际应用的关键桥梁,又是培养"数据思维"与"建模能力"的核心载体。从智能推荐、语音识别到自动驾驶、医疗诊断,其思想与算法已广泛渗透于各类科技应用。本节遵循"基础认知—经典模型—工具实战"的递进路线,借助Python的Scikit-learn库掌握实践技巧。传统编程:规则驱动开发者需要明确编写输入到输出的映射规则,计算机按固定规则执行:输入数据+映射规则→输出结果机器学习:数据驱动计算机通过分析大量标注数据,自动学习输入与输出的内在关联,进而具备对新数据的预测能力:输入数据+输出结果→学习规则本章地图3.1机器学习:九大关键步骤×六类学习范式×数据集与降维→3.2聚类:无监督的"自动分班"(K-Means/AGNES)→3.3回归:预测连续值(线性回归/梯度下降/多项式回归)→3.4分类:预测"属于哪一类"(逻辑回归/朴素贝叶斯/支持向量机)内容来源:教材3.1节引言04SECTION3.1.1·WORKFLOW机器学习的基本流程:9个关键步骤(上)3.1.1·流程机器学习的本质,是从数据中自动发现规律,并利用这些规律对未来进行预测或决策。它不是魔法,而是一套严谨的科学方法论——一个典型的机器学习项目,往往遵循一条清晰的技术路径(图3-2)。图3-2机器学习的基本流程(教材原图)①问题定义:明确"我们要解决什么""如何降低鸡群死亡率"导向异常检测模型,"何时出栏利润最高"则需要回归与决策优化。只有明确任务类型(分类、回归、聚类等),才能选对工具与评价标准。②数据收集:让机器"见多识广"数据是机器学习的"燃料",来源可以是数据库、API、物联网设备或人工采集。数据越丰富、覆盖场景越广,模型的泛化能力就越强。③数据预处理:为数据"洗澡剪发"现实数据往往"脏乱差":清洗(去除错误数据)、归一化(缩放到统一尺度)、编码(类别转数字),避免"垃圾进,垃圾出"(Garbagein,Garbageout)。④特征工程:提炼数据中的"精华"从原始数据中构造更有意义的新变量:仅知"日龄"和"体重"不够,还需计算"日增重趋势";结合"温度""湿度"可生成"体感温度指数"。理解这一完整流程,是掌握机器学习思维的第一步。前四步回答"拿什么学",后五步(下页)解决"怎么学、学得怎么样、如何用起来"。内容来源:教材3.1.1节(图3-2)05SECTION3.1.1·WORKFLOW机器学习的基本流程:9个关键步骤(下)3.1.1·流程⑤模型选择:挑选合适的"学习者"分类:逻辑回归、支持向量机、随机森林;回归:线性回归、XGBoost;聚类:K-Means、DBSCAN。不同模型有不同的假设前提与适用范围,需结合数据特点谨慎选择。⑥模型训练:让模型"学会经验"使用标注好的训练数据集,让算法自动调整内部参数,以最小化预测误差。监督学习依赖标签指导,无监督学习自行探索结构,强化学习通过奖励机制不断试错。⑦模型评估:检验"学得怎么样"不能只看训练表现,要测试模型在新数据上的泛化能力:划分训练集/验证集/测试集,用准确率、精确率、召回率、AUC、均方误差等指标衡量性能。⑧模型调优:精益求精的打磨通过超参数搜索(如网格搜索、贝叶斯优化)、交叉验证等方式进一步提升模型表现,如调整决策树的最大深度、神经网络的学习率,找到最优配置组合。⑨模型部署与监控:走向真实世界评估通过后部署上线,如将疫病预警模型接入管理系统实时推送风险提示。还需持续监控,防止环境变化导致性能下降("模型漂移"),必要时重新训练更新。工程观:机器学习不是一键生成的奇迹,而是一个环环相扣、反复迭代的工程过程——从问题出发,以数据为基,经建模、验证、优化,最终服务于现实需求。内容来源:教材3.1.1节(5)—(9)06SECTION3.1.2·PARADIGMS六类范式①②:监督学习与无监督学习3.1.2·范式根据学习方式的不同,机器学习算法主要分为六大类,各类算法适用于不同的任务场景和数据条件。1监督学习(SupervisedLearning)在老师的指引下学会"看图说话"核心思想:使用"输入特征—输出标签"成对的有标签数据进行训练,模型学习从输入到输出的明确映射关系,如同在"老师的指引"下学习。典型场景:有明确预测目标、标签易获取的任务——垃圾邮件识别(垃圾/正常)、房价预测(具体价格)、疾病诊断(患病/健康)。常用算法:线性回归、逻辑回归、决策树、随机森林、支持向量机、深度学习模型等,是目前应用最广泛的学习范式。2无监督学习(UnsupervisedLearning)在黑暗中摸索数据的"隐藏乐章"核心思想:无须预先标记的目标输出作指导,仅使用无标签数据进行训练,模型自主挖掘数据隐藏的结构、规律或关联,相当于"自学探索"。典型场景:标签难以获取或无须明确预测目标——用户分群(按消费习惯聚类)、高维数据降维可视化、信用卡欺诈检测(发现异常模式)。常用算法:K-Means、层次聚类、主成分分析(PCA)、自编码器(Autoencoder)、关联规则挖掘(如购物篮分析)。对比记忆:监督学习如同"有师之学",依赖有标签数据建立输入与输出之间的精确映射,是当前应用最广泛的基础范式;无监督学习则像"自主探索",在无标签数据中挖掘隐藏结构,揭示数据内在规律。内容来源:教材3.1.2节(1)(2)07SECTION3.1.2·PARADIGMS六类范式③④:半监督学习与强化学习3.1.2·范式3半监督学习(Semi-supervisedLearning)善用少数"灯塔"照亮海量"迷雾"核心思想:介于监督与无监督之间,结合少量有标签数据+大量无标签数据进行训练,既利用标签的监督信息,又借助无标签数据的分布特征提升性能。典型场景:标注成本高但无标签数据丰富——医学影像分析(专业医生标注CT片成本高)、语音识别、文本分类(仅部分文档有类别标签)。常用算法:自训练(用有标签数据训练后,对无标签数据打"伪标签"迭代优化)、一致性正则化(保证输入小扰动时预测结果稳定)。4强化学习(ReinforcementLearning)智能体的"生存游戏"与"策略进化"核心思想:智能体(Agent)与环境(Environment)交互学习,通过试错积累经验——采取动作后获得"奖励/惩罚"反馈,目标是优化策略以最大化长期累积收益,类似"试错成长"。核心要素:状态(环境描述)、动作(智能体选择)、奖励(反馈信号)、策略(决策规则)四大组件。典型场景:动态决策与控制——游戏AI(AlphaGo、Dota2AI)、自动驾驶(实时应对路况)、智能机器人导航(适应复杂环境)。案例回响:AI养鸡大模型中,强化学习根据鸡群生长状态、饲料消耗与市场反馈动态优化投喂策略与养殖密度——正是"试错进化"思想在养殖场的落地;半监督与自监督学习则作为监督/无监督之间的桥梁与延伸,巧妙利用少量标注或自行构造监督信号,释放海量无标签数据的价值。内容来源:教材3.1.2节(3)(4)08SECTION3.1.2·PARADIGMS六类范式⑤⑥:自监督学习与迁移学习3.1.2·范式5自监督学习(Self-supervisedLearning)给机器一本"自我出题的练习册"核心思想:无监督学习的进阶衍生——通过构造"辅助任务"从无标签数据中自动生成监督信号,无须人工标注,核心是学习通用可迁移的特征表示。如BERT的掩码语言建模(MLM):遮蔽部分文本让模型预测被遮蔽词。典型场景:大规模数据预处理与特征学习——BERT的MLM、计算机视觉中的对比学习(MoCo)、语音识别的特征预训练,已成为大模型时代的基础性技术。6迁移学习(TransferLearning)站在巨人肩膀上的"知识跃迁"核心思想:知识复用型学习范式——将在"源域/源任务"中训练好的模型参数与知识迁移到相关的"目标域/目标任务"。典型做法:用大规模数据集上的预训练模型(如ResNet、BERT)作起点,在特定任务上微调(Fine-tuning)。典型场景:小样本、高标注成本任务——ImageNet预训练模型迁移到医学影像分类、BERT微调处理小样本本分类、低资源语言的机器翻译。六类范式总结:监督学习是"有师之学";无监督学习是"自主探索";半监督与自监督是两者之间的桥梁与延伸;强化学习模拟"试错进化"的决策过程;迁移学习实现"知识跃迁"。六类范式各具特色、相辅相成,共同构成现代机器学习的方法论基石,为不同场景下的智能建模提供系统性解决方案。内容来源:教材3.1.2节(5)(6)及范式总结09SECTION3.1.3·DATASET合理的数据集:模型成功的第一步3.1.3·数据集机器学习项目中常面临一个现实矛盾:数据越多越好,但太复杂又会让模型"学不动"。就像新手养殖户面对几十个监控仪表反而不知所措——此时需要的不是更多数据,而是帮助模型"抓重点"。好数据集的3个基本要求①代表性强:能覆盖实际应用场景若只采集夏季高温环境数据,模型就无法适应冬季寒冷地区。研发团队专门收集了全国20多个省份、不同季节、不同规模鸡舍的数据,确保广泛适用性。②标签准确:模型学习正确判断的基础对监督学习任务(如疫病识别),每条数据都应有明确标签——"这只鸡是否患病""当天死亡原因是什么",就像老师批改作业时的答案。③特征相关性强:剔除无关干扰预测"何时出栏利润最高"时,日龄、体重、饲料消耗速率是关键特征;"鸡舍墙面颜色"这类无关特征应剔除,避免干扰模型判断。数据集的核心构成:喂给模型的"食材"①特征变量(Features)描述样本的各种属性:每只鸡每天的体温、体重、采食量、环境温/湿度、光照时间等。②目标变量(Label/Target)我们希望预测的结果:"是否患病""当日产蛋率""最佳出栏日龄"等。③样本数量与多样性足够的数据量和丰富的场景覆盖,让模型学会应对各种情况——只用南方夏季的数据训练,到了北方冬季就可能"水土不服"。内容来源:教材3.1.3节(1)(2)10SECTION3.1.3·DIMENSIONALITY数据降维:给数据"瘦身",让模型轻装上阵3.1.3·降维为什么要降维?现代鸡舍可实时采集10多种环境与生理参数,形成高维数据空间。信息虽丰富,却带来"维度灾难":▪模型训练变慢,计算资源消耗大▪多个变量之间可能存在冗余(如温度升高常伴随湿度下降)▪过多无关或噪声特征会误导模型,降低预测准确性数据降维技术把复杂的高维数据压缩成少数几个"核心特征",既保留关键信息,又提升效率。方法原理简述智慧养殖应用示例主成分分析(PCA)将多个相关变量合并为少数几个不相关的"综合指标"把温度、湿度、二氧化碳浓度合成"环境压力指数",用于评估鸡群舒适度线性判别分析(LDA)在分类任务中寻找最能区分不同类别的方向区分健康鸡与患病鸡的关键体征组合,提升诊断准确率表3-1常见的数据降维方法✱注:通常先对数据做标准化处理(消除单位差异)再应用主成分分析;可通过"累计方差贡献率"判断保留多少主成分合适(一般≥85%)。降维不是"删掉不重要的列",而是信息的提炼与重组——如同把一本厚书浓缩成一份提纲,篇幅变短,但精华仍在。内容来源:教材3.1.3节(3)(表3-1)11SECTION3.1.3·DIMENSIONALITY相关性分析与降维设置:遵循"够用就好"原则3.1.3·降维相关性分析:找出变量间的"隐藏关系"相关性分析是数据降维的前提,用于判断特征之间的关联程度、避免冗余。常用皮尔逊相关系数衡量,取值范围为[-1,1]。取值接近1:正相关强——如"氨气浓度"与"鸡群患病率"。取值接近-1:负相关强——如"通风时长"与"氨气浓度"。取值接近0:几乎无关联——如"鸡的性别"与"光照强度"。常用工具:相关系数矩阵图(Heatmap)和散点图矩阵(PairPlot)。降维设置4要点:"够用就好"①探索性数据分析(EDA)画图观察各变量之间的关系,找出强相关的特征对,提前预判是否需要降维。②保留足够信息量通常要求降维后保留85%~90%的原始方差(适用于主成分分析)。③结合业务解释性尽量选择结果可解释的方法——"综合健康指数"比抽象的"主成分1"更容易被养殖户理解和信任。④避免过度降维一味追求低维度可能导致信息丢失。应通过交叉验证比较不同维度下的模型性能,找到最优平衡点——降维不是简化问题,而是让模型更聪明地看待问题。内容来源:教材3.1.3节(4)(5)12SECTION3.2.1·CLUSTERING聚类:没有标准答案的"自动分班"3.2.1·聚类情境导入:开学第一天,老师要把一群陌生的孩子分成几个小组,但她不知道谁成绩好、谁爱运动、谁性格内向——她只能根据孩子们的行为特征(说话声音大小、走路快慢、是否主动交流)来判断谁和谁更像。这正是聚类的核心思想。▪核心做法:在没有标签的情况下,把相似的数据样本归为一类(称为"簇"),做到"同类相近,异类相远"。▪学习范式:聚类(Clustering)属于无监督学习,不需要提前知道每个样本属于哪一类——没有标准答案,却让数据自己"说出"结构。▪广泛应用:用户分群、异常检测、生物分类等领域——哪里需要"无师自通"地发现分组,哪里就有聚类。▪智慧养殖应用:成千上万只鸡如何精细化管理?聚类可用于鸡群健康状态分组、采食行为模式识别、生长潜力评估——让"物以类聚"成为养殖决策的依据。内容来源:教材3.2节引言、3.2.1节13SECTION3.2.2·CLUSTERING聚类方法的分类:5种常见的"分组策略"3.2.2·分类类型核心思想典型算法智慧养殖应用示例划分式聚类把数据划分为互不重叠的K个簇,每个样本只能属于一个组K-Means、K-Medoids、CLARANS按鸡群生长特征(体重、日增重、采食量)划分生长等级,制定差异化投喂方案层次聚类构建树状结构,逐步合并或拆分簇AGNES(自底向上)、DIANA(自顶向下)分析不同批次鸡群的疫病易感性层次关系,识别高风险群体的共性特征密度聚类基于样本分布密度,发现任意形状的簇DBSCAN、OPTICS从鸡舍环境监测数据(温度、湿度、氨气浓度)中识别异常环境模式,预警疫病风险网格聚类将数据空间划分为有限个单元格,在网格的基础上聚类STING、CLIQUE结合鸡群生理指标与环境数据,预测不同生长阶段的健康状态分布模型式聚类假设数据来自某种概率分布,拟合模型后进行归属判断高斯混合模型(GMM)、自组织映射(SOM)处理全国多省份养殖基地的海量传感器数据,快速划分环境适宜性区域表3-2聚类方法的分类学习路线:接下来逐一拆解五类策略的核心思想,并用K-Means与AGNES两个完整示例走通"数据→分组"全过程。内容来源:教材3.2.2节(表3-2)14SECTION3.2.2·K-MEANS划分式聚类:K-Means最小化"簇内差异"3.2.2·划分式(1)核心思想:将数据集一次性划分为互不重叠的K个簇,每个样本仅属于一个簇,通过迭代优化簇中心和样本归属,最小化簇内差异。适用于结构紧凑、形状规则且数据量适配的特征数据——如全国20多个省份家禽养殖的温/湿度、氨气浓度、鸡群体重数据。SSE=Σk=1..KΣx∈Cₖ||xᵢ−μₖ||²K-Means属于硬聚类,核心目标是最小化所有样本到其所属簇中心(质心)的平方距离和(SSE,误差平方和):K为预设簇数,Cₖ为第k个簇,μₖ为第k个簇的质心,xᵢ为样本向量。①初始化簇中心从数据集中随机选择K个样本作为初始质心。②分配样本归属计算每个样本与所有质心的距离(常用欧氏距离),将样本分配到距离最近的质心所属簇。③更新簇中心计算每个簇内所有样本的均值,将其作为新的质心。④迭代优化重复步骤②③,直到质心不再变化(或变化小于预设阈值)、SSE收敛,迭代停止。内容来源:教材3.2.2节(1)划分式聚类15SECTION3.2.2·AGNES层次聚类:AGNES自底向上"合并同类项"3.2.2·层次(2)核心思想:通过"自底向上合并"(凝聚式)或"自顶向下分裂"(分裂式)的方式,构建簇的层次结构(树状图),无须预先指定簇数K。典型算法:AGNES(自底向上)、DIANA(自顶向下)。适用于探索不同区域在环境条件、养殖基础、鸡群生长适配性上的层次关联。簇间相似度的4种计算方法▪单链法:以两个簇中最近样本的距离为簇间距离▪全链法:以两个簇中最远样本的距离为簇间距离▪平均链法:以两个簇中所有样本对的平均距离为簇间距离▪质心法:以两个簇的质心距离为簇间距离AGNES算法的执行步骤①初始化将每个样本视为一个独立簇(共n个簇,n为样本数)。②合并相似簇计算簇间相似度,将相似度最高的两个簇合并为新簇。③更新簇间相似度重新计算新簇与其他所有簇的距离(按选定的簇间相似度计算方法)。④迭代合并重复步骤②③,直到所有样本合并为一个簇(或达到预设簇数)。内容来源:教材3.2.2节(2)层次聚类16SECTION3.2.2·CLUSTERING密度、网格与模型式聚类:另外三种"分组策略"3.2.2·策略(3)密度聚类(Density-basedClustering)
典型算法:DBSCAN、OPTICS核心思想:基于样本的局部密度进行聚类,将"密度相连"的样本划分为同一簇,能识别任意形状的簇,且可自动过滤噪声点。适用场景:当全国20多个省份的家禽养殖特征数据中混有噪声,且区域环境条件、鸡群生长适配性形成的簇形状不规则时,可精准识别任意形状的有效簇、自动过滤异常数据,为精准评估区域养殖潜力提供可靠支撑。(4)网格聚类(Grid-basedClustering)
典型算法:STING、CLIQUE核心思想:将数据空间划分为固定大小的网格,基于网格的密度进行聚类,计算效率高,不受数据形状的影响。适用场景:针对近10年的高维特征大数据,可快速处理温/湿度、氨气浓度、鸡群体重等海量监测数据,为智能养殖模型地域化部署、投喂策略动态优化提供高效支撑。(5)模型式聚类(Model-basedClustering)
典型算法:高斯混合模型(GMM)、自组织映射(SOM)核心思想:假设数据由潜在的概率模型生成(如高斯分布混合),通过优化模型参数拟合数据分布,进而实现簇划分。适用场景:当需要基于概率分布假设分析区域养殖适配性与疫病防控潜力时,可拟合数据潜在分布,兼具聚类效果与模型可解释性,为科学制定智能养殖发展策略提供精准支撑。内容来源:教材3.2.2节(3)(4)(5)17SECTION3.2.2·DEMO聚类示例:K-Means给6个养殖区域"分班"3.2.2·示例"智能家禽养殖环境适配性分析系统"选取6个代表性养殖区域的核心特征,使用K-Means算法(K=2)进行聚类分析。养殖区域年平均温度/℃氨气浓度均值/ppm广东佛山26.518.2内蒙古通辽-2.18.5湖北武汉16.812.6黑龙江哈尔滨-5.37.8云南昆明15.111.9上海崇明17.213.1表3-3K-Means聚类示例(1)初始化质心随机选择K=2个样本作为初始质心,假设选择广东佛山(26.5,18.2)和内蒙古通辽(-2.1,8.5)。(2)分配样本计算每个养殖区域与两个质心的欧氏距离,分配到更近的簇:簇1(广东佛山):广东佛山、湖北武汉、云南昆明、上海崇明;簇2(内蒙古通辽):内蒙古通辽、黑龙江哈尔滨。(3)更新质心簇1新质心:((26.5+16.8+15.1+17.2)/4,(18.2+12.6+11.9+13.1)/4)=(18.90,13.95);簇2新质心:((-2.1+(-5.3))/2,(8.5+7.8)/2)=(-3.70,8.15)。(4)迭代收敛再次计算各区域与新质心的欧氏距离,样本归属未发生变化,质心稳定,迭代停止。(5)最终结果:簇1(高温高氨区):{广东佛山、湖北武汉、云南昆明、上海崇明},质心(18.90,13.95);簇2(低温低氨区):{内蒙古通辽、黑龙江哈尔滨},质心(-3.70,8.15)——为差异化养殖策略提供数据依据。内容来源:教材3.2.2节【聚类示例】K-Means聚类(表3-3)18SECTION3.2.2·DEMOK-Means算法的Python实现(Scikit-learn)3.2.2·示例#导入所需库importnumpyasnpfromsklearn.clusterimportKMeans
#1.准备数据:养殖区域、年平均温度、氨气浓度均值regions=np.array(['广东佛山','内蒙古通辽','湖北武汉','黑龙江哈尔滨','云南昆明','上海崇明'])#特征数据:对应上述养殖区域的[年平均温度,氨气浓度均值]features=np.array([[26.5,18.2],[-2.1,8.5],[16.8,12.6],[-5.3,7.8],[15.1,11.9],[17.2,13.1]])
#2.构建K-Means模型并训练kmeans=KMeans(n_clusters=2,random_state=0,n_init='auto')labels=kmeans.fit_predict(features)
#3.输出聚类结果print("聚类结果:")foriinrange(2):cluster_regions=regions[labels==i]centroid=kmeans.cluster_centers_[i]cluster_name="高温高氨区"
ifi==0else
"低温低氨区"
print(f"{cluster_name}:{list(cluster_regions)},质心:({centroid[0]:.2f},
{centroid[1]:.2f})")三步走:准备特征数据→KMeans(n_clusters=2)建模→fit_predict训练并输出簇标签,cluster_centers_即各簇质心——与上页手算过程一一对应。内容来源:教材3.2.2节【聚类示例】K-Means算法的Python实现19SECTION3.2.2·DEMO聚类示例:AGNES单链法的"合并之旅"3.2.2·示例(1)初始化簇基于同样的6个养殖区域数据(表3-3):C1={广东佛山},C2={内蒙古通辽},C3={湖北武汉},C4={黑龙江哈尔滨},C5={云南昆明},C6={上海崇明}。(2)计算簇间距离(欧氏距离)C1与C3:√((26.5-16.8)²+(18.2-12.6)²)≈11.20;C3与C5:√((16.8-15.1)²+(12.6-11.9)²)≈1.84;C3与C6:√((16.8-17.2)²+(12.6-13.1)²)≈0.64;C2与C4:√((-2.1-(-5.3))²+(8.5-7.8)²)≈3.28。(3)合并最近簇距离最近的C3={湖北武汉}与C6={上海崇明}(0.64)合并为新簇C7={湖北武汉,上海崇明}。(4)更新相似度,依次合并重复合并步骤:C7与C5合并为C8={湖北武汉,上海崇明,云南昆明};C8与C1合并为C9={广东佛山,湖北武汉,云南昆明,上海崇明};C2与C4合并为C10={内蒙古通辽,黑龙江哈尔滨}。图3-3聚类结果树状图(教材原图)(5)最终结果C10(低温低氨区):内蒙古通辽、黑龙江哈尔滨C9(高温高氨区):广东佛山、湖北武汉、云南昆明、上海崇明与K-Means殊途同归,且树状图清晰呈现了区域间的层次亲疏关系。内容来源:教材3.2.2节【聚类示例】AGNES聚类(图3-3)20SECTION3.2.2·DEMOAGNES算法的Python实现(SciPy)3.2.2·示例importnumpyasnpfromscipy.cluster.hierarchyimportlinkage,fclusterfromscipy.spatial.distanceimportpdist
#养殖区域特征数据:[年平均温度,氨气浓度均值]features=np.array([[26.5,18.2],[-2.1,8.5],[16.8,12.6],[-5.3,7.8],[15.1,11.9],[17.2,13.1]])regions=['广东佛山','内蒙古通辽','湖北武汉','黑龙江哈尔滨','云南昆明','上海崇明']
#单链法层次聚类(ward->single为单链法)Z=linkage(features,method='single')#构建树状图labels=fcluster(Z,t=2,criterion='maxclust')#聚为2类
#输出结果foriin[1,2]:cluster=[regions[j]forjinrange(6)iflabels[j]==i]name="高温高氨区"
ifi==1else
"低温低氨区"
print(f"{name}:{cluster}")两个关键函数:linkage()按指定链法(此处single单链法)计算合并序列、构建树状图;fcluster(t=2,criterion='maxclust')在树状图上"剪枝",把6个区域切成2个簇——层次聚类全程无须预设K也能灵活取簇。内容来源:教材3.2.2节【聚类示例】AGNES算法的Python实现21SECTION3.3.1·REGRESSION回归概述:从"单一影响"到"多元驱动"3.3.1·回归回归是机器学习中最基础也最实用的技术之一,属于监督学习,核心任务是"根据已知的输入特征,预测一个连续的数值结果",如年龄、价格、温度、时间等。这批鸡什么时候卖最合适?卖太早体重不够、卖太晚成本上升——根据每只鸡当前的生长状态,预测它未来达到理想体重的时间点,就是典型的回归任务。核心特点:输出是一个"数字",而不是"类别"。应用场景预测目标(输出)输入特征(依据)智慧养鸡最佳出栏时间/天当前体重、日均增重、品种、饲养温度、饲料类型智能温室明日番茄产量/kg光照时长、湿度、施肥记录、植株高度物流调度快递送达时间/h距离、天气、交通状况、包裹质量家庭健康孩子成年身高/cm父母身高、当前年龄身高、营养摄入表3-4回归的典型应用场景按输入特征的个数一元回归:只关注一个特征,如仅根据鸡群日龄预测出栏效益;多元回归:同时考虑多个特征,如日龄、体重、市场价格一起预测。按特征和结果的关系线性回归:特征是"直线"关系,如日龄每增加5天效益匀速提升;非线性回归:"曲线"关系,如日龄超过阈值后效益增长放缓甚至下降。按预测结果的个数简单回归:只预测一个结果,如只预测鸡群的出栏效益;多重回归:同时预测多个结果,如同时预测出栏效益、料肉比。内容来源:教材3.3节引言、3.3.1节(表3-4)22SECTION3.3.2·LINEARREGRESSION一元线性回归:找到"最佳拟合直线"3.3.2·线性回归y=ax+by预测输出(因变量)·x输入特征(自变量)·a回归系数(斜率,x每变化一个单位,y的平均变化幅度)·b截距(x=0时y的基准值)核心思想:一元线性回归处理"单一特征与单一输出"之间的线性关系,目标是找到一条最能贴合所有数据点的直线,使模型预测值与真实值的误差最小。其数学逻辑简单、可解释性强,是入门回归技术的最佳起点。智慧养殖数据:某养殖场20批肉鸡的"养殖日龄"(25天、30天、…、120天)与对应"单只出栏效益"(8元、12元、15元、…、37元),绘制成散点图后(图3-4),回归模型找到最佳拟合直线(图3-5)。图3-5一元线性回归模型拟合直线示意图(教材原图)图3-4一元线性回归模型预测结果示意图(教材原图)拟合直线y=0.3141x+1.4752:输入任意养殖日龄(如50天),即可预测单只出栏效益0.3141×50+1.4752≈17.18元。内容来源:教材3.3.2节(1)(图3-4、图3-5)23SECTION3.3.2·GRADIENTDESCENT损失函数与梯度下降:"下山寻路"找最优直线3.3.2·梯度下降(2)损失函数:判断"直线拟合得好不好"损失函数(LossFunction)衡量模型预测值与真实值之间的差异或误差(图3-6)。它的作用是评估模型性能,并提供一个优化目标——通过调整模型参数来最小化误差。(3)梯度下降法:找到"最佳拟合直线"的方法找"最佳拟合直线"的本质是求解使损失函数最小的参数w(斜率)和b(截距),梯度下降法是最常用算法,核心思想可类比为"下山寻路":①初始位置:随机设定一组参数(w₀,b₀),相当于站在误差"山顶"。②计算损失:用当前参数预测出栏效益,对比真实效益算出整体误差(当前位置的"高度")。③梯度方向:计算损失函数在当前参数处的梯度(误差变化率最大的方向)。④迭代更新:沿着梯度的反方向(损失减小的方向)逐步调整w和b。⑤终止条件:重复上述步骤,直到损失不再明显减小(到达"山底"),此时参数(w*,b*)即最优参数。图3-6损失函数示意图(教材原图)图3-7二维(教材原图)图3-8三维(教材原图)图3-7:横轴w(参数)、纵轴L(损失),红色路径逐步逼近最小值点;图3-8:横轴w、纵轴b、竖轴L,红色箭头沿梯度反方向滑向"谷底"。内容来源:教材3.3.2节(2)(3)(图3-6~3-8)24SECTION3.3.3·TRAINING多元回归与数据集划分:训练、验证、测试各司其职3.3.3·训练(4)多元线性回归:现实中出栏效益受多个因素影响,公式在一元基础上增加特征项——y=a₁x₁+a₂x₂+…+b。x₁、x₂为不同养殖特征(养殖日龄、日投喂量、温/湿度控制精度),a₁、a₂为各特征的"影响程度"(系数越大影响越显著),b为截距。核心逻辑与一元相同:找一组最优系数,让预测值与真实值的差距(损失)最小。数据集类型典型占比核心作用类比场景训练集70%~80%用于模型学习特征与标签的关系,调整参数(如回归系数a和截距b)养殖户的"过往养殖记录",用于总结出栏规律验证集10%~15%用于调整模型超参数(如学习率、多项式阶次),优化模型结构,避免过拟合养殖户的"近期小批量试养数据",用于验证规律适用性测试集10%~15%用于最终评估模型的泛化能力,模拟真实应用场景,不参与任何模型调整养殖户的"新批次养殖数据",用于检验模型实际预测效果表3-5数据集划分①随机划分打乱数据顺序后划分,避免数据的品种或养殖环境偏差(如所有优质种鸡样本都集中在训练集),确保数据集的代表性。②时间序列划分按养殖时间顺序划分——用过去1~2年的数据训练、近3个月验证、最新1个月测试,符合"用历史经验预测未来"的逻辑。③K折交叉验证数据量较小时(如K=5):分成K份,轮流用K-1份训练、1份验证,取K次验证结果的均值,提升评估可靠性。内容来源:教材3.3.2节(4)、3.3.3节(1)(表3-5)25SECTION3.3.3·TRAINING模型训练实战①:读取数据、划分、训练3.3.3·训练训练核心流程:准备数据→划分数据→训练模型→评估模型。本页完成前三步。importpandasaspd#读取数据data=pd.read_csv('chicken_slaughter_time.csv')#提取特征(鸡冠大小、脚距长度、日增重、饲料消耗)#和标签(最佳出栏时间)x=data[['鸡冠大小','脚距长度','日增重','饲料消耗']].valuesy=data['最佳出栏时间'].values#标签①数据读取与预处理:清洗数据(删除缺失值、异常值,如出栏时间为负数、日增重异常高的样本),确保数据质量。fromsklearn.model_selectionimporttrain_test_split#划分训练集(80%)和测试集(20%)#random_state确保划分结果可重复X_train,X_test,y_train,y_test=\train_test_split(X,y,test_size=0.2,random_state=42)②划分数据集:按"8:2"比例划分训练集和测试集(验证集可从训练集中进一步划分)。fromsklearn.linear_modelimportLinearRegressionmodel=LinearRegression()#初始化模型X_train=X_train.reshape(-1,1)#调整特征维度(适配模型输入要求)model.fit(X_train,y_train)#用训练集训练模型a=model.coef_[0]#回归系数(斜率)b=ercept_#截距③模型训练与参数求解:通过梯度下降法求解最优参数。输出示例:最佳拟合直线方程y=16.06x+9.58。内容来源:教材3.3.3节(2)模型训练的完整流程①—③26SECTION3.3.3·EVALUATION模型训练实战②:可视化拟合效果,用MSE与R²评估3.3.3·训练importmatplotlib.pyplotasplt#设置中文字体(避免图表中文乱码)plt.rcParams['font.sans-serif']=['SimHei']#绘制真实值与预测值散点图plt.scatter(y_test,y_pred,color='blue',alpha=0.6)#绘制理想拟合线(y=x)plt.plot([y_test.min(),y_test.max()],[y_test.min(),y_test.max()],'r--')plt.xlabel('真实最佳出栏时间(天)')plt.ylabel('预测最佳出栏时间(天)')plt.title('种鸡最佳出栏时间线性回归拟合效果')plt.show()④-1可视化评估:散点图横轴为真实值、纵轴为预测值;红色虚线是理想拟合线(y=x)——所有散点都落在这条线上,表示预测完全准确。散点越靠近红线,模型效果越好。fromsklearn.metricsimportmean_squared_error,r2_scoremse=mean_squared_error(y_test,y_pred)r2=r2_score(y_test,y_pred)#输出示例:#测试集MSE:19.09,R²:0.98均方误差MSE:预测值与真实值误差的平方均值,越小越好。若MSE=4.86,则实际平均误差约√4.86≈2.21天,出栏时间预测平均偏差2天左右。决定系数R²:取值0~1,越接近1越好。R²=0.96表示模型能解释96%的出栏时间变化,属于优秀模型;R²<0.5则说明模型预测效果差,需重新选择特征或模型。内容来源:教材3.3.3节(2)模型训练的完整流程④27SECTION3.3.4·POLYNOMIAL多项式回归:曲线拟合,警惕欠拟合与过拟合3.3.4·多项式为什么需要多项式回归?当日增重在0.05~0.1kg阶段,每增加0.01kg出栏时间提前3~4天;但超过0.1kg后仅提前1天——非线性关系,直线拟合效果差。多项式回归公式:y=a₀+a₁x¹+a₂x²+…+aₙxⁿ(n=2为抛物线,n=3为三次曲线)。核心思想:把x²看作新特征z,将y=ax²+bx+c转化为y=az+bx+c,仍用线性回归方法求解。图3-9多项式回归拟合曲线(教材原图)多项式阶次越高越好吗?教材示例:用15阶多项式拟合,训练数据上几乎完美,但换一批数据误差极大——曲线过度扭曲去"迎合"每一个样本点,把噪声当成了规律。欠拟合(Underfitting)——"学不会"表现:连训练数据都预测不准,拟合曲线偏离大部分样本点。原因:模型太简单(如用直线拟合曲线关系)、特征太少。解决:补充相关特征、换更复杂的模型、调整模型参数。过拟合(Overfitting)——"学太死"表现:在自家养殖场数据上很准,换其他养殖场误差极大。原因:模型过于复杂,把数据噪声当成了普遍规律。解决:增加数据量、简化模型、正则化"减负"、交叉验证。内容来源:教材3.3.4节(图3-9)28SECTION3.4·CLASSIFICATION3.4分类:预测"是哪一类",而非"是多少"3.4·分类智慧养殖中,依据鸡冠形态、体型、羽毛纹理、生长速率判断种鸡公母——输出不是具体数值,而是"公/母"两个离散类别,这就是分类。分类与回归的本质区别在输出类型:回归预测连续数值(出栏时间、鸡蛋价格),分类预测离散标签(公/母、健康/患病)。分类器="智能鉴别师"分类模型(分类器)从标注好类别的历史数据中学习"特征→类别"的判别规则,再对新样本给出类别判断。图3-10中,分类器依据鸡冠大小、体型肥瘦等特征,将待鉴别种鸡归入"公鸡"或"母鸡"类别。本节三大经典分类算法①逻辑回归——用概率做二分类②朴素贝叶斯——用概率公式推断类别③支持向量机——寻找最优决策边界图3-10分类器鉴别种鸡公母示意(教材原图)内容来源:教材3.4节引言(图3-10)29SECTION3.4.2·LOGISTIC逻辑回归:名为"回归",实为二分类利器3.4.2·逻辑回归第1步线性计算像线性回归一样,将特征加权求和:z=a₁x₁+a₂x₂+…+b,z可取任意实数。第2步Sigmoid转换Sigmoid函数σ(z)=1/(1+e⁻ᶻ)把z压缩到0~1之间,输出可解读为"属于正类的概率"。第3步阈值判定以0.5为阈值:概率≥0.5判为正类(公鸡),<0.5判为负类(母鸡)。Sigmoid曲线的S形特性(图3-11)输入z很大→输出趋近1;输入z很小→输出趋近0;z=0时输出恰为0.5——正好对应"难以分辨"的临界状态。逻辑回归训练同样5步走:加载数据→划分(80:20)→训练→预测→计算准确率。为什么叫"回归"?因为它的内部计算仍是线性回归;只是外面套了一层Sigmoid,把连续输出"掰"成了类别概率——是用回归的方法做分类。图3-11Sigmoid函数曲线(教材原图)内容来源:教材3.4.1、3.4.2节(图3-11)30SECTION3.4.2·PRACTICE分类实战①:决策树识别种鸡公母3.4.2·逻辑回归importpandasaspdfromsklearn.model_selectionimporttrain_test_splitfromsklearn.treeimportDecisionTreeClassifierfromsklearn.metricsimportaccuracy_score#构造种鸡样本数据集(1=公鸡,0=母鸡)data=pd.DataFrame({
'鸡冠大小':[9.2,5.8,8.8,6.1,9.5,5.9],
'体型肥瘦比例':[0.81,0.63,0.79,0.65,0.83,0.62],
'生长速率':[1.3,0.7,1.2,0.8,1.4,0.75],
'性别标签':[1,0,1,1,1,0]})#拆分特征与标签X=data[['鸡冠大小','体型肥瘦比例','生长速率']]y=data['性别标签']#划分训练集与测试集(8:2)X_train,X_test,y_train,y_test=\train_test_split(X,y,test_size=0.2,random_state=42)model=DecisionTreeClassifier()#初始化决策树model.fit(X_train,y_train)y_pred=model.predict(X_test)acc=accuracy_score(y_test,y_pred)print(f"种鸡公母识别准确率:{acc*100:.2f}%")数据集6个种鸡样本,3个特征(鸡冠大小、体型肥瘦比例、生长速率),性别标签1=公鸡、0=母鸡。分类五步流程构造数据→拆分特征与标签→划分训练/测试集→训练分类器→预测并计算准确率。换个算法只需换一行Scikit-learn统一接口:把DecisionTreeClassifier换成LogisticRegression、GaussianNB、SVC,其余代码完全不变。课堂提示:决策树像"连环提问"——先看鸡冠大小,再看体型比例,层层判断得出公母结论,规则直观可解释。内容来源:教材3.4.2节决策树示例代码31SECTION3.4.3·NAIVEBAYES朴素贝叶斯:用概率公式推断类别3.4.3·贝叶斯核心思想:依据贝叶斯定理计算后验概率——已知样本特征,求它属于各类别的概率,归入概率最大的类别。"朴素"=假设各特征相互独立(如鸡冠大小与羽色互不影响),从而把联合概率拆成单特征概率的连乘,大幅简化计算。编号鸡冠大小脚距长度体重羽色性别1大长重鲜艳公2大长重暗淡公3大短重鲜艳公4中长中鲜艳公5小短轻暗淡母6中短中暗淡母7小长轻鲜艳母表3-6种鸡样本数据集(7个样本)第1步先验概率统计7个样本:P(公)=4/7≈0.57;P(母)=3/7≈0.43。第2步条件概率待测样本:鸡冠大、脚距长、体重重、羽色鲜艳。在公鸡中:P(大|公)=3/4=0.75,P(长|公)=3/4,P(重|公)=3/4,P(鲜艳|公)=3/4;在母鸡中P(大|母)=0。第3步连乘比较P(公|特征)∝0.57×0.75×0.75×0.75×0.75≈0.18;P(母|特征)∝0.43×0×…=0。0.18>0,判定为公鸡。拉普拉斯修正:若某特征值在训练集中未出现(如母鸡中没有"鸡冠大"),条件概率为0会导致连乘结果"一票否决"。实际应用中会给计数加1做平滑处理,避免零概率问题。内容来源:教材3.4.3节(表3-6)32SECTION3.4.3·PRACTICE分类实战②:GaussianNB判定种鸡公母3.4.3·贝叶斯importpandasaspdfromsklearn.preprocessingimportLabelEncoderfromsklearn.model_selectionimporttrain_test_splitfromsklearn.naive_bayesimportGaussianNBfromsklearn.metricsimportaccuracy_score#类别特征需先编码为数字#鸡冠大小:小=0中=1大=2;脚距:短=0中=1长=2#体重:轻=0中=1重=2;羽色:暗淡=0鲜艳
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年参公单位选调综合测试试卷
- 2026年安全生产服务中心事业单位笔试题库
- 校园文化节活动经费核对函3篇
- 服装服饰收货确认函5篇范文
- 商讨2026年企业社会责任项目的联系函(3篇范文)
- 铁路系统机车乘务员运营效率与安全绩效考核表
- 年度项目推进时间表与工作计划
- 爱护环境爱家乡小学主题班会课件
- 医院新生儿洗浴池水温防烫双温控器每季度校验安全防范措施
- 婴儿餐椅餐盘易清洁检验报告
- DB3211∕T 1078-2024 居民小区邻长制自治团队工作规范
- 2025年及未来5年中国特种石墨行业市场深度分析及发展前景预测报告
- 智能灾害预警系统建设可行性研究报告
- 传统竹编制作方法及教学指导方案
- 电源基础知识培训资料课件
- DBS教材11大部屋系统
- 【《中厚板矫直机结构设计》17000字(论文)】
- 农村兄弟分户协议书样本
- 2025年宪法知识竞赛试题库(含答案)
- 锅炉事故应急预案演练方案
- 喷涂产品返工处理方案
评论
0/150
提交评论