机器学习中的关键组件
机器学习中的关键组件
数据
每个数据集由一个个样本组成,大多时候,它们遵循独立同分布。样本有时也叫作数据点或数据实例,通常每个样本由一组称为特征或协变量的属性组成。机器学习会根据这些属性进行预测,预测得到的称为标签或目标。
目标函数
- 在机器学习中,我们需要定义对模型的优劣程度的度量,这个度量在大多数情况下是“可视化”的,这被称为目标函数。我们通常定义一个目标函数,并希望优化它到最小值。
- 当任务在试图预测数值时,最常见的损失函数是平方误差,即预测值与实际值之差的平方。当试图解决分类问题时,最常见的目标函数是最小化错误率,错误率即预测与实际情况不符的样本比率。有些目标函数(平方误差)很容易被优化,有些目标函数(错误率)由于不可微性或其他复杂性难以直接优化。
- 通常,损失函数是根据模型参数定义的,并取决于数据集。在一个数据集上,我们可以通过最小化总损失来学习模型参数的最佳值。该数据集由一些为训练而采集的样本组成,称为训练数据集或训练集。
- 可用数据集通常可以分为两部分:训练数据集用于拟合模型参数,测试数据集用于评估拟合的模型。然后我们观察模型在这两部分数据集上的性能。当一个模型在训练集上表现良好,但不能推广到测试集时,这个模型被称为过拟合的。
优化算法
深度学习中,大多数流行的优化算法通常基于一种基本方法--梯度下降
机器学习分类及其问题
监督学习
监督学习擅长在“给定输入特征”的情况下预测标签。每个“特征-标签”对都称为一个样本。即使标签是未知的,样本也可以指代输入特征。我们的目标是生成一个模型,该模型能够将任何输入特征映射到标签(即预测)
监督学习在训练参数时,我们为模型提供了一个数据集,其中每个样本都有真实的标签。在给定一组特定的可用数据的情况下,估计未知事物的概率。
监督学习的学习过程
- 从已知大量数据样本中随机选取一个子集,为每个样本获取真实标签。有时,这些样本已有标签;有时,这些样本可能需要被人工标注。这些输入和相应标签一起构成了训练数据集。
- 选择有监督的学习算法,它将训练数据集作为输入,并输出一个“已完成学习的模型”
- 将之前没有见过的样本特征放到这个“已完成学习的模型”中,使用模型的输出作为相应标签的预测
监督学习的模型
回归
回归问题是由输出决定的,此时的目标是生成一个模型,使它的预测值非常接近实际标签值。
分类
分类问题希望模型能够预测样本属于哪个类别,其正式称为类。
分类器可能会输出图像是猫的概率为0.9,也就是分类器确定图像描绘的是一只猫的概率为90%。预测类别的概率传达了模型的不确定性。
交叉熵
分类问题的常见损失函数
层次分类
人们宁愿错误地归入一个相关的类别,也不愿错误地归入一个不相关的类别,这通常被称为层次分类
标注问题
多标签分类
学习预测不相互排斥的类别问题
搜索
有时,我们不仅仅希望输出一个类别或一个实值。在信息检索领域,我们希望对一组项目进行排序
推荐系统
目标是向特定用户进行“个性化”推荐
序列学习
标记和解析
用属性注释文本序列;通常,目标是基于结构和语法假设对文本进行分解,以获得一些注释。
自动语音识别
在语音识别中,输入序列是说话人的录音,输出序列是说话人所说内容的文本记录。
文本到语音
输入是文本,输出则是音频文件
机器翻译
在语音识别中,输入和输出的出现顺序基本相同。而在机器翻译中,颠倒输入和输出的顺序非常重要。机器翻译是输入和输出的数量以及相应序列的顺序大都不会相同。
无监督学习
数据中不含有“目标”的机器学习问题通常被称为“无监督学习”
无监督学习主要解决的问题
①聚类问题;②主成分分析问题;③因果关系和概率图模型;
④生成对抗网络(提供一种合成数据的方法)
与环境互动
无论是监督学习还是无监督学习,我们都会预先获取大量数据,然后启动模型,不再与环境交互。所有的学习都是在算法与环境断开后进行的,被称为离线学习
离线学习的优点:我们可以孤立地进行模式识别,而不必分心于其他问题
缺点:能解决的问题相当有限
强化学习
智能体在一系列的时间步骤上与环境交互。在每个特定时间点,智能体从环境接受一些观测,并且必须选择一个动作,然后通过某种机制(执行器)将其传输回环境,最终智能体从环境中获得奖励。此后,新一轮循环开始。

