一、机器学习的概念

  • 定义:对于某类任务 T性能度量 P,如果一个计算机程序在 T上 以P衡量的性能随着经验E 而自我完善,那么就称这个计算机程序在从经验 E学习
  • 机器学习时计算机科学的子领域,也是人工智能的一个分支和实现方式
  • 机器学习应用的典型领域主要有:网络安全、搜索引擎、产品推荐、字典驾驶、图形识别、语言识别、量化投资、自然语言处理等

二、机器学习、人工智能与数据挖掘的关系

2.1 人工智能 的概念

  • 人工智能包括计算智能、感知智能和认知智能等层次,目前人工智能还介于计算智能和感知智能之间
  • 人工智能的典型系统包括以下几个·方面:
    1. 博弈游戏(如深蓝、Alpha、Go、AlphaZero等)
    2. 机器人相关控制理论(运动规划、空盒子机器人行走等)
    3. 机器翻译
    4. 语言识别
    5. 计算机视觉系统
    6. 自然语言处理(自动程序)

2.2 数据挖掘的概念

  • 数据挖掘使用机器学习、统计学和数据库等方法在相对大量的数据集中发现模式和知识,它涉及数据预处理、模型与推断、可视化等。
  • 数据挖掘包括以下几类常见的任务:
    1. 异常检测:对不符合预期模式的样本、事件进行识别。异常也被称为离群值、偏差和例外。异常检测常用于入侵检测、银行欺诈、疾病检测、故障检测等
    2. **关联分析:**关联规则学习实在数据库中发现变量之间的关系(强规则)。
    3. **聚类:**是一种探索性分析,在未知数据结构的情况下,根据相似性把样本分为不同的簇或子集,不用簇的样本具有很大的差异性,从而发现数据的类别与结构
    4. **分类:**分类是根据已知样本的某些特征,判断一个新样本属于哪种类别。通过特征选择和学习,建立判别函数以对样本进行分类。
    5. **回归:**回归是一种统计分析方法,用于了解两个或多个变量之间的相关关系,回归的目标是找出误差最小的拟合函数作为模型,用特定的自变量来预测因变量的值

2.3 机器学习、人工智能与数据挖掘的关系

  • 从本质上来看,数据挖掘的目标是通过处理各种数据促进人们的决策,机器学习的主要任务是使机器模仿人类的学习,从而获得知识;而人工智能借助机器学习和推理最终形成具体的智能行为

  • 机器学习与其他领域之间的关系:

三、机器学习算法

  • 机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的方法
  • 机器学习主要分为:
    • 监督学习
    • 无监督学习
    • 强化学习

3.1 监督学习

  • **监督学习的概念:**是从有标记的训练数据中学习的一个模型,然后根据这个模型对未知样本进行预测。其中,模型的输入是某一样本的特征,函数的输出是这一样本的对应的标签。

  • 常见的监督学习算法包括:**回归分析 **和 统计分类

  • 监督学习包括 分类数字预测 两大类

    • 分类包括逻辑回归、决策树、KNN、随机森林、支持向量机、朴素贝叶斯等
    • 数字预测包括线性回归、KNN、Gradient Boosting 、ADaBoost 等

3.2 无监督学习

  • **无监督学习的概念:**又称为 非监督式学习,它的输入样本并不需要标记,而是自动从样本中学习特征实现预测。
  • 常见的无监督学习算法有:聚类 和 关联分析等,在人工神经网络中,自组织映射(SOM) 和 **适应性共振理论(ART)**是最常见的 无监督学习

3.3 强化学习

  • **强化学习的概念:**是通过观察来学习做成什么样的动作。每个动作都会对环境有所影响,学习对象根据观察到的周围环境的反馈来做出判断。
  • 强化学习强调如何基于环境而行动,以取得最大化的预期利益

四、机器学习任务

  • 根据机器学习的任务分类、可以分为 回归分类聚类 三大常见机器学习任务

五、机器学习的一般流程

  • 机器学习的一般流程包括确定分析目标、收集数据、整理数据、预处理数据、训练模型、评估模型、优化模型、上线部署等步骤

5.1 定义分析目标

  • 应用机器学习解决事件问题,首先要明确目标任务,这是机器学习算法选择的关键。明确要解决的问题和业务需求,才可能基于现有数据设计或选择算法
  • 例如:
    • 在监督式学习过程中 对定性问题 可用分类算法,对定量分析可采用 回归方法
    • 在无监督式学习中,若有样本细分则可应用 聚类算法,若需找出各数据项之间的内在联系,可应用关联分析

5.2 收集数据

  • 数据要有代表性并尽可能覆盖领域,否则容易出现过拟合或欠拟合

5.3 整理预处理

  • 获得数据之后,不应该基于创建模型,可先对数据进行一些探索,了解数据的大致结构、数据的统计信息、数据噪声以及数据分布等
  • 在此过程中,为了更好的查看数据情况,可使用数据可视化方法数据质量评价对数据质量进行评估
  • 机器学习常见的预处理方法:归一化、离散化、缺失值处理、去除共线性等

5.4 数据建模

  • 应用特征选择方法,可以从数据中提取出合适的特征,并将其应用于模型中得到较好的结果
  • 特征选择时可应用有效性分析技术,如 相关系数、卡方检验、平均互信息、条件熵、后验概率和逻辑回归权重等方法
  • 训练模型前,一般会把数据集分为 训练集 和 测试集 ,或对训练集在细分为 训练集和验证集,从而对模型的泛化能力进行评估
  • 一般会用几种不同的方法来进行模型训练,然后比较他们的性能,从中选择最优的一个.不同的模型使用不同的性能衡量指标

