chatgpt,神经网络与拥塞控制

news2024/11/23 18:24:47

chatgpt 是一个巨大的带答案的完形填空题库,它可以回答几乎所有的文字类问题,不保证完全正确,但大致正确。它是怎么做到的?

它怎么知道我要问什么,如果它知道我要问什么,那么问题的不同表达形式它也一定知道是同一个意思,比如 “TCP 是什么?”,“TCP 是什么协议?”,“TCP 如何工作?”,… 多一个字,少一个修饰语,即使问题非常简单,问法也是海量,总要有个地方存放这些问题及问题的答案,这个地方在哪?

很遗憾,没有这个地方。因为 chatgpt 采用人的方式而不是计算机的方式被构建。

将数据作为输入,经过数据无关的算法加工,获得输出,这是如今通用的冯诺依曼存储执行计算机的方式,背后的模型就是图灵机。但显然人不是这样思考问题的。

“猫” 这个概念保存在我们大脑的哪个位置,如果确实有这个位置,把这个位置用挖耳勺挖掉,我们就不认识猫了,是这样吗?显然不是。人更像是将信息编码进了大脑结构本身:

  • 猫的外观,叫声第一次通过视觉,听觉进入大脑,激发大脑产生某些结构性变化,当再次看到同样的外观,或听到同样叫声时,这些信息经过结构固化的大脑后会得到一个输出,“这是一只猫”。

人自出生就通过视觉,听觉,触觉不停接收信息,这些信息不停对大脑神经元结构进行塑造,触发它们不停发生变化,所有的记忆由所有神经元状态的集合决定,记忆不是在某处保存了某数据,记忆只是一个状态集。

chatgpt 是一个类似大脑的结构,由数(千)亿神经元组成,每个神经元输出连接其它神经元输入,携若干参数作为输入权重。chatgpt 主动阅读互联网上的文字信息,这些信息触发神经元的权重发生改变,以获取更合理输出。比如当它读到 “浙江温州皮鞋湿” 这句名诗时,它会尝试改变某些神经元权重,使接下来获得 “下雨进水不会胖” 的概率更高,这是个不停 “学习” 的过程。某个时刻,chatgpt 就摆在那里,除错综复杂的神经元结构之外,不存在任何存储数据的地方,此时你问它 “皮鞋没有蹬上” 的下句是什么,它会回答 “露着白袜子”,因为前面那些字经过 chatgpt 的神经元网络后,指向 “露着白袜子” 的概率更高,没有为什么,只因它曾经读到过这句完整的话,它的神经元结构记住了这句话。

所有这一切都是神经元结构决定的。chatgpt 神经元参数的数量与所有文字,词,短语,长句的数量在一个量级,神经元网络规模与训练数据规模如此相似,恰好说明内容被分布式编码在结构中。

这种方式好处多多。

明显的好处是它天然并行化,整个结构没有通路互斥,没有全局变量,不存在某个地方只能有一条执行流通过的情况,因为根本就没有执行流,逻辑全在结构本身。

以此为背景,我觉得 chatgpt 的方式(不仅仅指 chatgpt 本身)非常适合 “记忆调取” 而不是作为工具被使用。拥塞控制就是这类场景的实例。

同一对端之间数据传输是一件屡次发生的事,昨天发生过,前天发生过,且发生时刻就在今天的此时刻。结合人类行为学,背后的事实是网络流量很大程度上相对固定且有规律。比如每个人每天固定时间会有固定行为(比如每晚 10 点 10 分会刷B站),这给了 “学习” 以依据,只要有足够数据训练模型,整个互联网流量画像就能被刻画出来。

传输大模型只需调出曾经生效过的记忆中的传输配置,而不是生成一个新的配置,这与作为工具对数据的加工方式完全不同。人没必要把四则混合运算的结果记在脑子里,但却有必要把尽可能多的动植物的外观气味记在脑子里,大致就是这个意思。拥塞只能避免不能对抗,记住疯猫,野狗,毒虫的外观和气味就是想要避开它们,而不是用 “算法” 对抗它们。

