强化学习与ai黑科技实例
一.强化学习简介和其应用
(1)强化学习,深度学习,有监督,无监督区别与联系。
1)强化学习讨论的核心就是智能机(agent)怎么在复杂,不确定的环境中最大化它能获得的奖励。
2)人工智能包括机器学习,机器学习包括有监督学习,无监督学习(例如聚类算法),深度学习与强化学习。强化学习与深度学习有交集的(即可用深度学习方法搞强化学习),可用强化学习思想训练大模型(基于人类反馈的强化学习,例gpt),让大模型学得更好。强化学习的例子有打纸版,桌面上已出的版就是环境,你可结合环境下一步出什么版(例如人家出一个3,你却出一个王炸(效果也许不好,奖励分不高),你当前环境是最大的,但下一环境你已经没有王炸了,下次人家一个炸,你已经无能为力了),不断环境变化,你的行为决策也将不同,这是不断优化过程,使最后奖励分越高越好。
3)强化学习是每一步都会影响比较大(例如本来向右走是正确的,但你的决策往左走了,下回是不是又要走回来,这样就走更长的路,影响大一点),而强化学习一样本预测错了影响不会那么大,可用其它样本纠正预测对就行。
4)监督学习:有标签数据,直接反馈,预测结果与未来。
无监督学习:无标签,无反馈,寻找数据中隐藏的结构
强化学习:决策过程,奖励机制,学习一系列的行动。
5)常用库stable-baselines3
强化学习中经常用到stable-baselines3,它包括DQN,PPO等算法。
(2)通俗解释强化学习
强化学习就像训练一个智能体(例机器人),刚开始训练啥都不会,他需要不断与环境交互,不断地尝试,慢慢去学习,他需大量的模拟数据来训练。例如一个成年人不断撞玻璃,但他知道目的是从玻璃门进里面去,但刚开始不断撞上玻璃门,这种情况就像小孩的能力,然后不断无数次大量数据进行尝试学习,慢慢变成大人的能力,最后终于进去了。
(3)强化学习的指导依据
不断学习,学习,尝试过程中,我们设置一个目标函数,若做错了就惩罚,若做对了奖励(每一步都会有奖励分,最后这样就可比较选出最优方案),它就不断努力尝试与环境交互,使最终目标函数值越高(奖励越高,惩罚越小)。
(4)应用领域简介
强化学习当前运用比较广,例如主要在无人驾驶,机器人,阿法狗围棋,游戏,智能推荐等领域。是与人工智能最接近的方向,是具身智能。现在强化学习流行应用是具身智能(即机器人),它更接近智能。
(5)强化学习工作流程
1)现在要训练一个智能机(agent),首先它要不断与环境(state)交互,互动目标就是得到下一步的指示(action),而走下一步目标指示后肯定会改变环境(state),继续与环境交互得到新的指示(结合奖励机制来学习要不要这样干?即要不要按这新指示来做?)。这里的奖励机制也是不断训练的模型来的。
2)在计算机眼中,这里的环境就当作由一系列数字组成的矩阵;action是与环境交互后的行为指示,它可以有不同的方向也可有离散或连续型的数据,例如机器人做一个动作,他包括方向与力度的大小。强化学习归根是通过神经网络来训练一个网络,当state输入进来后,怎样输出奖励分高的action,它可不是分类或回归任务,强化学习是个会决策的网络。
深度学习是据输入内容(例图像)进行提特征并训练,给定标签,根据损失计算更新多个权重参数值。强化学习是输入action与奖励,通过不断与环境(state)交互,更新参数。
(6)深度强化学习(DRL)
1)深度学习有较强的感知能力,但缺少一定的决策能力,所以可从当前环境中获取目标观测信息(环境,即特征),提供当前环境下的状态信息。而强化学习貝有决策能力,对感知问题束手无策,所以可将当前状态信息映射到相应动作,基于预期回报(奖励机制)评判动作价值。把深度学习(感知)与强化学习(决策)结合起来就叫深度强化学习,这样可解决更加复杂系统问题。
2)DRL是端对端的感知与控制系统,有较强通用性,它的学习过程可分为三步:
<1>在每一时刻agent与环境交互得到高维度的观察,并利用深度学习方法感知观察,以得到貝体的状态特征。
<2>基于预期回报(奖励机制)评判各动作价值函数,并通过某种策略将当前状态映射为相应动作。
<3>环境对这动作做出反应,并得到下一观察。不断循环以上过程,最终得到可实现目标的最优策略。
二.PPO算法与公式推导
三.PPO实战
四.CLIP系列
(1)clip
1)clip:contrastive language image pre-training的缩写,它的意思是利用文本的监督信号训练一个迁移能力强的视觉模型。它是微软的openai基于多模态(图像与文本)的预训练模型,虽然没有源码但有预训练模式给我们,我们就可以做很多下游任务了。
clip要解决的问题就是训练时无需给例子与标注,直接zero-shot,类似gpt中的zero-shot,这样泛化能力更强。例如原始预测训练猪,牛,马出来,当现在加多鸡,猴子这些东西出来后,又要重新标注与重训练,这样太麻烦了,所以现在的clip就是要解决这问题。
直接zero-shot得到的结果与resnet在imagenet数据训练后效果一样,据说用4亿配对图像数据与文本(也许是基于英文吧,没中文)进行训练出预训练模型的,不标注直接从互联网爬取的。现在clip下游任务很多了,例如gan,检测,分割,检索<根据文本描述在视频或大量图片中检索出对应图像出来>等都能玩了。
2)如何训练?
图像经过图像编码器(例可用transformer,cnn等)生成图像特征向量,与图像配对的文本经过文本编码器生成文本特征向量,然后所有图像特征向量与所有文本特征向量做余弦相似度计算,计算出来的对角线上的值是正样本(相似度最高),其余的是负样本。这过程也叫对比学习,对比学习就是预测出谁跟自己最相关的(相似度高的正样本,对角线上的就是)。
3)推理过程
给出任意多个提示文本(提示内容质量要好)并转成向量,然后对输入的图像经过编码器(训练好的模型)转成特征向量,再然后计算与每个文本向量间的相似度,找出概率最高的即可。这一过程中输入有图像,经对比学习训练好的图像编码器和提示的多个文本。
4)合理的提示
<1>一句话来描述
<2>最好与你预测的场景相关
<3>提示得越全面,结果会越好。
(2)action-clip
它也是zero-shot,图像可以,生成视频也行。
(3)clip-event
它不仅是检测,还要推断检测出的东西怎样了?将事件信息与图像结合在一起,并能清晰分出谁干什么?图像人物事件融合在一起。
相关文章:
强化学习与ai黑科技实例
一.强化学习简介和其应用 (1)强化学习,深度学习,有监督,无监督区别与联系。 1)强化学习讨论的核心就是智能机(agent)怎么在复杂,不确定的环境中最大化它能获得的奖励。 2)人工智能包括机器学习,机器学习包括有监督学习,无监督学习(例如聚类…...
《TikTok归来:机遇与挑战并存》
TikTok 回归:波折中的 “重生” 在全球社交媒体的版图中,TikTok 的存在无疑是一颗璀璨的明星。它以独特的短视频形式、强大的算法推荐以及丰富多样的内容,迅速风靡全球,吸引了数以亿计的用户。然而,其发展并非一帆风顺…...
Rust语言的正则表达式
Rust语言的正则表达式 正则表达式(Regular Expressions,简称Regex)是一种强大的文本处理工具,广泛应用于字符串的搜索、匹配、替换和解析。在Rust语言中,正则表达式的支持既高效又功能强大,非常适合开发者…...
三维扫描赋能文化:蔡司3D扫描仪让木质文化遗产焕发新生-沪敖3D
挪威文化历史博物馆在其修复工作中融入现代3D扫描技术,让数百年的历史焕发新生。 文化历史博物馆的工作 文化历史博物馆是奥斯陆大学的一个院系。凭借其在文化历史管理、研究和传播方面的丰富专业知识,该博物馆被誉为挪威博物馆研究领域的领先机构。馆…...
c# PDF文件合并工具
界面 主要用于发票PDF文件的合并。经常出差要报销的很有用。 代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Drawing; using System.IO; using System.Linq; using System…...
【16届蓝桥杯寒假刷题营】第1期DAY5
5.依依的询问最小值 - 蓝桥云课 问题描述 依依有个长度为 n 的序列 a,下标从 1 开始。 她有 m 次查询操作,每次她会查询下标区间在 [li,ri] 的 a 中元素和。她想知道你可以重新排序序列 a,使得这 m 次查询的总和最小。 求你求出 m 次…...
.NET周刊【1月第1期 2025-01-05】
国内文章 3款.NET开源、功能强大的通讯调试工具,效率提升利器! https://www.cnblogs.com/Can-daydayup/p/18631410 本文介绍了三款功能强大的.NET开源通讯调试工具,旨在提高调试效率。这些工具包括LLCOM,提供串口调试和自动化处…...
(7)(7.2) 围栏
文章目录 前言 1 通用设置 2 围栏类型 3 破坏栅栏行动 4 使用 RC 通道辅助开关启用栅栏 5 自动高度规避 6 在任务规划器中启用围栏 7 用于遥控飞行训练 8 MAVLink 支持 前言 ArduPilot 支持基于本机的圆柱形(“TinCan”)和多边形和/或圆柱形、…...
1166 Summit (25)
A summit (峰会) is a meeting of heads of state or government. Arranging the rest areas for the summit is not a simple job. The ideal arrangement of one area is to invite those heads so that everyone is a direct friend of everyone. Now given a set of tenta…...
linux_socket
udp 通信 server #include <iostream> #include <arpa/inet.h> #include <unistd.h> #include <cstring>using namespace std;#define UPORT 12511int main(){int sock socket(AF_INET, SOCK_DGRAM, 0); // 创建一个UDP套接字if (sock -1) {cout&…...
Linux探秘坊-------3.开发工具详解(2)
1.动静态库和动静态链接(操作) 静态库是指编译链接时,把库⽂件的代码全部加⼊到可执⾏⽂件中,因此⽣成的⽂件 ⽐较⼤,但在运⾏时也就不再需要库⽂件了。其后缀名⼀般为“.a” 动态库与之相反,在编译链接时并 没有把库⽂件的代码加⼊到可执⾏⽂件中 ,⽽…...
Mysql InnoDB B+Tree是什么?
“mysql中常用的数据库搜索引擎InnoDB,其索引通过BTree的方式进行构建。” 实在想不起来BTree是怎么一回事了。以点带线,将涉及到的数据结构一起复习一下。 文章目录 数据结构定义红黑树定义使命 BTree定义使命 BTree定义 InnoDB BTree 旋转与调整二叉排序树插入删…...
C语言进阶习题【1】指针和数组(1)——一维数组
1. 数组名的意义: sizeof(数组名),这里的数组名表示整个数组,计算的是整个数组的大小。&数组名,这里的数组名表示整个数组,取出的是整个数组的地址。除此之外所有的数组名都表示首元素的地址。(一维数…...
2024:成长、创作与平衡的年度全景回顾
文章目录 1.前言2.突破自我:2024年个人成长与关键突破3.创作历程:从构想到落笔,2024年的文字旅程4.生活与学业的双重奏:如何平衡博客事业与个人生活5.每一步都是前行:2024年度的挑战与收获6.总结 1.前言 回首2024年&a…...
【Linux】网络基础探索:开启你的网络之旅
🌈 个人主页:Zfox_ 🔥 系列专栏:Linux 目录 一:🔥 计算机网络背景 🦋 1-1 网络发展 二:🔥 初识协议 🦋 2-1 协议分层协议分层 vs. 软件分层 🦋 2-…...
function isBulkReadStatement, file SQLiteDatabaseTracking.cpp
一问题:Xcode16.0运行在iPhone16/ios18.0 以上发生闪退, 闪退在 YYCache–>YYKVStorage 文件内。 以上删除保以下错误: function isBulkReadStatement, file SQLiteDatabaseTracking.cpp 解决方案: 找到YYKVStorage文件中_d…...
React 中hooks之useTransition使用总结
目录 概述基本用法使用场景最佳实践注意事项 概述 什么是 useTransition? useTransition 是 React 18 引入的新 Hook,用于标记非紧急的状态更新。它允许组件在状态转换期间保持响应,通过将某些更新标记为"过渡"来推迟它们的渲染。 主要特…...
leetcode 3097. 或值至少为 K 的最短子数组 II 中等
给你一个 非负 整数数组 nums 和一个整数 k 。 如果一个数组中所有元素的按位或运算 OR 的值 至少 为 k ,那么我们称这个数组是 特别的 。 请你返回 nums 中 最短特别非空 子数组 的长度,如果特别子数组不存在,那么返回 -1 。 示例 1&…...
C# OpenCV机器视觉:特征匹配 “灵魂伴侣”
在一个阳光仿佛被施了魔法,欢快得直蹦跶的早晨,阿强像个即将踏上神秘寻宝之旅的探险家,一屁股墩在实验室那张堆满各种奇奇怪怪小玩意儿的桌前。桌上,零件、线路、半成品设备乱成一团,唯有他那宝贝电脑屏幕散发着清冷又…...
DDD - 整洁架构_解决技术设计困局
文章目录 Pre如何落地 DDD底层技术的更迭 整洁架构的设计主动适配器/北向适配器被动适配器/南向适配器 整洁架构的落地总结 Pre DDD - 软件退化原因及案例分析 DDD - 如何运用 DDD 进行软件设计 DDD - 如何运用 DDD 进行数据库设计 DDD - 服务、实体与值对象的两种设计思路…...
金融项目实战 07|Python实现接口自动化——连接数据库和数据清洗、测试报告、持续集成
目录 一、投资模块(投资接口投资业务) 二、连接数据库封装 和 清洗数据 1、连接数据库 2、数据清洗 4、调用 三、批量执行测试用例 并 生成测试报告 四、持续集成 1、代码上传gitee 2、Jenkin持续集成 一、投资模块(投资接口投资业务…...
Ceph与RAID在存储中的协同工作过程
本文将结合架构图,详细讲解Ceph与RAID如何在存储环境中相互配合,共同提供高效且可靠的存储服务。 架构概述 从上图中可以看到,Ceph的架构主要分为四个层次: 客户端和服务接口层:这一层包括客户端访问存储应用的接口…...
《重生到现代之从零开始的C++生活》—— 类和对象2
类的默认成员函数 默认成员函数就是用户没有显示实现,编译器会自动生成的成员函数,一个类会默认生成6个成员函数 构造函数 构造函数时特殊的成员函数,构造函数的初始化对象 函数名与类名相同 没有返回值 对象实例化的时候胡自动调用构造…...
MFC 使用 32位带Alpha通道的位图
最近需要做一个MFC界面上的图片,众所周知,MFC 好像只支持 bmp 格式的! 先看我的原始24位图片,RGB 三个颜色各占8位 (256色), 所以是24位。 如果放到MFC界面上,是这个很丑的效果 它是一个正方形图片,周围的白色可以看见。 解下来,进入今天的主题: 32位带 Alpha 通…...
QT:子控件VLC播放视频时,父控件无法截取鼠标事件
具体来说: 反复验证,结论正确。只要是播放区(即传递给VLC的窗口区域),就无法点击。 比如WidgetA,新建一个WidgetB,设置位置时留有一点边框。这个时候WidgetA的边框区是能收到鼠标事件的。 这…...
力扣 739. 每日温度
🔗 https://leetcode.cn/problems/daily-temperatures 题目 给定一个数组,表示每天的天气返回一个数组,index i 表示几天后比当前的温度要高,没有则为 0 思路 维护一个单调递减栈,若当前的温度比栈顶大,…...
蓝桥杯 阶乘的和(C++完整代码+详细分析)
题目描述 原题链接 阶乘的和 问题描述 给定 n 个数 Ai,问能满足 m! 为 ∑(Ai!) 的因数的最大的 m 是多少。其中 m! 表示 m 的阶乘,即 123⋯m。 输入格式 输入的第一行包含一个整数 n。 第二行包含 n 个整数,分别表示 Ai,相…...
OpenAI进军实体机器人:GPT赋能的智能未来
近年来,人工智能技术飞速发展,深刻地改变着我们的生活。而OpenAI作为人工智能领域的领军者,其最新动作更是引人注目:进军实体机器人领域!这不仅标志着人工智能技术应用场景的重大拓展,也预示着未来智能机器…...
【Python运维】用Python管理Docker容器:从`docker-py`到自动化部署的全面指南
《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 在现代软件开发和运维过程中,Docker容器化技术因其高效、轻量和可移植性而被广泛应用。Python作为一种灵活且功能强大的编程语言,通过doc…...
【机器学习实战入门项目】MNIST数字分类机器学习项目
Python 深度学习项目:手写数字识别 为了使机器更加智能,开发者们正在深入研究机器学习和深度学习技术。人类通过不断练习和重复来学习执行某项任务,从而记住如何完成这些任务。然后,大脑中的神经元会自动触发,他们能够…...
【统计信号处理基础——估计与检测理论】Vol1.Ch1 引言
文章目录 1. 信号处理中的估计2. 估计的数学问题3. 估计量性能评估习题1.11.21.31.41.5 1. 信号处理中的估计 从离散时间波形或一组数据集中提取参数的问题。我们有 N N N点数据集 { x [ 0 ] , x [ 1 ] , ⋯ , x [ N − 1 ] } \{x[0],x[1],\cdots,x[N-1]\} {x[0],x[1],⋯,x[N−…...
Linux 存储设备和 Ventoy 启动盘制作指南
一、Linux 存储设备基础知识 1. 设备路径(/dev) 设备路径是 Linux 系统中物理存储设备的唯一标识,类似设备的"身份证号"。 命名规则解析 /dev/sda: /dev:device(设备)的缩写&…...
第14章:Python TDD应对货币类开发变化(一)
写在前面 这本书是我们老板推荐过的,我在《价值心法》的推荐书单里也看到了它。用了一段时间 Cursor 软件后,我突然思考,对于测试开发工程师来说,什么才更有价值呢?如何让 AI 工具更好地辅助自己写代码,或许…...
网络协议入门:OSI模型与TCP/IP栈
在网络通信的世界中,数据从一台设备传输到另一台设备,需要遵循一系列规则,这些规则统称为网络协议。OSI模型和TCP/IP协议栈作为网络通信的基石,帮助我们理解数据传输的全流程。这篇文章将深入解析它们的结构、功能和实际应用&…...
pthread_exit函数
pthread_exit 是 POSIX 线程库(pthread)中的一个函数,用于显式地终止调用线程。与 exit 函数不同,pthread_exit 仅影响调用它的线程,而不是整个进程。使用 pthread_exit 可以确保线程在退出时能够正确地释放线程相关的…...
从语音识别到图像识别:AI如何“看”和“听”
引言 随着人工智能技术的不断进步,AI的“听”和“看”能力正变得越来越强大。从语音识别到图像识别,AI不仅能够通过声音与我们互动,还能通过视觉理解和分析周围的世界。这些技术不仅改变了我们与机器的交互方式,也在各行各业中带…...
UML-对象图(Object Diagram)
定义 在UML(统一建模语言)中,对象图用于描述在某一时刻,一组对象以及它们之间关系的图形。它是系统详细状态在某一时刻的快照,常用于表示复杂的类图的一个实例。关联、依赖和继承是对象图中常见的三种关系,下面将对这三种关系进行详细说明,并阐述它们之间的区别。 Pla…...
Pytorch - YOLOv11自定义资料训练
►前言 本篇将讲解目前最新推出的YOLOv11搭配Roboflow进行自定义资料标注训练流程,透过Colab上进行实作说明,使大家能够容易的了解YOLOv11的使用。 ►YOLO框架下载与导入 ►Roboflow的资料收集与标注 进行自定义资料集建置与上传 透过Roboflow工具进行…...
大模型GUI系列论文阅读 DAY2续2:《使用指令微调基础模型的多模态网页导航》
摘要 自主网页导航的进展一直受到以下因素的阻碍: 依赖于数十亿次的探索性交互(通常采用在线强化学习),依赖于特定领域的模型设计,难以利用丰富的跨领域数据进行泛化。 在本研究中,我们探讨了基于视觉-语…...
Docker 搭建mysql 连接超时问题,xxl-job启动mysql连接报错,禁用dns
1.本地连接Navicat报错信息,猜测是navicat默认连接超时导致的,后面换成idea一个插件虽然慢但连接上了 2013 - Lost connection to MySQL server at reading initial communication packet 2.启动xxl-job会报错,网上有人mysql驱动与数据库不匹…...
SSM课设-学生管理系统
【课设者】SSM课设-学生管理系统 技术栈: 后端: SpringSpringMVCMybatisMySQLJSP 前端: HtmlCssJavaScriptEasyUIAjax 功能: 学生端: 登陆 学生信息管理 个人信息管理 老师端: 多了教师信息管理 管理员端: 多了班级信息管理 多了年级信息管理 多了系统用户管理...
JavaScript笔记APIs篇03——DOM节点Bom操作本地存储正则表达式
黑马程序员视频地址:黑马程序员前端JavaScript入门到精通全套视频教程https://www.bilibili.com/video/BV1Y84y1L7Nn?vd_source0a2d366696f87e241adc64419bf12cab&spm_id_from333.788.videopod.episodes&p78https://www.bilibili.com/video/BV1Y84y1L7Nn?…...
JS 有哪些模块化规范
一、CommonJS 规范 1. 主要应用场景 主要用于服务器端开发,尤其是 Node.js 环境。 2. 核心思想 使用 require() 函数来引入模块,使用 module.exports 或 exports 对象来导出模块中的内容。 // math.js 模块const add (a, b) > a b;const subtr…...
摘录人工智能面试笔试题汇总
一、人工智能面试问答题汇总 1、什么是人工智能? 人工智能(AI)是一种计算机科学,它增强了像人类一样工作和反应的智能机器。机器模拟人类智能行为的能力。人工智能通常用于各种应用,如决策、语音识别、感知、认知能力…...
【PCIe 总线及设备入门学习专栏 6.1 -- PCIe MCTP】
文章目录 1 什么是 MCTP?2 MCTP 消息在 PCIe 中的传输特点3 PCIe MCTP 的局限性(1) 出站(Outbound)MCTP 消息分解的限制(2) 入站(Inbound)MCTP 消息组装的限制4 MCTP 消息的实际使用流程发送端处理流程接收端处理流程5 实际使用场景例 1:管理命令传输例 2:监控数据报告例…...
RabbitMQ集群安装rabbitmq_delayed_message_exchange
1、单节点安装rabbitmq安装延迟队列 安装延迟队列rabbitmq_delayed_message_exchange可以参考这个文章: rabbitmq安装延迟队列-CSDN博客 2、集群安装rabbitmq_delayed_message_exchange 在第二个节点 join_cluster 之后,start_app 就会报错了 (CaseC…...
doris 2.1 Queries Acceleration-Hints 学习笔记
1 Hint Classification 1.1 Leading Hint:Specifies the join order according to the order provided in the leading hint. 1.2 Ordered Hint:A specific type of leading hint that specifies the join order as the original text sequence. 1.3 Distribute Hint:Speci…...
【网络协议】【http】【https】TLS解决了HTTP存在的问题-加密通信+摘要,数字签名+CA证书
【网络协议】【http】【https】TLS解决了HTTP存在的问题-加密通信摘要数字签名CA证书 ps:TLS前期发送的密码套件里面主要就是约定:密钥交换算法,签名算法,对称加密算法,摘要算法 1加密通信 一般选择非对称加密交换密钥 对称加密…...
某讯一面,感觉问Redis的难度不是很大
前不久,有位朋友去某讯面试,他说被问到了很多关于 Redis 的问题,比如为什么用 Redis 作为 MySQL 的缓存?Redis 中大量 key 集中过期怎么办?如何保证缓存和数据库数据的一致性?我将它们整理出来,…...
【json_object】mysql中json_object函数过长,显示不全
问题:json只显示部分 解决: SET GLOBAL group_concat_max_len 1000000; -- 设置为1MB,根据需要调整如果当前在navicat上修改,只有效本次连接和后续会话,重新连接还是会恢复默认值1024 在my.ini配置文件中新增或者修…...