一、机器学习简介

2023-11-20

一、机器学习简介

1.1 机器学习简介

人工智能 (Artificial Intelligence,简称AI) 是对人的意识、思维过程进行模拟的一门新学科。

如今,人工智能从虚无缥缈的科学幻想变成了现实。计算机科学家们在 机器学习 (Machine Learning) 和 深度学习 (Deep Learning) 领域已经取得重大的突破,机器被赋予强大的认知和预测能力。2016 年 AplphaGO 成功击败人类世界冠军向世界证明,机器也可以像人类一样思考,甚至比人类做得更好。

人工智能、机器学习和深度学习三者关系

人工智能涵盖了机器学习和深度学习的所有范畴,人工智能研究的主要目标是使机器能够胜任一些通常需要人类才能完成的复杂工作,人工智能、机器学习、深度学习三者之间是逐层包含的关系。

在这里插入图片描述

机器学习:人工智能核心技术

机器学习是利用经验或数据来改进算法的研究,通过算法让机器从大量历史数据中学习和寻找规律,得到某种模型并利用此模型预测未来。

在这里插入图片描述

1.2 机器学习应用场景

机器学习:应用领域

从范围上来说,机器学习跟模式识别,统计学习,数据挖掘是类似的。同时,机器学习与其他领域的处理技术的结合,形成了计算机视觉、语音识别、自然语言处理等交叉学科。
在这里插入图片描述

机器学习:应用场景

  1. 客户分析
  2. 营销分析
  3. 社交媒体分析
  4. 网络安全
  5. 设备管理
  6. 交通物流
  7. 欺诈检测

机器学习应用场景:客户分析

主要是客户的基本数据信息进行商业行为分析。

  • 分析目标客户
    根据客户的需求,目标客户的性质,所处行业的特征以及客户的经济状况等基本信息使用统计分析方法和预测验证法,分析目标客户,提高销售效率。
  • 制定营销策略
    了解客户的采购过程,根据客户采购类型、采购性质进行分类分析制定不同的营销策略。
  • 分析客户价值
    根据已有的客户特征,进行客户特征分析、客户忠诚分析、客户注意力分析、客户营销分析和客户收益分析。

机器学习应用场景:营销分析

囊括了产品分析,价格分析,渠道分析,广告与促销分析这四类分析。

  • 产品分析
    主要是竞争产品分析,通过对竞争产品的分析制定自身产品策略。
  • 价格分析
    分为成本分析和售价分析,成本分析的目的是降低不必要成本,售价分析的目的是制定符合市场的价格。
  • 渠道分析
    指对产品的销售渠道进行分析,确定最优的渠道配比。
  • 广告与促销分析
    结合客户分析,实现销量的提升,利润的增加。

机器学习应用场景:社交媒体分析

以不同社交媒体渠道生成的内容为基础,实现不同社交媒体的用户分析,访问分析,互动分析等。同时,还能为情感和舆情监督提供丰富的资料。

  • 用户分析
    根据用户注册信息,登录平台的时间点和平时发表的内容等用户数据,分析用户个人画像和行为特征。
  • 访问分析
    通过用户平时访问的内容,分析用户的兴趣爱好,进而分析潜在的商业价值。
  • 互动分析
    根据互相关注对象的行为预测该对象未来的某些行为特征。

机器学习应用场景:网络安全和设备管理

  • 网络安全
    新型的病毒防御系统可使用数据分析技术,建立潜在攻击识别分析模型,监测大量网络活动数据和相应的访问行为,识别可能进行入侵的可疑模式,做到未雨绸缪。
  • 设备管理
    通过物联网技术能够收集和分析设备上的数据流,包括连续用电、零部件温度、环境湿度和污染物颗粒等无数潜在特征,建立设备管理模型,从而预测设备故障,合理安排预防性的维护,以确保设备正常作业,降低因设备故障带来的安全风险。