拥塞信号只是通知你善后,不是征求你的处理意见。一旦拥塞实际发生,额外的动作只会弄巧成拙,传输大模型的目标是不让拥塞发生,不产生拥塞信号,也就不需要善后(比如 AIMD 等内生反应式算法,而反应式算法的代价也是内置的,比如周期锯齿,即使 bbr 也有 probertt 锯齿)了。初到一个城市最容易遭遇堵车,随着时间流逝,就不会堵车了,没什么高尚的 “算法”,只是你记住了堵车的时间或路段,绕开了而已。

读书读得多了,遣词造句水平自然就高,自然就会写了,并不是人变聪明了,而是读书使你 “学会了” 很多字词句的固定搭配,段落自然就流出来了。当一个数据传输系统 “学会了” 一小时,一天,一周,… 的每个时刻的链路画像时,它自然就知道使用什么配置参数进行拥塞避免了。

与此相对,别指望启发式闭环算法,滞后反馈的本质决定了这种算法的精度和上限,当未来注定无法预测时,能利用的只有历史。

简单说一下神经网络原理。

神经网络由大量神经元连接而成,每个神经元的输出对应下一个神经元的输入,一个简单的神经元如下:
在这里插入图片描述

它可将一条直线分割为若干部分,每个部分表示一种元特征展现或不展现。

更多的神经元便可刻画多个元特征组合,比如识别平面上某点位于 a,b,…i 中的哪个区域内,如下图所示:
在这里插入图片描述

如果这些区域之间的边界是模糊的,那么输出将会携带概率。

所谓训练就是不断用真实 case 供上述结构来学习,比如 (1,2)->b,(5,1)->e,(1,3.5)->80%b + 20%a,在获得输出的过程中调节神经元激发条件,使其最终获得越来越正确的输出。 学习过程是个对神经元激发条件硬编码的过程。

当完成足够的训练,所有神经元的激发条件均被调节到 “恰到好处”,当你用 (5,1) 作为输入,这个结构会输出 e,虽然这个结构里没有任何地方保存 “(5,1) 对应的区域是 e” 这种信息,但它确实得到了正确答案,就像它亲眼看到了一样。它确实亲眼看过,并记住了。

由简入繁,所有概念,记忆,文字都可抽象成上述对特定区域的识别,比如 “浙江温州皮鞋湿” 对应点 A,那么 “下雨进水不会胖” 这个点就在离 A 非常近的位置,于是 chatgpt 就把这句话拎出来接话了,这并不意味着 chatgpt 理解这两句名诗前后的逻辑联系,事实上作者本人也不理解。

实际操作中,chatgpt 是结合初始上下文一个字一个字递归往外崩的:

  • 输入问题:“浙江温州皮鞋湿”
  • chatgpt 获得了一个可能的 “下一个字”:“抱”,新的输入为:“浙江温州皮鞋湿 抱”
  • chatgpt 获得了一个可能的 “下一个字”:“歉”,新的输入为:“浙江温州皮鞋湿 抱歉”
  • chatgpt 获得了一个可能的 “下一个字”:“,我”,新的输入为:“浙江温州皮鞋湿 抱歉,我”

  • 在这里插入图片描述

“获得一个可能的‘下一个字’” 的方法类似于 “在一个平面上找一个距离已知点最近的点”,如果每一个字,每一个词,每一个常见词组或句子都被表示成平面上的点,chatgpt 的训练过程就是确定所有这些点的位置,让有意义的组合距离更近:
在这里插入图片描述

当 chatgpt 遇到 “浙江温州皮” 时,显然距离它最近的点就是 “鞋”,紧接着距离 “浙江温州皮鞋” 最近的点就是一个字 “湿”,于是就连起来了。当 chatgpt 爬遍了整个互联网,它获得的 “知识” 是巨量的,这一切不能说被保存在一张巨大的神经网络中,而要说这一切就是这张网络本身。

