二、机器学习

机器学习

(一)scikit-learn工具

1. 介绍

开源,可商业使用

BSD 许可证

2. 特点

  • 简单高效
    scikit-learn 提供了简单高效的算法和工具,方便用户快速进行数据分析和机器学习
  • 模块化设计
    scikit-learn 采用模块化设计,使得用户可以根据需要自由组合不同的算法和工具
  • 丰富多样的算法
    scikit-learn 提供了丰富多样的机器学习算法,包括分类、回归、聚类、降维等,满足用户不同需求

3. 官网

https://scikit-learn.org/

4. 适用场景

  1. 数据挖掘
  2. 机器学习

5. 安装

可以使用 pip 或 conda 等包管理工具进行安装,例如:

pip install -U scikit-learn

导入必要的模块和函数,例如:

from sklearn.linear_model import LinearRegressio

6. 机器学习的定义

(1)支持向量机

scikit-learn 支持向量机算法,用于分类和回归分析

(2)决策树

scikit-learn 决策树算法,适用于分类和回归问题

(3)随机森林

scikit-learn 随机森林算法,通过集成学习提高分类精度

7. 主要功能

(1)数据清洗

scikit-learn 提供了数据清洗的功能,包括缺失值处理和异常值检测等

(2)特征选择

scikit-learn 提供了特征选择的功能,可以帮助用户选择最重要的特征,提高模型的准确率

(3)特征转换

scikit-learn 提供了特征转换的功能,可以将原始特征转换为更符合模型需求的特征

8. 算法

(1)分类、回归算法

各种回归算法、支持向量机、决策树、随机森林等

(2)聚类算法

K-means、谱聚类、DBSCAN等

(3)降维技术

PCA(主成分分析)、LDA(线性判别分析)等

9. 优缺点

(1)优点

功能强大:scikit-learn 提供了丰富的机器学习算法和工具,可以满足各种不同的需求

易于使用:scikit-learn 的 API 设计简洁明了,易于理解和使用,降低了机器学习的门槛

社区支持:scikit-learn 拥有庞大的用户和开发者社区,为使用者提供了丰富的资源和支持

(2)缺点

不易理解:对于初学者来说,scikit-learn 的文档和 API 可能难以理解,特别是英文官网,入手难度高,中文网站API往往滞后

(二)机器学习

1. 定义

机器学习(Machine Learning)本质上就是让计算机自己在数据中学习规律,并根据所得到的规律对未来数据进行预测

机器学习包括如聚类、分类、决策树、贝叶斯、神经网络、深度学习(Deep Learning)等算法

image-20261102164816846

2. 发展历史

(1)机器学习的起源

20世纪50年代,人工智能的概念被提出,旨在通过计算机模拟人类的智能行为

(2)神经网络的探索

20世纪80年代,神经网络(BP)的研究开始兴起,旨在通过模拟人脑神经元网络来处理信息

(3)支持向量机等算法的出现

随着机器学习的发展,支持向量机、朴素贝叶斯等算法相继出现,将机器学习从知识驱动转变为数据驱动的思路

(4)深度学习的火热

2012年,随着算力提升和海量训练样本的支持,深度学习成为机器学习研究热点,并带动了产业界的广泛应用

3. 分类

(1)监督学习

给模型一张图片(数据集),并且告知结果(标签)

定义

监督学习是从已有的训练数据集(标记数据)中学习模型,然后对新的数据进行预测的一种机器学习方法

常见算法

  • 线性回归:通过找到最佳拟合线来预测因变量的值
  • 逻辑回归:用于二元分类的监督学习算法
  • 决策树:通过构建树状结构来对新的数据进行分类或回归

应用场景

  • 分类问题:垃圾邮件识别、人脸识别等
  • 回归问题:股票价格预测、预测天气等

(2)无监督学习

给模型一张图片(数据集),不告知结果(标签)

定义

通过分析输入数据的特点和结构,自动地找出数据中的模式和规律,而不需要人工标注和干预

常见算法

  • K-means:用于聚类分析
  • DBSCAN:基于密度的算法,发现任意形状的聚类
  • 层次聚类:基于距离的算法,将数据点按照距离远近进行聚类

应用场景

  • 聚类:将数据集划分为多个组
  • 降维:将高维数据降维,更容易理解和可视化数据
  • 关联规则学习:超市购物篮分析中,发现哪些商品经常一起被购买

(3)半监督学习

给模型一张图片(数据集),并且告知一部分结果(标签)

定义

利用标记和未标记的数据来进行训练和预测

常见算法

  • 标签传播:通过迭代地传播标签,使得每个样本的标签都尽可能地一致
  • 学习算法:通过学习算法可以训练出更好的模型,提高分类准确率

应用场景

  • 分类问题:垃圾邮件识别、人脸识别等
  • 聚类问题:市场细分、社交网络分析等

(4)强化学习

定义

通过试错的方式让机器学习如何做出最优决策

常见算法

  • Q-Learning:构建Q表来对环境进行建模实现决策
  • Deep Q Network (DQN):结合深度学习通过训练神经网络来逼近Q函数,实现更高效的学习
  • Policy Gradient Methods:优化策略寻找最优解

应用场景

  • 游戏 AI: AlphaGo,通过自我对弈提升技能
  • 机器人控制:根据环境反馈进行自我调整,实现更精准的控制

4. 应用场合

(1)自然语言处理

机器翻译、语音识别、文本分类

(2)其他

视觉垂直领域、预测与推荐系统、决策支持与智能分析

5. 未来发展与挑战

(1)未来发展

垂直性(落地化)

很多传统的垂直领域都需要有机器学习的加入,例如医疗、市场等,这些垂直领域可以是专门完成具体的某一项任务的模型,也可以是一个什么都会的模型

多样性

机器学习衍生出来的算法、模型多种多样,它们都各有所长,也有所短,受到现场、部署环境、硬件条件、数据等影响,多样性的发展可以适配不同的领域

(2)数据质量问题

数据量不足、数据质量不均、数据隐私保护

(3)人工智能与安全问题

安全(黑盒子)、人工智能的未来、不可解释

posted @ 2026-11-03 10:21  桑年  阅读(6)  评论(0)    收藏  举报