机器学习应用场景:交通物流和欺诈检测

  • 交通物流
    物流是物品从供应地向接收地的实体流动。通过业务系统和GPS定位系统获得数据,对于客户使用数据构建交通状况预测分析模型,有效预测实时路况、物流状况、车流量、客流量和货物吞吐量,进而提前补货,制定库存管理策略。
  • 欺诈检测
    身份信息泄露盗用事件逐年增长,随之而来的是欺诈行为和交易的增多。公安机关,各大金融机构,电信部门可利用用户基本信息,用户交易信息,用户通话短信信息等数据,识别可能发生的潜在欺诈交易,做到提前预防未雨绸缪。

1.3 机器学习算法分类

机器学习不同层次

  1. 两眼摸瞎,不知所措
  2. 会用工具跑模型和评估模型
  3. 根据应用的特点改进模型来获取更好的结果
  4. 熟悉各类模型及其特点并能准确应用
  5. 解决行业重点问题推动行业技术的发展

机器学习介绍

  • 数学基础
    • 微积分、矩阵计算、线性代数、概率论和数理分析
  • 计算机基础
    • Linux、DataBase、Python/R、Hadoop、Spark、HDFS、YARN、Pig、Flume、Sqoop、Hive、Impala、Sentry、Zookeeper
  • 传统机器学习算法
    • K-近邻算法、决策树、朴素贝叶斯、逻辑回归、支持向量机、聚类、主成分分析

机器学习提升路径

在这里插入图片描述

机器学习概念

  • 概念
    • 假设用PP来评估计算机程序在某任务类TT上的性能, 若一个程序通过利用经验EE在TT中任务上获得了性能改善,则我们就说关于TT 和PP,该程序对EE进行了学习。
  • 研究内容
    • 关于在计算机上从数据中产生 模型 (Model) 的算法,即学习算法 (Learning Algorithm)。

机器学习算法分类

按学习的方式来划分,机器学习主要包括:

  • 监督学习

输入数据带有标签。监督学习建立一个学习过程,将预测结果与 “训练数据”(即输入数据)的实际结果进行比较,不断的调整预测模型,直到模型的预测结果达到一个预期的准确率,比如分类和回归问题等。常用算法包括决策树、贝叶斯分类、最小二乘回归、逻辑回归、支持向量机、神经网络等。

  • 非监督学习

输入数据没有标签,而是通过算法来推断数据的内在联系,比如聚类和关联规则学习等。常用算法包括独立成分分析、K-Means 和 Apriori 算法等。

  • 半监督学习

输入数据部分标签,是监督学习的延伸,常用于分类和回归。常用算法包括图论推理算法、拉普拉斯支持向量机等。

  • 强化学习

输入数据作为对模型的反馈,强调如何基于环境而行动,以取得最大化的预期利益。与监督式学习之间的区别在于,它并不需要出现正确的输入 / 输出对,也不需要精确校正次优化的行为。强化学习更加专注于在线规划,需要在探索(在未知的领域)和遵从(现有知识)之间找到平q衡。

机器学习算法分类

  • 回归算法: 线性回归、逻辑回归
  • 基于实例的学习算法: K-邻近算法
  • 正则化算法: 岭回归、LASSO、Elastic Net
  • 决策树算法: 分类和回归树、ID3算法、C4.5/C5.0、随机森林、梯度推进机
  • 贝叶斯算法: 朴素贝叶斯、高斯朴素贝叶斯、多项式朴素贝叶斯
  • 基于核的算法: 支持向量机(SVM)、径向基函数(RBF)、线性判别分析(LDA)
  • 聚类算法: K-均值、K-中位数、EM算法、分层聚类
  • 关联规则: Apriori算法、Eclat算法
  • 神经网络: 感知器、反向传播
  • 深度学习: 卷积神经网络、递归神经网络
  • 降维算法: 主成分分析、主成分回归、偏最小二乘回归
  • 集成算法: Boosting、Bagging、AdaBoost

1.4 机器学习基本术语

机器学习的基本原理就是把现实世界当中要研究的对象通过特征值将其数字化,然后让计算机通过这些已有的数字学习“经验”,从而有了判断的能力,这时如果有了新的输入,计算机就能够根据这些经验来做出判断。