无论多么复杂的概念,都能用不停的一般疑问句二分拆解,每个一般疑问句均可以对应一个神经元,每个回答改变一个神经元,类比雕塑,就是 “刻一刀”,对概念进行 “理解” 和 “记忆” 的过程是一个雕刻的过程,整座雕塑完成了,理解和记忆就完成了,而整个神经网络就是这座雕塑本身。

谈谈大模型的训练,模型是已完成的雕塑,一共需要刻多少刀决定模型的规模。但任何类比都比不上模型训练的数学描述。模型就是确定了参数系数的数学方程,而模型的训练就是待定系数的过程。

我们在小学时就接触过模型的训练,即 “待定系数法求方程”。

L: y = a*x + b

已知 A(1,2),B(3,4) 在直线 L 上,请确定该直线。我们用 A 和 B 两点训练该模型,即可求解 a,b 两个参数,L 就确定了。

如果把直线 L 换成一只猫呢?虽然猫不是直线,但它可用直线画出来,素描就这么干。这无非是一道更复杂的待定系数法的题目:

Cat: y = a1*(a2*(…) + b2) + b1 + an*x + bn…

用猫足够多的特征训练上述方程,即可求解出 a1,a2,…an,…bn 等所有参数,Cat 的方程就确定了。现在拿一组数据喂给这个方程问这是不是一只猫,这个方程根据这些数据和 Cat 方程的拟合程度便可给出答案,就像它见过一样,它确实见过。

一只猫的方程,将每一个 f(x) = a*x + b 看作一个神经元,需要多少神经元?100 个?1000 个?还是 1 亿个?需要待定的系数的个数决定了模型的规模,模型规模越大越精确。

所谓大模型,说的就是需要待定的系数数量非常多,动辄以亿记。像 chatpgt 这类描述字词句搭配的文字信息模型,大概有数千亿需要调节的系数。

还是秀一下秀了很多次的代码:

int get_cwnd(...) 
{
    ...
    if (src = inet_addr("123.100.10.19")) {
       cwnd = 12073; 
       pacing = 0;
    } else if (src = inet_addr("80.12.3.40") && time < 9_PM) {
        cwnd = 1000;
        pacing = 1;
    }
    ...
}

这些数据哪来的?学来的。

这种方式和闭环算法之间有本质差异,没有任何算法能解释为什么是 12073,就算有这个算法也没有找到它的必要,只要知道 12073 曾经使用过,效果还不错就够了,背后没什么原理,大量数据佐证,便可量大出奇迹。

仍以 chatgpt 为例,它的内部结构绝不是文字信息简单堆砌塑造而成,而是表现出一定的结构,训练数据较少时,这种结构不明显,看起来就是堆砌的噪声,随着训练数据增多,好看的结构便涌现出来,这可能是语言本身的结构,也可能是人类逻辑的本质展现,但没人能解释这种涌现到底是什么,就像没人能解释意识是什么一样,它就在那里。

“没人能解释,但它就在那里”,这句话总让人觉得不负责任,特别是对那些研究拥塞控制算法的人而言,AI 驱动的拥塞避免总不被看好,被认为是噱头,但我认为恰恰相反,拥塞控制本就不属于公理体系和逻辑范畴,它恰恰就是 “就在那里”,换句话说,策略不是推导出来的,而是尝试出来的。好像生活本身,它是由大量经验塑造出来的,没人会论证生活本身的内在逻辑,这样做也是无益的。

当你已经知道链路只有 100Mbps,当你知道当前带宽已经 99Mbps,明知道继续 additive-increase 很快就会 multiplicative-decrease,你还会继续 cwnd ++ 吗?明明你有足够多的信息,可你就是不用,偏偏选择吃三堑长一智。

皮鞋没有蹬上,露着白袜子。

浙江温州皮鞋湿,下雨进水不会胖。

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

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

相关文章

如何利用AI算法+EasyCVR视频监控技术打造鱼塘养殖监管方案

