机器学习中的数学底蕴与设计模式

在说机器学习设计模式之前,想多说几句,在进入软件行业最初的10年,那时候耳熟能详的基本就是多线程编程,互斥同步锁,设计模式,OOA,OOP,常规数组,tree,图的数据结构及相关网络编程等。那时高等数学总觉得没有太多用武之地,慢慢的开始了解机器学习,你会发现数学在机器学习中占有举足轻重的地位。数学好的人,机器学习上手非常快,并且你不会浮于表面,只会那些所谓的  fine  tune,我不是说 fine tune不重要,这件事肯定要做,只是现阶段是人工来完成,但未来 fine tune 这种事 迟早会被机器替代。因为机器学习后阶段人工fine tune会逐步消失,取而代之的是机器的全自动校正完成。但如果你有深厚的数学功底,你将是创建模型或改造模型的人,你将真正凌驾在machine learning 之上。

举个例子,如果你有很深的微积分造诣,那么你理解神经网络中的梯度下降,损失函数的构建及训练,调优等过程,你会轻车熟路,在较短时间内完美驾驭。如果你有较深的线性代数造诣,理解卷积神经网络,CNN, RNN,LSTM,GRU或者是Attention等transformer 机制,你会比别人更胜一筹。如果你有较好的概率论相关know-how,你将对softmax 等输出,损失函数等有很好的理解。当然我说的都是比较基础的理解部分。你甚至可以创建基于自己的super data AI model,这些idea或专利的源泉大部分来自你较好的数学功底,所以,如果你想在机器学习中有较好的可持续发展,Math is very important.

下面还是说干货,AI的设计模式。 Andrew Ng 在人工智能峰会(AI Ascent)上发表了《Agentic Reasoning》的演讲。虽然时间不长,但information 很多。主要包括反思、工具调用、规划和多智能体协作4种设计模式,你会发现AI的模式和人类的思考维度越来越接近,作为工作或生活中人类经常使用的PDCA模式在AI中得到了极致体现,同时已能印证我前面说的人工 fine tune迟早会被终结。

Zero-shot Prompting VS Agentic Workflow

在当下,不论是国外的AI工具如ChatGPT、Claude、谷歌的Gemini,还是国内的Kimi、通义千问和文心一言,我们大多数人的使用方式还是以“zero-shot prompt”直接对话的形式,也就是我们直接抛给ChatGPT一个问题,比如“写一篇关于xx主题的论文”,让它一次性给出回复。在这个过程中,LLM模型只会执行“生成”这一个动作。

然而,这与我们在真实世界中完成工作任务的流程是截然不同的。还是以写论文为例,一般我们会起草一个初稿,然后评估、分析、修订,迭代出第二、第三个版本,直到我们满意为止。其他工作和学习任务也是如此,我们通常会将其分解为一个一个的流程,然后按照流程来操作,以保证结果的质量。LLM模型也理应如此为我们服务。

Agentic Workflow赋能LLM模型

吴恩达教授的团队对“Zero-shot prompting”以及添加了不同设计模式的AI Agent的表现做了数据分析和对比,详情如下图。图中的纵坐标分别表示基座模型是GPT-3.5和GPT-4,横坐标表示在“Coding benchmark”下各模型/Agent的正确率(表现),百分比越高表现越好。

08e56de46f8e449cb79054fdacef3647.png

  1. Zero-shot模式
  2. GPT-3.5的Zero-shot性能为48%。
  3. GPT-4的Zero-shot性能显著提升,为67%。
  4. 结论:Zero-shot模式下,模型在没有具体任务示例的情况下,仅依赖于其预训练的知识来执行任务。这种情况下比拼的是模型的通用基础能力,可以理解为模型的“智商”,GPT-4表现好是意料之中的。
  5. AI Agent(智能体)模式
  6. Reflection反馈模式通过模型自身的反思与调整来改进任务执行。
  7. Tool Use工具调用模式涉及模型调用外部工具或库来帮助解决任务。
  8. Planning规划模式通过提前计划和组织任务步骤来提高效率和准确性。
  9. Multiagent多智能体协作模式涉及多个智能体的协同工作,以提高整体任务执行能力。
  10. 结论1:添加了Agentic Workflow的AI Agent在任务执行中的表现显著提升,不论基座模型是GPT-3.5还是GPT-4。
  11. 结论2:即使基座模型是GPT-3.5,通过添加Agentic Workflow将其设计为AI Agent后,性能表现也超过了Zero-shot模式下的GPT-4!