比如下面的例子就是要计算机判断西瓜是好瓜还是坏瓜,我们把西瓜对象提取出三种类型的特征值,然后通过算法让机器去学习,从而拥有了判断西瓜好坏的能力。我们把这个可以将经验(数据)转化为最终的模型(Model,也就是那个能判断好瓜还是坏瓜的程序)的算法称之为学习算法(Learning Algorithm)

在这里插入图片描述

  • 模型、学习算法、数据集、示例/样本、属性/特征、属性值

在这里插入图片描述

  • 维数、样本空间/属性空间、特征向量

在这里插入图片描述

我们可以看出现实世界的任何事物其实都可以通过属性或着特征来进行描述,上图给出的就是通过三个属性来描述西瓜的一组数据。属性的数目我们称之为维数,本例中表示西瓜用了三个特征,因此就是三维。

下面的图表示样本空间(Sample Space)或者属性空间(Attribute Space),我们也可以看到这是一个三维空间。

每个样本根据其特征值都会落在样本空间的一个点上,这个点由一组坐标向量来表示,因此样本又叫做特征向量(Feature Vector)。

机器学习的过程就是通过这些样本数据进行训练学习的过程,通过训练,我们可以得出自己的模型,这个模型我们可以理解为经过训练的机器大脑,这个机器大脑可以帮助我们做判断,比如判断一个西瓜的好坏,判断的越准确,说明我们的模型越好。

  • 标记、样例、标记空间/输出空间

当我们开始训练我们的模型的时候,只有上面所示的数据集是不够的,我们还需要一组带有判断结果的数据

判断结果我们叫做标记(Label),带有标记信息的样本,则称之为样例(Example)

所有标记的集合叫做标记空间(Label Space)或输出空间(Output Space)

((色泽='青绿',根蒂='蜷缩',敲声='浊响'), 好瓜)

通常我们训练模型就是为了找到输入空间到输出空间的对应关系,即给定输入空间的一个特征向量,能够对应到输出空间的一个值。

  • 分类问题
((色泽='青绿',根蒂='蜷缩',敲声='浊响'), 好瓜)
  • 回归问题
((色泽='青绿',根蒂='蜷缩',敲声='浊响'), 0.95)
  • 聚类问题
  • 监督学习/无监督学习

如果我们想让我们的模型只是简单地去判断(通常叫预测)一个瓜是好瓜还是坏瓜,即分成两类,这种学习任务称为分类问题(Classification),预测的是离散值;如果是想让其预测的是连续值,如预测西瓜成熟度0.95, 0.88,此类学习任务就叫做回归(Regression)

在我们的示例中只是简单地分为“好瓜”,“坏瓜”两类,此种分类称为二分类问题(Binary Classification),通常一个称为正类(Positive Class)也有翻译为“阳类”,另一个称为反类(Negtive Class)或者成为为阴类

如果是多个类别的话,就称为多分类问题

如果我们想将训练集中的西瓜分成若干组,每组就称之为一个(Cluster),这个过程就叫做聚类(Clustering)。这些簇可能对应一些潜在的分类,比如“浅色瓜”,“深色瓜”等。而这些分类可能是我们事先并不知道的,就是说学习算法在做聚类分析的时候是自动产生的类别,通常训练样本中也不需要标记信息。

根据训练数据是否有标记信息,学习任务可分为监督学习(Supervised Learning)和无监督学习(Unsupervised Learning)。

分类和回归是监督学习的典型代表,而聚类则是无监督学习的典型代表。

  • 假设
(色泽='青绿',根蒂='蜷缩',敲声='浊响')

每种特征的组合都认为是一个假设(Hypothesis),所有假设的集合我们称之为假设空间

  • 假设空间、版本空间

在这里插入图片描述

如果“色泽”,“根蒂”,“敲声”分别有3,2,2种可能,(每种特征值都要加一种任意值可能)那么假设空间的规模就是 43x=3+1=374∗3x=∗3+1=37