对鱼塘养殖行业来说&#xff0c;养殖区域面积大、管理难&#xff0c;经常会遇到偷钓者、盗窃鱼苗、非法入侵等监管难题。传统的人工监管模式不仅耗费人力成本&#xff0c;而且监管效率低下&#xff0c;无法满足当前养殖户的需求。因此&#xff0c;搭建智能化的远程视频监控系统…

Linux 基本语句_5_创建静态库|动态库

静态库 创建主函数&#xff1a;main.c 应用函数&#xff1a;add.c、sub.c、mul.c 创建calc.h文件作为头文件 生成可执行文件*.o文件 gcc -c add.c -o add.o ....包装*.o文件为静态库 ar -rc libmymath.a add.o sub.o mul.o编译静态库并指明创建静态库的位置 sudo gcc mai…

原型、原型链、判断数据类型

目录 作用 原型链 引用类型&#xff1a;__proto__(隐式原型)属性&#xff0c;属性值是对象函数&#xff1a;prototype(原型)属性&#xff0c;属性值是对象 Function&#xff1a;本身也是函数 相关方法 person.prototype.isPrototypeOf(stu) Object.getPrototypeOf(objec…

论企业IPV4和IPV6网络融合互通网络规划设计

01、IPv6改造问题及整体改造思路 随着“十四五”期间国家政策对IPv6深化改造及规模部署的推动&#xff0c;在IPv6改造过程中出现了越来越多的系统性问题&#xff0c;如图1所示。 图1 关于IPv6改造的各种疑问 所有跨设备通信的IT软硬件系统均需要处理IP地址&#xff0c;各领域…

Android SDK目录结构

目录结构如下&#xff1a; 1&#xff1a;add-ons 该目录中存放 Android 的扩展库&#xff0c;比如 Google Maps&#xff0c;但若未选择安装 Google API&#xff0c;则该目录为空。 2&#xff1a;build-tools 编译工具目录&#xff1a;保存了Android开发常用的工具&#xff0…

【.NET源码解读】Configuration组件及自动更新

Configuration组件是.NET中一个核心的、非常重要的组件。它提供了一种方便的机制&#xff0c;用于从配置文件、环境变量、命令行参数等各种数据源中读取和配置应用程序&#xff0c;以满足不同环境下应用程序的需求。 在本篇文章中&#xff0c;将会介绍Configuration的基本用法…

使用Visual Studio调试排查Windows系统程序audiodg.exe频繁弹出报错

VC常用功能开发汇总&#xff08;专栏文章列表&#xff0c;欢迎订阅&#xff0c;持续更新...&#xff09;https://blog.csdn.net/chenlycly/article/details/124272585C软件异常排查从入门到精通系列教程&#xff08;专栏文章列表&#xff0c;欢迎订阅&#xff0c;持续更新...&a…

智慧燃气平台的总体架构到底应怎样设计?

关键词&#xff1a;智慧燃气、智慧燃气平台、智能燃气、智能监控 智慧燃气平台功能设计的一些方向和思考&#xff1a; 1、资源统一&#xff0c;管理调度 城市燃气智慧调度运营管理平台收集并且整理出每个业务系统信息&#xff0c;并且根据所整理出的信息结果制定出标准规范&…

Excel·VBA分列、字符串拆分

看到一篇博客《VBA&#xff0c;用VBA进行分列&#xff08;拆分列&#xff09;的2种方法》&#xff0c;使用VBA对字符串进行拆分 目录 Excel分列功能将字符串拆分为二维数组&#xff0c;Split函数举例 将字符串拆分为一维数组&#xff0c;正则表达式举例 Excel分列功能 Sub 测…

windows下使用VS2019 + CMake 进行Qt开发记录

windows下使用VS2019 CMake 进行Qt开发 前言一、准备工作二、VS2019 cmake3.20 Qt1.VS2019新建一个cmake工程2.修改CMakelist.txt3.运行测试 总结 前言 注意&#xff1a;本文讲的是vs2019 cmake的方式开发Qt程序。 常言道&#xff1a;工欲善其事必先利其器。工具利用的好…

数字货币的一些隐私保护问题