其实这种结论也很好理解,对于一项工作或学习任务来说,光有“智商”是不足以保证任务完成质量的,更重要的,与如何完成这项任务的方式方法有关系。“智商”(即大脑,LLM模型)可能起到一定作用,但合理的规划,完善的流程设计在后期任务执行过程中也起到关键的作用,虽然这常常被我们忽略。

1. 反馈(Reflection)

反馈(Reflection)设计模式是一种让AI模型通过自我反思和迭代改进来提高任务执行能力的方法。在这种模式中,模型不仅生成初始解决方案,还会通过多次反馈和修改,不断优化其输出。

在Andrew Ng 提到的例子中,任务是编写代码,模型首先生成初始版本,然后通过多次反馈和修改生成更优化的版本。例如,初始代码版本存在错误,模型通过反馈指出错误并进行修正,最终生成一个通过所有测试的版本。

2. 工具调用(Tool Use)

工具调用(Tool Use)设计模式是一种让AI模型通过调用外部工具或库来增强任务执行能力的方法。在这种模式中,模型并不仅仅依赖于自身的知识和能力,而是利用各种外部资源来完成任务,从而提高效率和准确性。

 

实际我前面写的 RAG与LLM 专栏 就是一个在LLM领域下 Tool Use 的应用,有兴趣可以取读一读,还在持续更新中。

 

3. 规划(Planning)

规划(Planning)设计模式是一种通过提前计划和组织任务步骤来提高效率和准确性的方法。在这种模式中,模型将复杂任务分解为多个步骤,并依次执行每个步骤,以达到预期的目标。

这和管理者经常使用的PDCA是何其相似,plan-do-check-action 直至目标完成,其中也包含了  fine tune 的逻辑。

4. 多智能体协作(Multi-agent Collaboration)

多智能体协作(Multiagent Collaboration)设计模式是一种通过多个智能体之间的合作来提高任务执行效率和准确性的方法。在这种模式中,多个智能体分担任务,并通过相互交流和协作,共同完成复杂任务。

实际上与 3 规划有一些联系,比如:

开发一个五子棋游戏。

  • 设计阶段:一个智能体负责游戏的设计,包括界面和规则。
  • 编码阶段:另一个智能体负责游戏的编码,实现核心功能。
  • 测试阶段:第三个智能体负责测试游戏,找出并修复错误。
  • 文档编写阶段:第四个智能体负责编写游戏的使用文档和说明。

通过智能体之间的分工合作,最终成功开发出一个完整的五子棋游戏。

就先写到这里吧

 

 

 

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

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

相关文章

体验升级:扫描全能王智能高清滤镜2.0全面测评

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

【CT】LeetCode手撕—19. 删除链表的倒数第 N 个结点