从这幅图可以看出,每种特征值在计算可能性的时候都加了一种可能,就是任意值可能,我们用“*”表示,最后结果加1是由于存在一种可能就是根本没有“好瓜”这个概念,或者说“好瓜”跟这些特征都没有关系。当给定一个训练集进行训练的时候,模型会逐渐删除那些与正例不一致的假设和(或)与反例一致的假设,最后获得与训练集一致的假设。而剩下的这些假设可能有多个,我们把剩下的这些假设的集合称之为版本空间(Version Space)。

  • 泛化
    • 学习到模型对未知数据的预测能力
  • 归纳
    • 从特殊情况到一般的泛化过程(具体事实一般性规律)
  • 演绎
    • 从一般到特殊的特化过程(基础原理具体状况)
  • 归纳学习
    • 从样例中学习显然时一个归纳的过程
    • 广义的归纳学习:从样例中学习
    • 侠义的归纳学习:从训练数据中学的概念/概念生成/概念(concept)学习
  • 归纳偏好
    • 机器学习算法在学习过程中对某种类型假设的偏好
  • 奥卡姆剃刀原则
    • 若有多个假设与观察一致,则选最简单的那个

在这里插入图片描述

Scikit-learn安装与查看

  • 安装Scikit-learn
    • !pip install -U scikit-learn
  • 安装Matplotlib
    • !pip install matplotlib

tips:镜像已经安装好相关库,你可以使用以下命令查看Scikit-learn版本

  • 先导入sklearn:import sklearn
  • 查看sklearn版本号:sklearn.__version__
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

一、机器学习简介 的相关文章

  • 【openvpn简介】

    openvpn简介 简单原理 脚本实现一键安装 增加 注销 第六周作业 简单原理 VPN Virual Private Network 虚拟私有网络 或称为虚拟专用网络 常用于在公用网络上建立专用网络 进行加密通讯 VPN网关通过对数据包的
  • Linux 字体安装

    java系统生成PDF 二维码增加标题等场景都会使用到Font 但是linux服务器上又没有这些字体 这个时候就需要自己安装字体到服务器 以下是安装步骤 1 安装插件 yum install y fontconfig mkfontscale
  • java 使用rabbitmq_java操作RabbitMQ整个过程介绍

    一 环境安装 1 安装java工具 IntelliJ IDEA 2019 3 x64 2 安装erl10 7 并配置好path等环境变量 同时验证是否安装成功 见图1 图2 图1 图2 3 安装RabbitMQ3 8 3 图3 cmd进入上

