Python-机器学习8 定义、基本理论、专业术语、scikit-learn框架,鸢尾花数据集
1.学习框架
2.概述
2.1 定义
计算机通过数据和计算获得一定的技巧的过程,即利用经验改善自己系统的性能。(经验---->数据)
2.2 发展
(1)萌芽期:图灵测试提出机器具有智能,跳棋程序的开发创造出“机器学习”一词。
(2)摸索期:k近邻算法出现,计算机可以进行简单的模式识别。决策树算法的出现,ID3算法的出现,加快了算法的运行速度。
(3)崛起期:SVM、AdaBoost、随机森林的出现,
2.3 应用领域
(1)商业:销售数据、客户信息分析,推荐系统。
(2)金融:薪资、股票市场、欺诈检测等。
(3)医疗:检测皮肤癌、分析健康数据。
(4)语言:翻译、语言问答。
(5)计算机视觉:图像处理、美化。
(6)网络:垃圾邮件检测等。
(7)工业:质量管理、故障检测。
(8)生活娱乐:天气预报、自动驾驶、GPS等。
3.基本理论
3.1 基本术语
(1)数据集:是一种由数据所组成的集合,通常以表格形式出现,如上图一个表。
(2)样本/实例:每一行表示一个数据,表示对一个事件或对象的描述,如上面的一行。
(3)特征/属性:每一列反映事件或对象在某方面的表现和性质,如上面的某一列。
(4)特征值/属性值:某一列某一行的取值。
(5)属性空间、样本空间、输入空间:所有属性组成的空间。
(6)模型:描述属性和问题之间关系的数学对象,如根据敲声判断一个瓜是不是好瓜。
(7)学习/训练:从数据中使用算法得到模型的过程。
(8)训练集:拿来训练的。
(9)测试集:拿已经学习好的模型来测试数据集。
(10)验证集:用于在学习过程中对模型进行调整和选择。
(11)标签/标记:描述模型输出的可能值,如是好瓜。(输出空间)
(12)收敛状态:模型已经达到无法改进的状态,达到最好的样子。
(13)预测:新的数据输入到训练好的模型中,以对其进行判断。
(14)泛化能力:模型适用于新样本的能力。
(15)模型评估:检验模型效果的方法。
(16)维数:特征的数目称之为维数。
3.2.算法
4.1监督学习
(1)定义:根据已有的数据集,且数据集是人为标记的,知道输入和输出结果之间的关系。根据这种已知的关系,训练得到一个最优的模型。(关系---->模型)
(2)分类:分类(Classification)、回归(Regression)
4.2 无监督学习
(1)定义:不知道数据集中数据、特征之间的关系,无标记的,要根据聚类或一定的模型得到数据之间的关系。(模型---->关系)
(2)分类:聚类(Cluster)
5. scikit-learn框架
5.1 数据的加载:
sklearn.datasets.load_名字([return_X_y])
5.2 生成数据集
sklearn.datasets.make_blobs(n_samples=,n_features=,.....)
5.3 模型训练和预测
(1)scikit-learn的model_selection包含 rain_test_split()方法可以将数据集转化为train_data 和 test_data两个部分。
(2)划分完后使用 fit() 方法进行训练模型。
(3)训练完后可以用 predict() 方法预测。
5.4 模型评估
使用score()方法
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂
· 凌晨三点救火实录:Java内存泄漏的七个神坑,你至少踩过三个!