机器学习基本概念介绍 2023

笔记来源于:

https://www.youtube.com/watch?v=phQK8xZpgoU&t=172s

https://www.youtube.com/watch?v=XLyPFnephpY&t=645s

Machine/Deep Learning

机器学习概况来说,让机器具备自动找函式的能力 (Machine Learning 约等于 Looking for function)

三种机器学习: 回归,分类,生成式学习

函数输出来进行分类

1、 回归: 韩式的输出是一个数值

例子:预测明天的PM2.5值

2、分类:函式的输出是一个类别(选择题)

例子:email过滤垃圾邮件,让机器做一个选择题

输入是邮件,输出是垃圾邮件/不是垃圾邮件

机器学习有一个更困难的问题: 结构化学习(Structured Learning),让机器生成有结构的物件,例如影像,文字,又叫生成式学习(Generative Learning)

结构化学习,生成式学习是一门很难的技术,不知道什么时候才能达到生成式学习

不知道什么时候才能到达暗黑大陆

ChatGPT是哪一类呢?

chatgpt实际做的事情: 文字接龙,模型解的是分类的问题

使用者感受到的功能: 一个字一个字生成,可能感受到的是生成式学习

实际上,chatgpt要解的是生成式学习这个问题做下简化,拆解成多个分类问题

生成式学习有很多个策略,有哪些?

机器学习就是让机器找一个函式,那机器怎么找?

0

归纳成三个步骤,比较好理解

前置作业: 决定要找什么样的函式,这个和技术无关,取决于你要做什么样的应用

例子: 宝可梦,提升战斗力,或者判断是否是宝可梦

1、 设定范围

找出候选函数的集合,就是model

深度学习中,类神经网络的结构,例如CNN,RNN,Transformer等,指的就是不同的函式集合

0

为什么类神经网络的结构就是一个候选函式的集合?

视频解析: https://www.youtube.com/watch?v=Dr-WRlEFefw

参考资料:https://ruanyifeng.com/blog/2017/07/neural-network.html

近年来,计算机视觉慢慢由CNN转向transform的趋势

0

step1: 这个function其实就是一个Neural network

我们把一个Logistic Regression 称之为Neuron,整个称之为Neural Network。 也就是一个Neural network里面包含一大堆的Logistic Regression

每个Logistic Regression,它都有自己的weight和自己的bias,这些weight和bias集合起来,就是这个network的parameter

0

如何去连接不同的Neuron network? Full Connect Feedforward Network

通过不同的连接方式,就得到了不同的structure

0

1*1+(-1)*(-2)再加上bias 1,通过sigmoid function以后,计算得到值

0

一个neural network你可以把它看作是一个function,input是一个vector,output也是一个vector

如果不知道参数 weight和bias,只是定出了这个network的structure,只是定义好了这个network怎么样连接,

它其实就是定义了一个function set,我们可以给这个network设定不同的参数,它就变成了不同的function,把这些可能的function集合起来

我们就得到了一个function set

0

0

为什么我们要设定范围? 为什么我们要选出候选函式的范围? 为什么不把所有的函式纳入进来?

1、标准训练数据下,loss小,但是测试不好,例如是硬记答案,我们要找在各个环境都表现很好的函式。。。

2、 过滤掉不行的函式,所以一开始划定范围,不在这个范围的直接淘汰,这个范围也很有讲究。。。

3、这个范围选择有标准的数学理论支撑,参见视频:

卷积神经网络:https://www.youtube.com/watch?v=OP5HcXJg2Aw

浅谈机器学习原理:https://www.youtube.com/watch?v=_j9MVVcvyZI

0

2、 设定标准

设定一个评估函式好坏的标准

怎么设定一个最好的标准,loss越小,代表函数最好,loss越大,代表不好

这个loss设定怎么来呢? 自己来设置

例子:宝可梦,战斗力

专业人士设置标准答案,根据函式的输出和标准答案的差距,所有的差距加起来代表函式的好坏

0

L(f1)=15 入参为函式,大L也是一个函式,用来计算函式的好坏

怎么样来定义这个loss function?

假设有另外的情况,有部分的数据有标准答案,路边抓过来一些宝可梦,那怎么来评估战斗力?这种情况下

