【读书笔记】Python在机器学习中的应用:什么是机器学习

简介: 【读书笔记】Python在机器学习中的应用:什么是机器学习

简 介:这本书的名字为Python在机器学习中的应用,该书的作者为著名的余本国老师。该书循序渐进地阐述了机器学习的概念,以及一些机器学习的主流算法。下面是我在读这本书的时候的记录并加上自己的理解。本文意在记录自己近期学习过程中的所学所得,如有错误,欢迎大家指正。

 

关键词:Python、机器学习

一、机器学习的简介

1.机器学习介绍

什么是机器学习呢?说白了就是让机器代替人工从数据中发掘我们所需要的信息,如果对于海量的数据来说,对于人工来做的话将花费大量的人力物力,所以将这项任务交给计算机来做,人们来做更加高级的任务。

那么怎样能够让机器进行学习呢?首先对于人来说,比如让人的肉眼去识别两种植物的图片,如果要求人的识别精度很高的话,那么就需要人类在识别之前观察大量的两种植物图片,来进行积累经验,以至于之后人们再次见到类似图片时,能够精确的分析出图片的内容。这种学习方式对于人类来说比较容易,因为人类有大脑参与可以进行记忆分析,那么对于计算机来说,那么怎么去记住这么多的数据,然后去识别新的数据呢?无非就是建立自变量与因变量之间的某种关系来达到预测学习的作用,这里的自变量就是我们数据的特征,因变量就是数据对应的标签,这就会用到很多常见的机器学习算法,例如随机森林,SVM、支持向量机等算法。

现在我们的生活中有很多机器学习算法的应用,比如说当我们逛淘宝时,淘宝会不断地向我们进行推荐我们之前看过的物品,这是基于关系规则的商品推荐,还有就是最近很火的图像识别,它是利用了深度学习方面的技术。我们在不同的场景下,可以使用不同的算法来实现我们的需求。

有人问?有没有那种非常无敌的算法,其实这个问题很难回答,每种算法有自己使用的领域,针对不用的使用场景需要用到不同的东西,有的算法可能精度非常高,但是可能它的底层的计算方法相当复杂,可能模型运行的时间会相当高,有的算法虽然精度差一些,但是它的速度方面可能略强于别的算法,所以没有什么强不强的,就是看自己的需求有针对性地使用合理地算法。

2.机器学习的几种方式

1)有监督学习

有监督学习是我们最常见的,就是我们的数据集会分成两个部分,一部分是我们的特征,另一部分就是标签,标签的作用就是标注每一个样本集,机器学习就是让计算机通过某种数学算法将我们的特征数据与标签进行产生一定的关系,让计算机看到某种数据就能够知道它的标签,当计算机看到新的数据时,就会搜索自己曾经看到的数据,有无类似的,发现类似的数据将其定为同一标签,其实这样说不太对。

有监督学习又分为分类问题和回归问题:

1.分类问题

所谓分类问题就是我们的标签是离散值,比如手写数字识别和判断某一张图片是猫还是狗,这些都是分类问题,常见的分类问题通常为二分类,即正样本和负样本,分类问题的经典算法有贝叶斯算法、逻辑回归等。

2.回归问题

回归问题可以看成是分类问题的极限,如果某个任务的类别非常多,这个时候就偏于回归,对于回归问题,它的特别指出就是它的标签是连续的,比如某人的薪资,车站的人流数。通常我们的数据会有很多个特征就相当于自变量,标签就是因变量,回归分析就是建立自变量与因变量之间的某种关系来达到预测学习的作用,比如我们预测某人薪资时,就会大量的观察员工的各种指标来进行综合评估。

2)无监督学习

上面说的都是基于数据的标签进行识别不同的数据,无监督学习与它是天然的不同,它不需要任何的标签,只需要不断地喂数据就行,它的基本原理就是利用某种算法计算各个数据样本的相似度或者什么的,然后将相似的样本划分为一类,典型的算法就是K-Means聚类,但是无监督学习不一定就是聚类这种的,像降维这种操作也算是无监督学习。

3)半监督学习