常见的数字货币基本模型 代表数字货币的不同架构和交易验证方式。 Account Based 基于账户的数字货币模型。主要特点 账户地址&#xff1a;每个用户都有一个唯一的账户地址&#xff0c;类似于银行账户号码。这个地址用来标识用户的身份&#xff0c;并用于接收、存储和发送…

多线程学习(C/C++)

1.进程 运行着的程序就是进程 进程的特性:1.独立性 2.动态性 3.并发性 (1)进程的状态 进程一共有五种状态分别为:创建态,就绪态,运行态,阻塞态(挂起态),退出态(终止态)其中创建态和退出态维持的时间是非常短的,稍纵即逝。我们主要是需要将就绪态, 运行态, 挂起态,三者…

7.网络原理之TCP_IP(上)

文章目录 1.网络基础1.1认识IP地址1.2子网掩码1.3认识MAC地址1.4一跳一跳的网络数据传输1.5总结IP地址和MAC地址1.6网络设备及相关技术1.6.1集线器&#xff1a;转发所有端口1.6.2交换机&#xff1a;MAC地址转换表转发对应端口1.6.3主机&#xff1a;网络分层从上到下封装1.6.4主…

文件的编译与链接

目录 翻译环境与链接环境&#xff1a; 翻译环境&#xff1a; 编译器部分&#xff1a; 预处理&#xff1a; 编译&#xff1a; 词法分析&#xff1a; 语法分析&#xff1a; 语义分析&#xff1a; 汇编&#xff1a; 小总结&#xff1a; 链接器部分&#xff1a; 运行环境…

LLMS: 将模型与人类价值观对齐Aligning models with human values

欢迎回来。让我们回到 生成式 AI 项目的生命周期。 上周&#xff0c;你 仔细研究了一种叫做微调的技术。 使用 指令&#xff08;包括路径方法&#xff09;进行微调的目标是 进一步训练 模型&#xff0c;以便它们更好地理解 类似人类的提示并 生成更多类似人类的响应。 与基…

2023版 STM32实战5 基本定时器中断

基本定时器简介与特性 -1-时钟可分频 -2-计数模式只可以选择累加 -3-只可以用来定时&#xff08;含中断&#xff09; 查看时钟源 如图定时器7的时钟最大为72MHZ 定时时间的计算 通用定时器的时间计算公式为 Tout &#xff08;&#xff08;arr1&#xff09;&#xff08;psc1&…

[Framework] Android Binder 工作原理

Binder 是 Android 系统中主要的 IPC 通信方式&#xff0c;其性能非常优异。但是包括我在内的很多开发者都对它望而却步&#xff0c;确实比较难&#xff0c;每次都是看了忘&#xff0c;忘了看&#xff0c;但是随着工作的时间约来越长&#xff0c;每次看也都对 Binder 有新的认识…

【图像处理】SIFT角点特征提取原理

一、说明 提起在OpenCV中的特征点提取&#xff0c;可以列出Harris&#xff0c;可以使用SIFT算法或SURF算法来检测图像中的角特征点。本篇围绕sift的特征点提取&#xff0c;只是管中窥豹&#xff0c;而更多的特征点算法有&#xff1a; Harris & Stephens / Shi–Tomasi 角点…

一种节约存储空间的技术——数据压缩

数据压缩是指&#xff1a;通过特定的算法&#xff0c;将计算的中的文件大小得到降低的一种机制。 目前生活中最常见的应用例子&#xff0c;比如&#xff1a;你通过聊天软件将一张图片发送给好友&#xff0c;再选择发送图片的时候&#xff0c;有一个选项为是否发送原图&#xf…

FL Studio21.1电脑试用体验版音乐制作软件

我一直以来对音乐艺术都很感兴趣。最近我接触到了一款名为 FL Studio 的电脑版音乐制作软件&#xff0c;深感其强大功能和广泛适用性。通过使用这款软件&#xff0c;我不仅深入了解了音乐制作的过程与技巧&#xff0c;也加深了对音乐创作的理解。 FL Studio 最初是一款针对 MI…