怎么来评估这些没有正确标注的宝可梦的战斗力?

第一步,把宝可梦丢到这个函式里面,如果有返回,则使用

没有的话,我们可以定一些假设,长得像宝可梦的战斗力要一样

(那怎么定义长得像呢? 比如像素的相似度 这个你自己来根据资料来灵活定义)

一个好的函式,可以评估出没有标注过的数据

0

问题: 在训练数据上面评估的loss函数小,但是在训练数据上面不一定好

0

可能的原因是什么呢?

1、 数据量太小

2、有很多其他的理论知识。。。。

怎么解决?

我们在Loss上做一些额外的考量,如Regularization,具体做法原理视频没讲。。。。。。。

3、 达成目标

找出最好的函式,什么叫做好呢? 就是上面的loss,loss越小,函式越好

这个找出函式最佳的方式叫做Optimization

0

0

如何进一步去找最好评估的loss函式,可以学习下这几个视频。。。我没来的及学习

0

最佳化演算法

什么是达成目标比较好的方式?

把最佳化演算法看作一个巨大的funciton,输入是定义好的函式集合 H和评估函式好坏的标准L,

输出一个最好的函式,这个函式在大L里面的值越小越好

怎么评估这个function的好坏?

1、 我们期待这个function能够在同样输入H和L的前提下,越快输出越好

2、有时候需要L(f*)越小越好,但是通常找不出大L最低的function(不清楚为啥。。。。),但是我们期待最佳化演算法找出来的L(f*) 越低越好

0

我们需要先设定 Learning Rate,Batch Size,How to Init,这些就叫做超参数,纯手工去调(技术活)

参数狗。。。 不是类神经网络里面的参数

0

一个好的最佳化演算法,我们期待最佳化演算法对于超参数不敏感。。。。这样就可以用预设值了

--------------------------------------------------------------------------------------------------------------------------------

0

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

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

相关文章

智能优化算法应用:基于飞蛾扑火算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于飞蛾扑火算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于飞蛾扑火算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.飞蛾扑火算法4.实验参数设定5.算法结果6.…

订单系统的设计与海量数据处理实战

概述 订单系统可以说是整个电商系统中最重要的一个子系统,因此订单数据可以算作电商企业最重要的数据资产。订单系统从代码上来说可分为两部分:订单程序和历史订单处理程序。数据存储进行分库分表。 订单系统业务分析 对于一个合格的订单系统&#xf…

如何使用bash写脚本

本章主要介绍如何使用bash写脚本。 了解通配符了解变量了解返回值和数值运算数值的对比判断语句循环语句 grep的用法是“grep 关键字 file”,意思是从file中过滤出含有关键字的行。 例如,grep root /var/log/messages,意思是从/var/log/me…

基于Html+腾讯云播SDK开发的m3u8播放器

周末业余时间在家无事,学习了一下腾讯的云播放sdk,并制作了一个小demo(m3u8播放器),该在线工具是基于腾讯的云播sdk开发的,云播sdk非常牛,可以支持多种播放格式。 预览地址 m3u8player.org 源码…

JVM进程缓存

引言 缓存在日常开发中启动至关重要的作用,由于是存储在内存中,数据的读取速度是非常快的,能大量减少对数据库的访问,减少数据库的压力。我们把缓存分为两类: 分布式缓存,例如Redis: 优点&…

Mybatis之简介、使用操作(安装、XML、SqlSession、映射的SQL语句、命名空间、作用域和生命周期)

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需…

Java项目-瑞吉外卖Day4

实现文件的上传下载: 前端代码: 对文件的操作就是对流的操作。 上传文件的后端代码,需要注意MultipartFile的名字必须与前端相对: 为文件存储位置进行动态设置,配置application.xml 在CommonController中设置属性读…

Nodejs后端+express框架

前言 基于vue3Node后台管理项目,补充nodejs和express相关知识。 文章目录 一,express 1.官网 Express - 基于 Node.js 平台的 web 应用开发框架 - Express中文文档 | Express中文网 2.安装 npm install express --save 二、MongoDB 特点 非关…

uniapp 蓝牙小程序

