人工智能原理复习--机器学习

文章目录

  • 上一篇
  • 机器学习概述
  • 归纳(示例)学习
  • ID3决策树算法
  • K近邻算法
  • 下一篇

上一篇

人工智能原理复习–搜索策略(二)

机器学习概述

学习系统的基本结构

环境
学习
知识库
执行



环境向系统的学习部分提供某些信息
学习利用这些信息修改数据库,以怎金系统执行部分完成任务的效能
执行部分根据知识库完成任务,同时把获得的信息反馈给学习部分

最重要的因素是`环境向系统提供的信息

机器学习分类:

  • 监督学习:决策树、支持向量机(SVM)、k-临近算法(KNN)
  • 无监督学习:k-均值、DBSCAN密度聚类算法、最大期望算法
  • 强化学习:环境,奖励,状态 ,动作–> 状态奖励

归纳(示例)学习

归纳学习是一种通过观察和分析现象,发现其中规律和模式,并据此进行预测和决策的方法。归纳学习的基本思想是通过从数据样本中归纳出一般性规律或模式,从而实现对未知数据的预测和分类。

归纳学习是通过一系列的示例(正例和反例)出发,生成一个反映这些示例本质的定义:

  • 覆盖所有的正例,而不包含任何反例
  • 可用来指导对新例子的分类识别

归纳学习过程可以分为以下几个步骤:

  1. 数据采集:收集需要学习的数据样本。
  2. 特征提取:从数据样本中提取出有用的特征,用于归纳学习。
  3. 模型训练:使用归纳学习算法从数据样本中归纳出一般性规律或模式。
  4. 模型评估:使用测试数据对归纳模型进行评估,计算出模型的准确率和误差。
  5. 模型应用:使用归纳模型对新的数据进行分类或预测。

概念描述搜索及获取

  • 例子空间:所有可能的正例、反例构成的空间
  • 假设空间:所有可能的假设(概念描述)构成的空间
  • 顶层假设:最泛化的概念描述,不指定任何的特征值
  • 底层假设:最特化(具体)的概念描述,所有特征都给定特征值
  • 假设空间的搜索方法:1、特化搜索(宽度优先,自顶向下) 2、泛化搜索(宽度优先,自底向上) 3、双向搜索(版本空间法)

ID3决策树算法

信息的定量描述
衡量信息多少的物理量称为信息量:

  • 若概率很大,受信者事先已有所估计,则该消息信息量就很小
  • 若概率很小,受信者感觉很突然,该信息所含信息量就很大

使用信息量函数 f ( p ) f(p) f(p)描述, f ( p ) f(p) f(p)条件:

  • f ( p ) f(p) f(p) 应是p的严格单调递减函数
  • 当p = 1时, f ( p ) = 0 f(p) = 0 f(p)=0, 当p = 0时, f ( p ) = ∞ f(p) = \infty f(p)=
  • 当两个独立事件的联合信息量应等于他们分别的信息量之和

信息量定义 :若一个消息 x x x 出现的的概率为 p p p, 则这一消息所含信息量为:
I = − log ⁡ p I = - \log{p} I=logp

单位:

  • 以2为底,单位 b i t bit bit (常用)
  • 以e为底,单位 n a t nat nat
  • 以10为底,单位 h a r t hart hart

信息熵
所有可能消息的平均不确定性,信息量的平均值
H ( X ) = − ∑ p ( x i ) log ⁡ ( p ( x i ) ) H(X) = -\sum{p(x_i)\log{(p(x_i))}} H(X)=p(xi)log(p(xi))

在这里插入图片描述
定义:

  • M ( C ) M(C) M(C) 为根节点总的信息熵
  • B ( C , A ) B(C, A) B(C,A) 为根据A属性分类后的加权信息熵的和,每一类占全部的比例作为加权,将分完之后的信息熵加权求和
  • g a i n = M ( C ) − B ( C , A ) gain = M(C) - B(C,A) gain=M(C)B(C,A)信息增益,信息增益越大越好

分别求出每个属性的信息增益,然后将最大的作为这个节点的分类属性

步骤:

  1. 首先求出根节点的信息熵
  2. 然后按每个特征求出对应的信息增益
  3. 比较得出最大的信息增益的特征作为给节点的划分属性
  4. 循环1-3步直到将全部类别分开,或者划分比例达到要求值

d在这里插入图片描述
ID3算法
优点:

  1. 计算复杂度不高
  2. 输出结果易于理解
  3. 可以处理不相关特征数据

缺点:

  1. 不能处理带有缺失值的数据集
  2. 在进行算法学习之前需要对数据集中的缺失值进行预处理
  3. 存在过拟合问题

K近邻算法

一种监督学习分类算法,没有学习过程,在分类时通过类别已知的样本对新样本的类别进行预测。

基本思路:

  1. 通过以某个数据为中心,分析离其最近的K个邻居的类型,获得该数据可能的类型
  2. 以少数服从多数的原理,推断出测试样本的类别

只要训练样本足够多,K近邻算法就能达到很好的分类效果

在这里插入图片描述

  • 当K = 3时,即选择最近的3个点,由于三角形样本所占近邻样本的比例为2/3,于是可以得出圆形输入实例应该为三角形
  • 当K = 5时,由于长方形样本栈近邻样本比例为3/5,此时测试样本被归为长方形类别。

步骤:

  1. 计算测试数据与每个训练数据之间的距离
  2. 按照距离的递增关系进行排序
  3. 选取距离最小的k个点
  4. 确定前k个点所在类别的出现频率
  5. 返回前k个点中出现频率最高的类别做为测试数据的预测分类

优点:

  • 简单,便于理解和实现
  • 应用范围广
  • 分类效果好
  • 无需进行参数估计

缺点:

  • 样本小时误差难以估计
  • 存储所有样本,需要较大存储空间
  • 大样本计算量大
  • k的取值对结果也有较大影响(k较小对噪声敏感,k过大可能包含别的类样本)

下一篇

未完待续

`

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/212688.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