题目 原题连接:19. 删除链表的倒数第 N 个结点 1- 思路 模式识别:删除倒数第 n 个结点 ——> 定义 dummyHead 并用双指针实现删除逻辑 2- 实现 ⭐19. 删除链表的倒数第 N 个结点——题解思路 class Solution {public ListNode removeNthFromEnd(Li…

React-Native优质开源项目

React Native 是一个由 Facebook 开发的开源框架,允许开发者使用 JavaScript 和 React 来构建原生移动应用。它允许开发者编写一次代码,然后可以在 iOS 和 Android 平台上运行,而无需为每个平台单独编写代码。以下是 React Native 的一些关键…

MySQL 高级SQL高级语句(二)

一.CREATE VIEW 视图 可以被当作是虚拟表或存储查询。 视图跟表格的不同是,表格中有实际储存数据记录,而视图是建立在表格之上的一个架构,它本身并不实际储存数据记录。 临时表在用户退出或同数据库的连接断开后就自动消失了,而…

LLM学习记录

概述 语言模型经历过四个阶段的发展,依次从统计语言模型到神经网络语言模型(NLM),到出现以 BERT 和 Transformer 架构为代表的预训练语言模型(PLM),最终到大型语言模型阶段(LLM&…

数学建模比赛介绍与写作建议

0 小序 本文的写作起因是导师要求我给打算参加相关竞赛的师弟们做一次讲座和汇报。我梳理了一个ppt提纲,并经过整理,因此有了这篇文章。 我打算从数学建模论文写作格式和写作技巧入手,接着介绍数学建模常用的数学模型,最后提出一…

【数据结构(邓俊辉)学习笔记】二叉搜索树04——AVL树

文章目录 1.重平衡1.1 AVL BBST1.2 平衡因子1.3 适度平衡1.4 接口1.5 失衡 复衡 2. 插入2.1 单旋2.2 双旋2.3 实现 3. 删除3.1 单旋3.2 双旋3.3 实现 4. (3 4)-重构4.1 "34"重构4.2 "34"实现4.3 rotateAt4.4 综合评价 1.重平衡 1…

【Python】利用代理IP爬取当当网数据做数据分析

前言 在数字化浪潮的推动下,电商平台已经彻底改变了我们的购物方式。从简单的在线交易到复杂的用户交互,电商平台积累了海量的用户数据。这些数据,如同隐藏在深海中的宝藏,等待着被发掘和利用。通过分析用户的浏览、搜索、购买等行…

(4.2)Sourcegraph(Chrome插件)——github实现源码阅读

一、下载 下载方式参考:如何安装 Chrome 插件?以 Show_Rank 为例 下载链接一:从Chrome应用商店直接搜索,https://chromewebstore.google.com/detail/sourcegraph/dgjhfomjieaadpoljlnidmbgkdffpack?utm_sourceext_app_menu 如…

可燃气体报警器检测周期:企业安全管理体系中的关键环节

可燃气体报警器作为现代工业安全监测的重要工具,对于预防火灾、爆炸等安全事故起着至关重要的作用。 而检测周期的设置,直接关系到报警器的准确性和可靠性。 接下来,佰德将深入探讨可燃气体报警器检测周期的重要性,并通过案例分…

嫦娥六号成功带回月球背面土壤,嫦娥七号整装待发,2030年前实现载人登月!

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点 嫦娥六号圆满成功 嫦娥六号任务是中国探月工程的一次重大成功,探测器于5月3日在中国文昌航天发射场发射升空并进入地月转移轨道。经…

Mini-Contract电子合同在线签署小程序源码

Mini-Contract电子合同在线签署小程序源码,采用的是uniapp Vue3框架搭建,只有前端源码是一个聚合市场上各类电子合同解决方案商的工具,让用户无需一个个对接电子合同厂商,节省时间和精力。该程序提供了简洁的代码和最新的技术栈&a…

隐私计算实训营第二期第12基于隐语的VisionTransformer框架

01 MPCViT:安全且高效的MPC友好型 Vision Transformer架构 总体框架: 首先分析了ViT产生较大延时的原因,思考能否去除这些操作。 然后,对比不同的注意力机制,发现它们中有的具有很好的效率,有的则具有很…

gin会话控制

一. 会话控制 1.1 介绍 HTTP是无状态的协议,不会记录用户的任何信息,服务器也不能记录浏览器的访问状态,也就是说服务器不能区分两次请求是否是同一个客户端发出的。Cookie是解决HTTP协议无状态的方案之一Cookie实际就是服务器保存在浏览器上…

2010-2022年 政府透明度指数报告整理

政府透明度指数报告是衡量政府透明度的重要工具,它由独立的评估机构或研究机构发布,用以反映政府在不同方面的表现。以下是对政府透明度指数报告的详细介绍: 数据简介 定义:政府透明度指数报告衡量的是政府在信息公开、政策制定…

Linux——/etc/passwd文件含义,grep,cut

/etc/passwd文件含义 作用 - 记录用户账户信息:共分为7段,使用冒号分割 含义 - 文件内容意义:账户名:密码代号x:UID:GID:注释:家目录:SHELL - 第7列/sbin/nologin&#x…

无人机赋能自然资源调查

确权 业务挑战 由于测绘人员难以到达现场,确权区域大,传统人工测绘覆盖 不全面,信息不完整 传统测绘成果单一,现场核实难度高,确权采集信息不对称 无人机优势 数据采集效率是人工的10倍以上,可自动将…

分布式限流:Spring Cloud Gateway 限流

分布式限流:Spring Cloud Gateway 限流 在现代微服务架构中,流量控制是一个至关重要的部分。分布式限流作为一种有效的流量控制手段,能够帮助我们保护系统不被突发的流量冲垮。Spring Cloud Gateway支持多种限流方式。 什么是分布式限流 分…

vivado VIO IP核

参考:pg159 VIO:可以模拟输入/输出功能,实时监视和修改FPGA中的信号,用于调试和验证,与ILA相比,VIO无需占用RAM资源。 VIO IP的输出对于FPGA内部逻辑是输入信号,可以在调试界面设置输入值&…

分享屏幕坐标和窗口通信

简介 实现功能&#xff0c;通过url传参选择扑克牌&#xff0c;桌面同时打开两个以上该窗口&#xff0c;扑克牌可以在窗口之间移动。 在线演示 屏幕坐标和窗口通信 实现代码 <!DOCTYPE html><html><head> <meta http-equiv"Content-Type" co…