在 uni-app 中开发蓝牙相关的小程序涉及到使用 uni-app 提供的蓝牙 API。uni-app 为多端开发提供了统一的 API,这意味着你编写的代码可以在不同的平台上运行,包括微信小程序。 以下是实现蓝牙功能的基本步骤和代码示例: 1. 开启蓝牙适配器 …

java之SpringBoot开发实用篇

MENU SpringBoot开发实用篇KF-1.热部署KF-1-1.手动启动热部署KF-1-2.自动启动热部署KF-1-3.参与热部署监控的文件范围配置KF-1-4.关闭热部署 KF-2.配置高级KF-2-1.ConfigurationPropertiesKF-2-2.宽松绑定/松散绑定KF-2-3.常用计量单位绑定KF-2-4.校验KF-2-5.数据类型转换 KF-3…

【头歌系统数据库实验】实验8 SQL的复杂多表查询-2

目录 第1关:基于派生表查询每个队员解答中超过他平均memory的user_id及题目编号problem_id 第2关:用ANY/ALL实现查询2019级选手(user_id前4位为2019)满足比2020级其中一个选手注册时间早即可的选手 第3关:用聚集查询…

python zblog API实现类似XMLRPC/发布文章

我发现python对Zblog的XML发布并不友好,虽然也有对应的模块,但是远远没有XPCRPC更直接方便,但是使用xmlRpc是直接给发布文章带来了不小的便利,但是对系统也并不友好,但是zblog也开放了Api,但是干部子弟不乐…

UE小:物品拼装功能

蓝图B1的实现步骤: 获取玩家控制器和视角:首先获取玩家控制器,然后使用Deproject Screen to World节点将屏幕上的鼠标位置转换为世界空间中的一条射线。 射线检测:使用Line Trace by Channel或Line Trace for Objects节点发射射线…

深度学习测试流程

深度学习模型测试的功能旨在验证模型在各种情况下的性能和鲁棒性。以下是深度学习模型测试的主要功能: 性能评估: 测试模型在任务目标上的整体性能,例如分类准确性、回归误差等。评估指标的选择取决于具体的任务类型。 泛化能力:…

《信息技术时代》期刊杂志论文发表投稿

《信息技术时代》期刊收稿方向:通信工程、大数据、计算机、办公自动化、信息或计算机教育、电子技术、系统设计、移动信息、图情信息研究、人工智能、智能技术、信息技术与网络安全等。 刊名:信息技术时代 主管主办单位:深圳湾科技发展有限…

C++笔记之int、size_t、uint8_t、unsigned char*区别

C笔记之int、size_t、uint8_t、unsigned char*区别 code review! 文章目录 C笔记之int、size_t、uint8_t、unsigned char*区别1.ChatGPT第一次查询解释2.ChatGPT第二次查询解释3.分别的使用示例 1.ChatGPT第一次查询解释 size_t、uint8_t 和 int 是编程中使用的不同类型&…

《微信小程序开发从入门到实战》学习四十七

4.4 云函数 4.4.5 云函数的定时触发 如果云函数需要定时执行,可以使用云函数定时触发器。配置了定时触发器,云函数会在相应时间点被自动触发。函数返回结果不会返回调用方 在需要添加触发器的云函数下新建文件config.json。格式如下: &quo…

05-详解调用服务时负载均衡的配置及其原理

负载均衡 负载均衡的原理(通用) LoadBalanced注解用来拦截它所标记的RestTemplate发起的http请求, 底层是利用了一个名为Ribbon的组件来实现负载均衡功能(Cloud高版本已经弃用) LoadBalancerInterceptor的intercept方法会对RestTemplate的请求进行拦截 public class LoadBal…

【Linux】使用Bash和GNU Parallel并行解压缩文件

介绍 在本教程中,我们将学习如何使用Bash脚本和GNU Parallel实现高效并行解压缩多个文件。这种方法在处理大量文件时可以显著加快提取过程。 先决条件 确保系统上已安装以下内容: BashGNU Parallel 你可以使用以下命令在不同Linux系统上安装它们&am…

【数据库】分支与循环函数存储过程

目录 函数 【1】 【2】 【3】❗ 【4】 存储过程 思考&分析 函数 【1】 --(1)定义一个根据学生姓名查询该生学习课程的函数stu_count。 --create function stu_count(sname char(8))--学生姓名 --returns char(12)--学习课程 --begin --…