辨析旅行商问题(TSP)与车辆路径问题(VRP)

目录 前言旅行商问题 (TSP)问题介绍数学模型符号定义问题输入约束条件目标函数问题输出 解的空间解空间大小计算解释 车辆路径问题 (VRP)问题介绍TSP到VRP的过渡数学模型符号定义问题输入约束条件优化目标问题输出 解空间特殊情况一般情况 TSP 与 VRP 对比 前言 计划是通过本文…

基于JavaWeb+SSM+Vue助农扶贫微信小程序系统的设计和实现

基于JavaWebSSMVue助农扶贫微信小程序系统的设计和实现 源码获取入口Lun文目录前言主要技术系统设计功能截图 源码获取入口 Lun文目录 目 录 第一章 绪论 1 1.1 研究背景 1 1.2 研究意义 1 1.3 研究内容 2 第二章 开发环境与技术 3 2.1 JSP技术 3 2.2 MySQL数据库 3 2.3 Java…

基于Solr的全文检索系统的实现与应用

文章目录 一、概念1、什么是Solr2、与Lucene的比较区别1)Lucene2)Solr 二、Solr的安装与配置1、Solr的下载2、Solr的文件夹结构3、运行环境4、Solr整合tomcat1)Solr Home与SolrCore2)整合步骤 5、Solr管理后台1)Dashbo…

4-Docker命令之docker commit

1.docker commit介绍 docker commit命令是用于根据docker容器的改变创建一个新的docker镜像 2.docker commit用法 docker commit [参数] container [repository[:tag]] [rootcentos79 ~]# docker commit --helpUsage: docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG…

微服务学习:Nacos配置中心

先打开Nacos(详见微服务学习:Nacos微服务架构中的服务注册、服务发现和动态配置&Nacos下载) 1.环境隔离: 新建命名空间: 记住命名空间ID: c82496fb-237f-47f7-91ed-288a53a63324 再配置 就可达成环…

vue3 创建过程中 运行npm create vue@latest 和 npm install卡住不动的解决方法之一

问题:npm create vuelatest、和npm install 不管是电脑cmd上还是vscode终端上都是卡很久或不动! 解决: 1、查看npm代理 npm config get registry2、更换npm镜像 npm config set registryhttps://registry.npmmirror.com这里换成淘宝源好像…

学习 Vue 3 源码

Vue 3 是一款流行的前端框架,它的数据代理和虚拟 DOM 实现是其核心功能之一 Vue 3 的数据代理 在 Vue 3 中,数据代理是指将组件实例的属性代理到其内部状态对象上。这使得开发者可以使用更便捷的方式来访问和修改组件的状态。 Vue 3 的数据代理实现主…

docker-centos中基于keepalived+niginx模拟主从热备完整过程

文章目录 一、环境准备二、主机1、环境搭建1.1 镜像拉取1.2 创建网桥1.3 启动容器1.4 配置镜像源1.5 下载工具包1.6 下载keepalived1.7 下载nginx 2、配置2.1 配置keepalived2.2 配置nginx2.2.1 查看nginx.conf2.2.2 修改index.html 3、启动3.1 启动nginx3.2 启动keepalived 4、…