半监督学习就是结合上述两种学习模式,因为在一些实际场景中,我们的数据很难获取,或者获取到了,然后还需要进行人工标注打标签,这样会花费大量的成本,而有些领域,人工标注样本需要专业的领域知识,所以这就是导致我们的有标签数据会很难获得,所以需要结合上述两种方式进行综合考虑。

3.机器学习架构流程

  • 数据预处理
  • 根据数据及应用场景选择合适的算法模型
  • 训练模型
  • 模型验证
  • 模型上线测试
  1. 数据预处理:主要就是我们的数据获取来的时候,很多是不能够用于模型进行学习的,有很多空值或者异常值,需要进行处理,有时候还需要进行降维操作,降维就是降低特征数,因为数据量很大的时候采取高维特征会拉跨算法的效率,所以为了追求速度,丢弃一定有用的信息。还有就是对我们现有特征进行处理,比如特征创造,利用已有数据创造出更有效的特征,或者将数据正则化、归一化这些。
  2. 选择算法模型:针对自己的业务场景,以及我们的数据的特性选择合适的模型
  3. 训练模型:首先将数据拆分为几部分,训练集、验证集、测试集,将训练集用于模型的训练,使计算机通过训练集的数据发掘其中的规律,来建立能够拟合的数据模型
  4. 模型验证:就是用分割的验证集进行验证每次调参或者修正之后的模型效果,选择最优的参数组合
  5. 模型上线测试:使用确定好的测试集去测试验证好的模型,查看是否到达了上线要求,如果不达要求,就继续训练

这里有个地方很容易模糊就是训练集、验证集、测试集分别是干什么的,有人会问验证集感觉和测试集作用差不多,自己学习的过程中经常是将数据分为训练集和测试集,根本没考虑到验证集。

  • 训练集:训练集不用说,就是用于训练模型的
  • 验证集:验证集经常会出现在深度学习中,在传统机器学习中验证集较少用,深度学习中的验证集的作用就是验证我们训练每一批次的模型效果,用于验证模型的超参数调整是否正确
    在传统机器学习中验证集较少用,深度学习中的验证集的作用就是验证我们训练每一批次的模型效果,用于验证模型的超参数调整是否正确
  • 测试集:就是用来检验已经训练好的模型(超参数达到最优、验证集验证过)在新的数据上的效果,检验训练好的模型精度是否达标,如果达标上线使用,没有达标继续用训练集进行训练,用验证集进行超参数的调整



