机器学习---概述(一)
文章目录
- 1.人工智能、机器学习、深度学习
- 2.机器学习的工作流程
- 2.1 获取数据集
- 2.2 数据基本处理
- 2.3 特征工程
- 2.3.1 特征提取
- 2.3.2 特征预处理
- 2.3.3 特征降维
- 2.4 机器学习
- 2.5 模型评估
- 3.机器学习的算法分类
- 3.1 监督学习
- 3.1.1 回归问题
- 3.1.2 分类问题
- 3.2 无监督学习
- 3.3 半监督学习
- 3.4 强化学习
- 3.5 总结
1.人工智能、机器学习、深度学习

从图中可以看到,人工智能、机器学习、深度学习之间的关系为:机器学习是人工智能的一个实现途径,而深度学习是机器学习的一个方法演变而来的
2.机器学习的工作流程
可以将机器学习的工作流程模拟成人思考解决问题的过程,人在遇到一个新的问题的时候,通常会根据以往对解决此类问题的经验来获取到一个规律,根据此规律来预测解决这种新的问题会成功还是失败。
而机器学习的工作流程与之较为相似,当遇到一批新的数据的时候,计算机会自动分析数据来获取模型,根据模型来预测或者评估数据。

机器学习的工作流程可以分为以下步骤:
1.获取数据
2.数据基本处理
3.特征工程
4.机器学习(模型训练)
5.模型评估

如果结果达到要求,上线服务
没有达到要求,就重复上述步骤
2.1 获取数据集

在数据集中,一行数据我们称为一个样本,一列数据我们成为一个特征
,有些数据有目标值(标签值),有些数据没有目标值(如上表中,电影类型就是这个数据集的目标值)
数据类型构成
1.特征值+目标值(目标值是连续的或者离散的)
2.只有特征值,没有目标值
数据分割:
机器学习一般会将数据分割为两个部分:
训练数据:用于训练和构建模型
测试数据:在模型检验的时候使用,用于评估模型是否有效
这两部分的划分比例一般为:
训练集70%-80% 测试集20%-30%
2.2 数据基本处理
即对数据进行缺失值、去除异常值等处理
缺失值是指粗糙数据中由于缺少信息而造成的数据的聚类、分组、删失或截断。它指的是现有数据集中某个或某些属性的值是不完全的
2.3 特征工程
特征工程指的是使用专业知识和技巧来处理数据,使得特征能在机器学习算法上发挥更好的作用的过程。
特征工程包含:特征提取、特征预处理、特征降维三部分
2.3.1 特征提取
即将任意数据转换为可用于机器学习的数字特征

2.3.2 特征预处理
通过一些转换函数将特征数据转换为更加适合机器学习算法的特征数据的过程。

2.3.3 特征降维
指的是在某些条件下,降低随机变量的特征的个数,得到一组“不相关”的主变量的个数。

2.4 机器学习
即选择适合的算法对模型进行训练
2.5 模型评估
对训练好的模型进行评估
3.机器学习的算法分类
在机器学习中,根据数据集的组成不同,可以将机器学习算法分为:
监督学习
无监督学习
半监督学习
强化学习
3.1 监督学习
在监督学习中,计算机通过示例学习。它从过去的数据中学习,并将学习的结果应用到当前的数据中,以预测未来的事件。在这种情况下,输入和期望的输出数据都有助于预测未来事件。
监督学习的定义为:
根据已有的数据集,知道输入和输出结果之间的关系。根据这种已知的关系,训练得到一个最优的模型。
也就是说,在监督学习中训练数据既有特征(feature)又有标签(label),通过训练,让机器可以自己找到特征和标签之间的联系,在面对只有特征没有标签的数据时,可以判断出标签。监督学习可以分为回归和分类两种
3.1.1 回归问题
例如:预测房价,根据样本集拟合出一条连续曲线

回归通俗一点就是,对已经存在的点(训练数据)进行分析,拟合出适当的函数模型y=f(x),这里y就是数据的标签,而对于一个新的自变量x,通过这个函数模型得到标签y。
3.1.2 分类问题
例如:根据肿瘤特征判断良性还是恶性,得到的是结果是“良性”或者“恶性”,是离散的。