5.5 模型训练

  • 在模型训练过程中, 需要对模型参数进行优化,如果对算法原理理解不够透彻,往往无法快速定位能决定模型优劣的模型参数

5.6 模型评估

  • 若测试结果不理想,则分析原因并进行模型调优
  • 可以对模型进行诊断以确定模型调优的方向和思路,过拟合 和 欠拟合判断是模型诊断中重要的一步,常见的方法有 交叉验证以及 绘制学习曲线等
    • 过拟合的基本调优思路: 增加数据量,降低模型复杂度
    • 欠拟合的基本调优思路: 提高特征数量和质量,增加模型复杂度

5.7 模型应用

  • 模型应用主要与工程实现的相关性比较大。
  • 工程上是结果导向,模型在线上运行的效果直接决定模型的好坏,不单纯包括其准确程度、误差等情况,还包括其运行的速度(时间复杂度)、资源消耗程度(空间复杂度)、稳定性是否可接受等方面

01.机器学习的简介相关推荐

  1. 机器学习入门 01 —— 机器学习概述

    文章目录 系列文章 机器学习概述 1.1.人工智能概述 1 人工智能应用场景 2 人工智能小案例 3 人工智能发展必备三要素 4 人工智能.机器学习和深度学习 5 小结 1.2.人工智能发展历程 1. ...

  2. JavaScript学习笔记01【基础——简介、基础语法、运算符、特殊语法、流程控制语句】

    w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...

  3. 01 【nodejs简介】

    01 [nodejs简介] 1.前言 Node 的重要性已经不言而喻,很多互联网公司都已经有大量的高性能系统运行在 Node 之上.Node 凭借其单线程.异步等举措实现了极高的性能基准.此外,目前最 ...

  4. 01 KVM虚拟化简介

    文章目录 01 KVM虚拟化简介 1.1 简介 1.2 虚拟化架构 1.3 虚拟化组件 1.4 虚拟化特点 1.5 虚拟化优势 1.6 openEuler虚拟化 01 KVM虚拟化简介 1.1 简介 ...

  5. 【ENVI入门系列】01.ENVI产品简介与入门

    [ENVI入门系列]01.ENVI产品简介与入门 (2014-09-22 10:18:21) 转载▼ 标签: 杂谈 分类: ENVI 版权声明:本教程涉及到的数据仅供练习使用,禁止用于商业用途. 目录 ...

  6. 浅显易懂 SQLite3 笔记(01)— SQLite3简介及基本操作

    文章目录 前言 一.SQLite数据库 1.什么是SQLite? 2.为什么要用SQLite? 3.如何使用SQLite? 二.SQLite语言及基本操作 1.SQLite命令 2.SQLite类型 ...

  7. 透视HTTP协议-01|HTTP协议简介

    目录 透视HTTP协议-01|HTTP协议简介 透视HTTP协议-02|HTTP协议基础 透视HTTP协议-03|HTTP协议进阶(一) 透视HTTP协议-04|HTTP协议进阶(二) 透视HTTP协 ...

  8. 《SQL 入门教程》第01篇 SQL 简介

    <SQL 入门教程>专栏目录 第01篇 SQL 简介 第02篇 查询初体验 第03篇 查询条件 第04篇 结果排序 第05篇 限定结果数量 第06篇 分组与汇总 第07篇 多表连接查询 第 ...

  9. [译]使用scikit-learn进行机器学习的简介(教程1)

    原文:http://www.cnblogs.com/taceywong/p/4568806.html 原文地址:http://scikit-learn.org/stable/tutorial/basi ...

最新文章

  1. TypeError: 'stepUp' called on an object that does not implement interface HTMLInputElement.
  2. 研究人员利用非线性原理为机器人创造出类似昆虫的步态,脑机接口也可以使用...
  3. 常用的图像特征颜色特征、纹理特征、形状特征、空间关系特征
  4. rocketmq 订阅组_必须先理解的RocketMQ入门手册,才能再次深入解读
  5. python pd Series 添加行_Python数据分析与挖掘的常用工具
  6. idea base64encoder没有jar包_老师,免费版的IDEA为啥不能使用Tomcat?
  7. intel ssd toolbox 绿色单文件_你想要的大容量来了!影驰擎GA-E 16TB SSD上手:速度喜人-SSD,固态 ——快科技(驱动之家旗下媒体)-...
  8. 深度学习如何有效攻克鲁棒性的场景重建难题?
  9. 配置nginx,Tomcat日志记录请求耗时
  10. layui按钮展开、_layui监听工具栏(操作列表按钮)
  11. Apache下设置整站变灰方法
  12. JAVA 换行输出的五种方法
  13. 深度学习的GPU型号和参数选择
  14. 党政信创建设进入新发展阶段的三大趋势
  15. Jetson Tegra X系列刷机教程
  16. docker-compose Seata+Nacos部署
  17. Python中 ‘\r‘ 的实际应用
  18. Java基础查漏补缺(个人向)
  19. 3分钟制作一个APP,六款国际热门互联网产品
  20. 中英互译软件工程设计

热门文章

  1. 最先适应法、最佳适应法、下次适配法、最差适配法
  2. 阿朱,是时候拥抱 Linux 了!
  3. python画彩色立体柱状图
  4. Mysql中find_in_set()函数与in()函数的用法
  5. JS事件处理这一篇就够了!!
  6. linux下dhcp服务器分配出去的IP地址及剩余IP地址
  7. The World's 100 Greatest Classical Composers
  8. HTML的文本输入框、密码输入框
  9. 激荡二十五年:wind、同花顺、东方财富、大智慧等金融服务商争霸史
  10. c语言设计实验报告答案,武汉理工大学《C语言程序设计》实验报告答案