目录
相关文章
|
2月前
|
机器学习/深度学习 数据采集 算法
量子机器学习入门:三种数据编码方法对比与应用
在量子机器学习中,数据编码方式决定了量子模型如何理解和处理信息。本文详解角度编码、振幅编码与基础编码三种方法,分析其原理、实现及适用场景,帮助读者选择最适合的编码策略,提升量子模型性能。
243 8
|
6月前
|
人工智能 自然语言处理 数据挖掘
云上玩转Qwen3系列之三:PAI-LangStudio x Hologres构建ChatBI数据分析Agent应用
PAI-LangStudio 和 Qwen3 构建基于 MCP 协议的 Hologres ChatBI 智能 Agent 应用,通过将 Agent、MCP Server 等技术和阿里最新的推理模型 Qwen3 编排在一个应用流中,为大模型提供了 MCP+OLAP 的智能数据分析能力,使用自然语言即可实现 OLAP 数据分析的查询效果,减少了幻觉。开发者可以基于该模板进行灵活扩展和二次开发,以满足特定场景的需求。
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
Java 大视界 -- Java 大数据机器学习模型在自然语言生成中的可控性研究与应用(229)
本文深入探讨Java大数据与机器学习在自然语言生成(NLG)中的可控性研究,分析当前生成模型面临的“失控”挑战,如数据噪声、标注偏差及黑盒模型信任问题,提出Java技术在数据清洗、异构框架融合与生态工具链中的关键作用。通过条件注入、强化学习与模型融合等策略,实现文本生成的精准控制,并结合网易新闻与蚂蚁集团的实战案例,展示Java在提升生成效率与合规性方面的卓越能力,为金融、法律等强监管领域提供技术参考。
|
3月前
|
机器学习/深度学习 算法 Java
Java 大视界 -- Java 大数据机器学习模型在生物信息学基因功能预测中的优化与应用(223)
本文探讨了Java大数据与机器学习模型在生物信息学中基因功能预测的优化与应用。通过高效的数据处理能力和智能算法,提升基因功能预测的准确性与效率,助力医学与农业发展。
|
3月前
|
机器学习/深度学习 搜索推荐 数据可视化
Java 大视界 -- Java 大数据机器学习模型在电商用户流失预测与留存策略制定中的应用(217)
本文探讨 Java 大数据与机器学习在电商用户流失预测与留存策略中的应用。通过构建高精度预测模型与动态分层策略,助力企业提前识别流失用户、精准触达,实现用户留存率与商业价值双提升,为电商应对用户流失提供技术新思路。
|
3月前
|
机器学习/深度学习 存储 分布式计算
Java 大视界 --Java 大数据机器学习模型在金融风险压力测试中的应用与验证(211)
本文探讨了Java大数据与机器学习模型在金融风险压力测试中的创新应用。通过多源数据采集、模型构建与优化,结合随机森林、LSTM等算法,实现信用风险动态评估、市场极端场景模拟与操作风险预警。案例分析展示了花旗银行与蚂蚁集团的智能风控实践,验证了技术在提升风险识别效率与降低金融风险损失方面的显著成效。
|
4月前
|
机器学习/深度学习 分布式计算 Java
Java 大视界 -- Java 大数据机器学习模型在遥感图像土地利用分类中的优化与应用(199)
本文探讨了Java大数据与机器学习模型在遥感图像土地利用分类中的优化与应用。面对传统方法效率低、精度差的问题,结合Hadoop、Spark与深度学习框架,实现了高效、精准的分类。通过实际案例展示了Java在数据处理、模型融合与参数调优中的强大能力,推动遥感图像分类迈向新高度。
|
4月前
|
机器学习/深度学习 存储 Java
Java 大视界 -- Java 大数据机器学习模型在游戏用户行为分析与游戏平衡优化中的应用(190)
本文探讨了Java大数据与机器学习模型在游戏用户行为分析及游戏平衡优化中的应用。通过数据采集、预处理与聚类分析,开发者可深入洞察玩家行为特征,构建个性化运营策略。同时,利用回归模型优化游戏数值与付费机制,提升游戏公平性与用户体验。
|
6月前
|
机器学习/深度学习 人工智能 算法
Scikit-learn:Python机器学习的瑞士军刀
想要快速入门机器学习但被复杂算法吓退?本文详解Scikit-learn如何让您无需深厚数学背景也能构建强大AI模型。从数据预处理到模型评估,从垃圾邮件过滤到信用风险评估,通过实用案例和直观图表,带您掌握这把Python机器学习的'瑞士军刀'。无论您是AI新手还是经验丰富的数据科学家,都能从中获取将理论转化为实际应用的关键技巧。了解Scikit-learn与大语言模型的最新集成方式,抢先掌握机器学习的未来发展方向!
991 12
Scikit-learn:Python机器学习的瑞士军刀
|
6月前
|
机器学习/深度学习 数据采集 人工智能
智能嗅探AJAX触发:机器学习在动态渲染中的创新应用
随着Web技术发展,动态加载数据的网站(如今日头条)对传统爬虫提出新挑战:初始HTML无完整数据、请求路径动态生成且易触发反爬策略。本文以爬取“AI”相关新闻为例,探讨了通过浏览器自动化、抓包分析和静态逆向接口等方法采集数据的局限性,并提出借助机器学习智能识别AJAX触发点的解决方案。通过特征提取与模型训练,爬虫可自动推测数据接口路径并高效采集。代码实现展示了如何模拟AJAX请求获取新闻标题、简介、作者和时间,并分类存储。未来,智能化将成为采集技术的发展趋势。
171 1
智能嗅探AJAX触发:机器学习在动态渲染中的创新应用

推荐镜像

更多