所以简单来说分类就是,要通过分析输入的特征向量,对于一个新的向量得到其标签。
和回归最大的区别在于,分类是针对离散型的,输出的结果是有限的。
监督学习的应用:
医疗诊断和预测:监督学习在医疗领域中有着广泛的应用。例如,在医学影像诊断中,通过标记了疾病或异常的图像数据,可以训练模型来帮助医生自动识别和诊断病变。此外,监督学习还可以用于疾病预测,通过医学数据的训练,模型可以预测患者是否有可能患上某种疾病,帮助医生进行早期干预和预防。
3.2 无监督学习
不知道数据集中数据、特征之间的关系,而是要根据聚类或一定的模型得到数据之间的关系。可以这么说,比起监督学习,无监督学习更像是自学,让机器学会自己做事情,是没有标签(label)的。
输入数据是由输入特征值组成,没有目标值
输入数据没有被标记,也没有确定的结果。样本数据类别未知;
需要根据样本间的相似性对样本集进行类别划分。

无监督学习的应用:
Google新闻按照内容结构的不同分成财经,娱乐,体育等不同的标签,这就是无监督学习中的聚类。

3.3 半监督学习
半监督学习是一种特殊的机器学习方法,它试图充分利用有标签数据和无标签数据的优势。 在很多情况下,获取有标签数据可能非常昂贵或耗时,但我们可能能够获得大量的无标签数据。半监督学习的目标就是通过这些有限的有标签数据和大量的无标签数据来提高机器学习模型的性能。
这是一个生活中的类比:假设你正在学习认识动物,但你只有少数几本书上有动物的名字和图片。现在,你朋友给了你一大堆没有标签的动物图片。半监督学习的任务就是,通过这些有标签的书籍和无标签的图片,让你更好地辨认未见过的新动物。


**半监督学习的主要优点是能够在有限的有标签数据上构建更好的模型,从而节省数据标注的成本。**然而,它也可能面临一些挑战,例如无标签数据质量的问题,以及在某些情况下,过度依赖伪标签可能导致错误的预测。因此,在应用半监督学习时,需要谨慎选择合适的方法,并根据具体情况进行调整。
3.4 强化学习
强化学习就像是在教一只聪明的小宠物怎么玩游戏一样。你是这个小宠物的导师,它试图在一个陌生的游戏世界中获得最高的分数。但是,开始时,它对游戏一无所知,所以它必须通过尝试和错误来学习。
在强化学习中,有三个主要的角色:
智能体(Agent):就是我们的小宠物,它在游戏中行动,并试图通过选择不同的动作来达到最好的结果。
环境(Environment):就是游戏的世界,它会根据智能体的动作给予不同的反馈,比如给予奖励(reward)或者惩罚(penalty)。智能体的目标是通过与环境的交互来最大化总的奖励。
动作(Action):就是智能体在游戏中可以选择的不同的举动或策略。
整个过程就像是一个训练过程:智能体在游戏中进行动作,然后根据环境给予的奖励或惩罚来调整自己的策略。通过反复的试错和学习,它会逐渐学会什么样的动作可以得到更多的奖励,从而在游戏中表现得越来越好。

强化学习的一个典型例子就是训练一个机器人玩赛车游戏。机器人开始时可能会碰壁、撞车,但随着时间的推移,它会学会如何转弯、避开障碍物,并逐渐变得越来越擅长在赛道上驾驶。这种学习过程类似于我们学习新技能或游戏一样,通过不断尝试,我们变得越来越熟练。
总结一下,强化学习是一种让智能体通过与环境交互,并根据奖励和惩罚来学习优化策略的机器学习方法。类似于训练一只聪明的小宠物在陌生的游戏世界中变得越来越好。强化学习的目标就是获得最多的累计奖励。

3.5 总结