【HarmonyOS开发】控件开发过程中,知识点记录

1、问题记录及解决方案 1.1 资源(Icon&i18n)问题 控件:只有一个JS文件,不会将任何资源型文件(图片、字体、默认文字等)打包到SO中。因此,当我们开发控件时,需要将需要使用到的资…

【机器学习】042_迁移学习

一、概述、定义 目的: 迁移学习的目的是将某个领域或任务上学习到的模式、知识应用到不同但相关的领域里,获取更多数据,而不必投入许多时间人力来进行数据的标注。 举例: 已经会下中国象棋,就可以类比着来学习国际…

Java单元测试:JUnit和Mockito的使用指南

引言: 在软件开发过程中,单元测试是一项非常重要的工作。通过单元测试,我们可以验证代码的正确性、稳定性和可维护性,帮助我们提高代码质量和开发效率。本文将介绍Java中两个常用的单元测试框架:JUnit和Mockito&#x…

Navicat连接Oracle数据库

Navicat连接Oracle数据库 打开服务里面找到Oracle服务 OracleServerXE或者OracleServerTTL 创建数据库连接 连接名默认自己起 主机选择本地 端口默认 服务名在服务中可以找到输入后缀 用户名默认都是system 密码是创建oracle时候填写的口令 点击测试连接即可

Spring Boot中的事务是如何实现的?懂吗?

SpringBoot中的事务管理,用得好,能确保数据的一致性和完整性;用得不好,可能会给性能带来不小的影响哦。 基本使用 在SpringBoot中,事务的使用非常简洁。首先,得感谢Spring框架提供的Transactional注解&am…

【金融数据分析】计算沪深300指数行业权重分布并用饼图展示

前言 前面的文章我们已经介绍了如何获取沪深300成分股所述行业以及权重的数据,想要了解这部分内容的小伙伴可以阅读上一篇文章 springbootjdbcTemplatesqlite编程示例——以沪深300成分股数据处理为例-CSDN博客 那么有了上文获取的数据,我们实际上可以…

【rabbitMQ】rabbitMQ控制台模拟收发消息

目录 1.新建队列 2.交换机绑定队列 3.查看消息是否到达队列 总结: 1.新建队列 2.交换机绑定队列 点击amq.fonout 3.查看消息是否到达队列 总结: 生产者(publisher)发送消息,先到达交换机,再到队列&…

微信小程序uni-app:常用Form表单组件使用示例

目录 input 输入框picker 选择器 input 输入框 https://developers.weixin.qq.com/miniprogram/dev/component/input.htmlhttps://uniapp.dcloud.net.cn/component/input.html <inputclass"input-class"type"text"v-model"value"placeholde…

Linux下文本三剑客:grep、awk、sed之对比

一、grep 主要用于搜索某些字符串&#xff1b;sed、awk 用于处理文本&#xff1a; grep基本是以行为单位处理文本的&#xff1b; 而awk可以做更细分的处理&#xff0c;通过指定分隔符将一行&#xff08;一条记录&#xff09;划分为多个字段&#xff0c;以字段为单位处理文本。…

python输出菱形字符图案 附实战代码

下面是一个Python程序&#xff0c;可以用来输出菱形字符图案。这个程序使用了两个嵌套的for循环&#xff0c;以及字符串连接操作。 # 获取用户输入 n int(input("请输入菱形的边长&#xff1a;"))# 生成上半部分菱形 for i in range(1, n 1, 2):print(" &quo…

SDK,但未在应用内的隐私政策/在AppGallery Connect上提交的隐私政策内容中进行明示,不符合华为应用市场审核标准。

&#xff08;暂时用不到的也建议收藏一下&#xff0c;因为文章持续更新中&#xff09; 最新更改时间&#xff1a;20023-12-10 第三方SDK合集列表 为了确保用户个人信息的安全&#xff0c;我们对使用到的第三方提供的软件开发包&#xff08;SDK&#xff09;进行了严格的安全检…

期末速成数据库极简版【存储过程】(5)

目录 【7】系统存储过程 【8】用户存储过程——带输出参数的存储过程 创建存储过程 存储过程调用 【9】用户存储过程——不带输出参数的存储过程 【7】系统存储过程 系统存储我们就不做过程讲解用户存储过程会考察一道大题&#xff0c;所以我们把重点放在用户存储过程。…