随机推荐

  • 后台-husky提交代码规范使用

    husky是一个git hook工具 可以帮助我们触发git提交的各个阶段 pre commit commit msg pre push 1 如何使用husky呢 npx husky init npm install Windows安装不成
  • 一个基于SpringBoot2+Vue+Redis的企业级聚合支付系统可二次开发接私活

    点击关注 Java开发宝典 2022 01 20 08 50 收录于话题 项目分享28个 项目介绍 Jeepay是一套适合互联网企业使用的开源支付系统 支持多渠道服务商和普通商户模式 已对接微信支付 支付宝 云闪付官方接口 支持聚合码支付
  • 微信小程序读取服务器数据,微信小程序前端获取后端数据

    webMessage 测试 index js Page getMessage function var self this wx request url http localhost 8080 demo 仅为示例 需填写自己服务器的地址 d
  • word2vec深入理解及实践

    以前对于word2vec的理解就是通过训练能得到词向量 对应有两种方法 skip gram和CBOW 两者差别其实不大 但关于具体的细节也不是很了解 今天来深入理解并记录一下 理论方面 word2vec是一种基于神经网络的语言模型 是goo
  • 网络协议之ARP协议解析

    ARP协议简介 ARP Address Resolution Protocol 是个地址解析协议 最直白的说法是 在IP以太网中 当一个上层协议要发包时 有了该节点的IP地址 ARP就能提供该节点的MAC地址 OSI 模式把网络工作分为七层
  • Spring项目如何部署项目到Linux

    部署前先将项目所需的数据库添加到linux的mysql中 部署jar包到linux 修改项目pom文件 将打包方式改为jar 在pom中添加springboot插件
  • 春考计算机服务器配置,考试系统的服务器配置有什么要求?

    处理器 CPU类型 Intel 至强E5 2600 CPU型号 Xeon E5 2650 CPU频率 2GHz 智能加速主频 2 8GHz 标配CPU数量 1颗 最大CPU数量 2颗 制程工艺 32nm 三级缓存 20MB 总线规格 QPI
  • Matlab运行程序_暂停方法

    pause函数 官方文档 其调用格式为 pause 延迟数秒 必须启用暂停 此调用才能生效 暂停执行matlab 并等用户按下任意键 pause on 启用暂停设置 若想省略延迟时间 则直接使用pause函数 则将程序暂停 直到用户按任意键
  • 如何在 CentOS 中下载包含所有依赖项的 RPM 包

    翻译于ostechnix com 上 Senthil Kumar的 How To Download A RPM Package With All Dependencies In CentOS 我们可以使用curl或wget命令下载任何包 对
  • 火焰识别python_基于Python的火焰识别程序

    本期介绍一下笔者在试验数据处理时写的一个用于火焰识别的小程序 该小程序的功能是对拍摄到的火焰图像进行提取 增强 降噪和识别 并输出相应处理过的火焰图像以及火焰参数 如传播距离 面积等 该程序基于Python 3语言 用到了前面提到的图像和数
  • EditText设置监听

    在开发中有的需要对编辑框进行监听如果编辑框中没有值 登录按钮就是无法点击并且颜色为灰色 当编辑框中的值满足添加的时候 按钮可以点击同时颜色发生改变 由于自己是个菜鸟 代码中也有注释 也比较简单 有什么bug希望各位大神也能指点一二 acti
  • SSRS使用MySql作为数据源遇到的问题。

    因为工作需求 SSRS需要取到MySql数据源 还好有了ODBC 谷歌了很多 都是不完整的Solution 放上完整版的供大家评价参考 下面是StepByStep 问题1 使用ODBC数据源 填入正确的MySql连接字符串 却显示 ERRO
  • Python File seek() 方法和File read()方法

    read 方法用于从文件读取指定的字节数 如果未给定或为负则读取所有 语法 read 方法语法如下 fileObject read size 参数 size 从文件中读取的字节数 默认为 1 表示读取整个文件 返回值 返回从字符串中读取的字
  • 最小花费爬楼梯(C语言)

    本周第二题 数组的每个索引做为一个阶梯 第 i个阶梯对应着一个非负数的体力花费值 索引从0开始 每当你爬上一个阶梯你都要花费对应的体力花费值 然后你可以选择继续爬一个阶梯或者爬两个阶梯 您需要找到达到楼层顶部的最低花费 在开始时 你可以选择
  • 53. 翻转字符串

    思路 首先翻转字符串整体 然后对于每个单词进行翻转 两次翻转的函数使用同一个函数 翻转函数的思路 使用队列 将String转成char 然后反过来存储 下面就是使用的这种方法 用两个指针 进行前后字符的对换 StringBuilder类中有
  • 使用Retrofit过程中碰到的一些问题(持续更新。。。。)

    1 服务端成功返回数据 但解析返回的json格式失败 解决方法 1 在使用默认推荐的JSON解析配置 GsonConverterFactory create 时 我们自己创建的json对象基类中的各个变量名称要与服务器返回的JSON中的各名
  • 深度学习RuntimeError: CUDA error: CUBLAS_STATUS_EXECUTION_FAILED when calling `cublasSgemm( handle, opa,

    错误记录 在使用GPU跑程序时 前面加载数据是没问题的 后面relu 开始报错 错误为 RuntimeError CUDA error CUBLAS STATUS EXECUTION FAILED when calling cublasSg
  • HDU - 1002 A + B Problem II

    I have a very simple problem for you Given two integers A and B your job is to calculate the Sum of A B Input The first
  • 【golang】error parsing regexp: invalid or unsupported Perl syntax (正则表达式校验密码)

    要在 Go 中编写密码校验规则 确保密码不少于8位且包含数字和字母 你可以使用正则表达式和 Go 的 regexp 包来实现 以下是一个示例代码 错误示范 package main import fmt regexp func valida
  • 一、机器学习简介

    一 机器学习简介 1 1 机器学习简介 人工智能 Artificial Intelligence 简称AI 是对人的意识 思维过程进行模拟的一门新学科 如今 人工智能从虚无缥缈的科学幻想变成了现实 计算机科学家们在 机器学习 Machine