相关文章:
机器学习---概述(一)
文章目录 1.人工智能、机器学习、深度学习2.机器学习的工作流程2.1 获取数据集2.2 数据基本处理2.3 特征工程2.3.1 特征提取2.3.2 特征预处理2.3.3 特征降维 2.4 机器学习2.5 模型评估 3.机器学习的算法分类3.1 监督学习3.1.1 回归问题3.1.2 分类问题 3.2 无监督学习3.3 半监督…...
概念解析 | AutoFed:面向异构数据的联邦多模态自动驾驶的学习框架
AutoFed:面向异构数据的联邦多模态自动驾驶的学习框架 注1:本文系“概念解析”系列之一,致力于简洁清晰地解释、辨析复杂而专业的概念。本次辨析的概念是:面向异构数据的联邦学习在自动驾驶中的应用。 参考文献:Zheng T, Li A, Chen Z, et al. AutoFed: Heterogeneity-Aware F…...
vue3+uniapp自定义tabbar
首先把tabbar中的元素写在一个list中用v-for进行渲染 用一个interface进行定义接口,这样别人在review你的代码就可以清晰知道你的tabbar包含什么元素。 利用typescript特性进行类型定义,可以省去很多麻烦 import { reactive } from "vue" imp…...
stable diffusion webui 安装
安装环境:cuda10.2-cudnn8-devel-ubuntu18.04 torchtorchvision:[pytorch]pytorch官方安装法_torch1.13.1cu117_FL1623863129的博客-CSDN博客 error:RuntimeError: Couldnt determine Stable Diffusions hash: 69ae4b35e0a0f6ee1af8bb9a5d0016ccb27e36dc. 解决方法…...
csdn文章编辑器必备语法备用
前言 本文是为了记录csdn文章编辑器的必备语法,为写作小白提供更详细的写作规范技巧 csdn的质量分查询地址:质量分查询 这里的跳转链接,可以使用ctrlshift L 来输入链接 亦可以使用 链接: link. 🚀🚀🚀 &a…...
机器学习鲁棒性笔记
鲁棒性(Robustness)在统计学和数据分析中是一个重要的概念。它指的是某个统计方法或模型对于异常值或偏离数据集正常分布的情况的敏感程度。一个鲁棒性较好的方法能够在存在异常值或数据分布不符合假设的情况下依然给出可靠的结果,而不会被极…...
ubuntu 有 1 个软件包没有被完全安装或卸载
ubuntu 有 1 个软件包没有被完全安装或卸载,安装时出现问题,一直卡在 rti-connext-dds-5.3.1 安装问题上。 下面是我安装 sqlite3 出现的问题: sukaiG7-7500:~/1/111/workspace_ros_car_noetic$ sudo apt-get install sqlite3 正在读取软件…...
【QT调用ST-link-使用QT编写程序-调用ST-LINK_CLI.exe-烧写STM32F4xxx-基础样例】
【QT结合ST-link,使用QT编写程序,调用ST-LINK_CLI.exe,烧写STM32F4xxx-基础样例】 1、前言2、实验环境3、先前了解-自我总结4、实验过程(0)硬件连接与供电(1)安装&使用STM32 ST-LINK Utility࿰…...
高并发下的Java项目解决方案
高并发下的Java项目解决方案 在当今的互联网时代,高并发是Java项目在设计和开发过程中必须要考虑的重要因素之一。本文将详细介绍如何在Java项目中处理高并发的问题,并提供具体的解决方案。我们将主要讨论四个主要的主题:服务器扩展…...
华为推出手机系统云翻新服务:什么是云翻新?如何使用?
华为手机系统云翻新是华为推出的一项功能,旨在通过云服务提供系统翻新的服务。它可以帮助用户对手机的系统进行优化和更新,以提高手机的性能和流畅度。具体而言,华为手机系统云翻新功能提供了免费的云空间,用户可以将手机中的系统…...
修改时间和创建时间的设计问题
记录一次 在django框架开发中遇到问题: 想要的逻辑: 当在保存数据时,create_time字段只会在新建数据时被设置为当前时间,并且之后不会再修改,而modify_time字段在每次保存数据时都会被设置为当前时间也可以为空&…...
CentOS 搭建 Harbor 镜像仓库(图文详解)
本文目录 1. 下载 Harbor 安装包2. 解压3. 修改配置文件4. 安装 Harbor5. 修改 docker 配置6. docker 登录方式7. 访问 Harbor Web 界面8. 创建证书9. 生成证书10. 更新配置11. 网页登录 说明:在搭建 Harbor 镜像仓库之前,虚拟机要先安装 docker 和 dock…...
【云原生】k8s组件架构介绍与K8s最新版部署
个人主页:征服bug-CSDN博客 kubernetes专栏:kubernetes_征服bug的博客-CSDN博客 目录 1 集群组件 1.1 控制平面组件(Control Plane Components) 1.2 Node 组件 1.3 插件 (Addons) 2 集群架构详细 3 集群搭建[重点] 3.1 mi…...
你真的了解什么是生成式AI吗?
最近正好有这样的机会,让我给一群非技术人士介绍生成式AI,忙忙碌碌了一阵子,结果发现受众还是未能理解什么是生成式AI,到底和之前的AI有什么区别。因此希望此篇能够帮助普通人真正理解生成式AI,有个直观印象。 人工智…...
Linux--高级IO
高级IO 1. 五种IO模型 阻塞IO:在内核将数据准备好之前,系统调用会一直等待。 所有的套接字,默认都是阻塞方式。阻塞IO是最常见的IO模型。 非阻塞IO:如果内核还未将数据准备好,系统调用仍然会直接返回,并…...
【C# 基础精讲】C# 开发环境搭建(Visual Studio等)
安装C#开发环境是开始学习和使用C#编程的第一步。目前,最常用的C#开发环境是Microsoft Visual Studio,它是一套强大的集成开发环境(IDE),提供了丰富的工具和功能,使开发C#应用程序变得更加便捷。以下是安装…...
谷粒商城第九天-解决商品品牌问题以及前后端使用检验框架检验参数
目录 一、总述 二、商品分类问题 三、前端检验 四、后端检验 五、总结 一、总述 在完成完商品分类的时候,后来测试的时候还是发现了一些问题,现在将其进行解决,问题如下: 1. 取消显示的时候,如果取消了显示&…...
Java8函数式接口
在工作中我需要,我需要递归处理复杂嵌套的JSON字符串,然后处理方法有多种,为了代码通用性,我想要把处理方法当作参数,传入到函数中,然后根据不同的处理方法处理字符串。通过查资料得知,可以使用…...
.Net6 Web Core API --- Autofac -- AOP
目录 一、AOP 封装 二、类拦截 案例 三、接口拦截器 案例 AOP拦截器 可开启 类拦截器 和 接口拦截器 类拦截器 --- 只有方法标注 virtual 标识才会启动 接口拦截器 --- 所有实现接口的方法都会启动 一、AOP 封装 // 在 Program.cs 配置 builder.AddAOPExt();//自定义 A…...
RocketMQ基本概念和高级原理
基础概念 消息模型 RocketMQ 主要由 Producer、Broker、Consumer 三部分组成,其中 Producer 负责生产消息,Consumer 负责消费消息,Broker 负责存储消息。Broker 在实际部署过程中对应一台服务器,每个 Broker 可以存储多个 Topic…...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
visual studio 2022更改主题为深色
visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中,选择 环境 -> 常规 ,将其中的颜色主题改成深色 点击确定,更改完成...
服务器硬防的应用场景都有哪些?
服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)
1.获取 authorizationCode: 2.利用 authorizationCode 获取 accessToken:文档中心 3.获取手机:文档中心 4.获取昵称头像:文档中心 首先创建 request 若要获取手机号,scope必填 phone,permissions 必填 …...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
LeetCode - 199. 二叉树的右视图
题目 199. 二叉树的右视图 - 力扣(LeetCode) 思路 右视图是指从树的右侧看,对于每一层,只能看到该层最右边的节点。实现思路是: 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...
Java编程之桥接模式
定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...
DingDing机器人群消息推送
文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人,点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置,详见说明文档 成功后,记录Webhook 2 API文档说明 点击设置说明 查看自…...
Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