强化学习的目标是产生一个好的策略。强化学习智能体选择的“动作”受策略控制,即一个从环境观测映射到动作的功能。
- 一般来说,智能体只是得到一些奖励。此外,环境甚至可能不会告知是哪些动作导致了奖励
- 强化学习可能还必须处理部分可观测性问题。也就是说,当前的观测结果可能无法阐述有关当前状态的所有信息
- 智能体的动作会影响后续的观测,而奖励只与所选的动作相对应。环境可以是完整观测到的,也可以是部分观测到的
- 当环境可被完全观测到时,强化学习问题被称为马尔可夫决策过程
- 当状态不依赖之前的动作时,我们称该问题为上下文老虎机
- 当没有状态,只有一组最初未知奖励的可用动作时,这就是经典的多臂老虎机
神经网络的起源
神经网络的核心是当今大多数网络中都可以找到的几个关键原则:
①线性和非线性处理单元的交替,通常称为层
②使用链式规则(反向传播)一次性调整网络中的全部参数
深度学习的发展
深度学习的一个关键优势是,它不仅取代了传统学习管道末端的浅层模型,还取代了劳动密集型的特征工程过程。此外,通过取代大部分特定领域的预处理,深度学习消除了以前分隔计算机视觉、语音识别、自然语言处理、医学信息学和其他应用领域的许多边界,为解决各种问题提供了一套统一的工具
相关文章:
机器学习中的关键组件
机器学习中的关键组件 数据 每个数据集由一个个样本组成,大多时候,它们遵循独立同分布。样本有时也叫作数据点或数据实例,通常每个样本由一组称为特征或协变量的属性组成。机器学习会根据这些属性进行预测,预测得到的称为标签或…...
【JVM】JDBC案例打破双亲委派机制
🐌个人主页: 🐌 叶落闲庭 💨我的专栏:💨 c语言 数据结构 javaEE 操作系统 Redis 石可破也,而不可夺坚;丹可磨也,而不可夺赤。 JVM 打破双亲委派机制(JDBC案例…...
每天五分钟计算机视觉:池化层的反向传播
本文重点 卷积神经网络(Convolutional Neural Network,CNN)作为一种强大的深度学习模型,在计算机视觉任务中取得了巨大成功。其中,池化层(Pooling Layer)在卷积层之后起到了信息压缩和特征提取的作用。然而,池化层的反向传播一直以来都是一个相对复杂和深奥的问题。本…...
Docker的安装、基础命令与项目部署
文章目录 前言一、docker安装与MySQL部署1.Linux环境下docker的安装(1)基于CentOS7(2)基于Ubuntu 二、docker基础1.常见命令(1)快速创建一个mysql容器(MySQL得一键安装)。࿰…...
Nodejs和npm的使用方法和教程
Nodejs简介 Node.js 是一个开源和跨平台的 JavaScript 运行时环境。 它几乎是任何类型项目的流行工具! ( 运行环境,是不是很熟悉,对。就是 java JRE,Java 运行时环境) Node.js 在浏览器之外运行 V8 Java…...
机器学习---支持向量机的初步理解
1. SVM的经典解释 改编自支持向量机解释得很好 |字节大小生物学 (bytesizebio.net) 话说,在遥远的从前,有一只贪玩爱搞破坏的妖怪阿布劫持了善良美丽的女主小美,智勇双全 的男主大壮挺身而出,大壮跟随阿布来到了妖怪的住处&…...
【unity实战】Unity实现2D人物双击疾跑
最终效果 前言 我们要实现的功能是双击疾跑,当玩家快速地按下同一个移动键两次时能进入跑步状态 我假设快速按下的定义为0.2秒内,按下同一按键两次 简单的分析一下需求,实现它的关键在于获得按键按下的时间,我们需要知道第一次…...
Spring面试题:(二)基于xml方式的Spring配置
xml配置Bean的常见属性 id属性 name属性 scope属性 lazy-init属性 init-method属性和destroy属性 initializingBean方法 Bean实例化方式 ApplicationContext底层调用BeanFactory创建Bean,BeanFactory可以利用反射机制调用构造方法实例化Bean,也可采用工…...
XR Interaction ToolKit
一、简介 XR Interaction Toolkit是unity官方的XR交互工具包。 官方XRI示例地址:https://github.com/Unity-Technologies/XR-Interaction-Toolkit-Examples 2023.3.14官方博客,XRIT v2.3 https://blog.unity.com/engine-platform/whats-new-in-xr-int…...
spring-boot中实现分片上传文件
一、上传文件基本实现 1、前端效果图展示,这里使用element-ui plus来展示样式效果 2、基础代码如下 <template><div><el-uploadref"uploadRef"class"upload-demo":limit"1":on-change"handleExceed":auto-…...
【ICN综述】信息中心网络隐私安全
ICN基本原理: 信息中心网络也是需要实现在不可信环境下可靠的信息交换和身份认证 信息中心网络采用以数据内容为中心的传输方式代替现有IP 网络中以主机为中心的通信方式,淡化信息数据物理或逻辑位置的重要性,以内容标识为代表实现数据的查找…...
基于STC12C5A60S2系列1T 8051单片机EEPROM应用
基于STC12C5A60S2系列1T 8051单片机EEPROM应用 STC12C5A60S2系列1T 8051单片机管脚图STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式及配置STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式介绍STC12C5A60S2系列1T 8051单片机EEPROM介绍基于STC12C5A60S2系列1T 8051单…...
手撕排序之直接选择排序
前言: 直接选择排序是排序中比较简单的排序,同时也是时间复杂度不是很优的排序。 思想: 本文主要讲解直接选择排序的优化版本。 我们经过一次遍历直接将该数列中最大的和最小的值挑选出来,如果是升序,就将最小的和…...
洛谷 P1359 租用游艇
题目链接 P1359 租用游艇 普及 题目描述 长江游艇俱乐部在长江上设置了 n n n 个游艇出租站 1 , 2 , 3 , . . . , n 1,2,3,...,n 1,2,3,...,n,游客可在这些游艇出租站租用游艇,并在下游的任何一个游艇出租站归还游艇。游艇出租站 i i i 到游艇出租站…...
springboot中没有主清单属性解决办法
在执行一个 spring boot 启动类时,提示 没有主清单属性 一般这个问题是没加 spring-boot-maven-plugin 插件的问题,但是项目中已经加了 <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifa…...
C/C++ static关键字详解(最全解析,static是什么,static如何使用,static的常考面试题)
目录 一、前言 二、static关键字是什么? 三、static关键字修饰的对象是什么? 四、C 语言中的 static 🍎static的C用法 🍉static的重点概念 🍐static修饰局部变量 💦static在修饰局部变量和函数的作用 &a…...
windwos10搭建我的世界服务器,并通过内网穿透实现联机游戏Minecraft
文章目录 1. Java环境搭建2.安装我的世界Minecraft服务3. 启动我的世界服务4.局域网测试连接我的世界服务器5. 安装cpolar内网穿透6. 创建隧道映射内网端口7. 测试公网远程联机8. 配置固定TCP端口地址8.1 保留一个固定tcp地址8.2 配置固定tcp地址 9. 使用固定公网地址远程联机 …...
【实战Flask API项目指南】之七 用JWT进行用户认证与授权
实战Flask API项目指南之 用JWT进行用户认证与授权 本系列文章将带你深入探索实战Flask API项目指南,通过跟随小菜的学习之旅,你将逐步掌握 Flask 在实际项目中的应用。让我们一起踏上这个精彩的学习之旅吧! 前言 当小菜踏入Flask后端开发…...
鸿蒙LiteOs读源码教程+向LiteOS中添加一个简单的基于线程运行时的短作业优先调度策略
【⭐据说点赞收藏的都会收获好运哦👍】 一、鸿蒙Liteos读源码教程 鸿蒙的源码是放在openharmony文件夹下,openharmony下的kernel文件夹存放操作系统内核的相关代码和实现。 内核是操作系统的核心部分,所以像负责:资源管理、任…...
axios的使用与封装详细教程
目录 一、axios使用方式二、axios在main.js配置 一、axios使用方式 在 Spring Boot Vue 的项目中使用 Axios,你需要在 Vue 项目中安装 Axios 库,因为 Axios 是一个前端 JavaScript 库,用于发送 HTTP 请求和处理响应数据,而与 Sp…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...
前端开发面试题总结-JavaScript篇(一)
文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包(Closure)?闭包有什么应用场景和潜在问题?2.解释 JavaScript 的作用域链(Scope Chain) 二、原型与继承3.原型链是什么?如何实现继承&a…...
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...
九天毕昇深度学习平台 | 如何安装库?
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子: 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
comfyui 工作流中 图生视频 如何增加视频的长度到5秒
comfyUI 工作流怎么可以生成更长的视频。除了硬件显存要求之外还有别的方法吗? 在ComfyUI中实现图生视频并延长到5秒,需要结合多个扩展和技巧。以下是完整解决方案: 核心工作流配置(24fps下5秒120帧) #mermaid-svg-yP…...
CppCon 2015 学习:Time Programming Fundamentals
Civil Time 公历时间 特点: 共 6 个字段: Year(年)Month(月)Day(日)Hour(小时)Minute(分钟)Second(秒) 表示…...
基于江科大stm32屏幕驱动,实现OLED多级菜单(动画效果),结构体链表实现(独创源码)
引言 在嵌入式系统中,用户界面的设计往往直接影响到用户体验。本文将以STM32微控制器和OLED显示屏为例,介绍如何实现一个多级菜单系统。该系统支持用户通过按键导航菜单,执行相应操作,并提供平滑的滚动动画效果。 本文设计了一个…...
