“我们聘请 ChatGPT,让它当了一天 ML 工程师”

为什么你应该成为人工智能领域的数据产品负责人 Netflix 等流媒体公司的薪酬高达 90 万美元 如今,成为人工智能数据产品所有者确实很有意义,因为越来越多的日常生活领域受到这项技术的影响,并且正在寻找能够使用人工智能并利用它来发挥自己优势的人。当然,不得不说的是,这里显示的薪水主要是大城市的Netflix这样的大公司支付的,但也有小公司和其他科技行业的人支付,不得不说,在某些情况下,非常好的薪水可以也要付钱。艺术家和表演者的担忧加剧了罢工,他们寻求流媒体服务增加工资和剩余,并要求对编剧室中人工智能的使用进行更多监管,因为美国演员工会等组织将人工智能技术视为威胁演员和编剧[3]。 阅读详情

随着 ChatGPT 的爆火,许多人提出疑问:它究竟是否可以取代人类?于是,面对众说纷纭的答案,本文作者决定:让 ChatGPT 当一天的机器学习工程师,毕竟实践出真理。

很少有技术像 OpenAI 的 ChatGPT 一样有这么大的魔力,一经发布迅速吸引了公众的吸引力。

ChatGPT 推出两个月就斩获了超过 1 亿用户,堪称史上发展速度最快的公共应用程序。虽然许多人认为 ChatGPT 是技术上的飞跃,但其真正活力并非来自巨大的技术进步(ChatGPT 的基础模型是GPT3,已经存在近 3 年了),而是因为:它是一款真正能够与人类交互的 AI 应用程序。

作为一个 AI 系统,ChatGPT 高调地向世人展示了自己的价值,让公众产生了畏惧。实际上,人工智能已经渗透现代生活的方方面面,但它们大多隐藏在幕后,例如谷歌搜索、Youtube 推荐、垃圾邮件过滤器、身份识别等等。ChatGPT 是为数不多的人造智能工具之一。人工智能已成为众人瞩目的焦点,并因此而催生了大量文章、视频、博客以及播客。

在此次热潮中,人们对于人工智能的进步、人工智能的意识进步、人工通用智能以及技术奇点等的影响产生了新的问题和担忧——然而,我们认为 ChatGPT 不是终结者:这些技术仍在快速发展,我们无法预测其将来的发展方向,更无法预期其广泛的影响。但我们可以通过一些小问题,知微见著,加深对 AI 的理解。

本着这种精神,我们提出了一个问题:能否找到一种途径来验证一个 AI 系统是否可以迭代改进另一个 AI 系统?

我们注意到,目前 AI 进步的主要推动者是从事机器学习的工程师和研究人员。于是,我们想到了一个更具体的问题:ChatGPT 能否成为一名称职的机器学习工程师?

准备工作

为了让 ChatGPT 成为一名机器学习工程师,首先我们来确定该角色应承担的所有职责。机器学习工程师的日常工作包括:

(1)手动检查和探索数据;

(2)训练模型,评估结果;

(3)管理模型的部署以及模型的监控过程;

(4)编写自定义算法和脚本。

综上所述,机器学习工程师必须是一名技术力非常全面的问题解决者。因此,我们打算让这位工程师专注于解决更抽象和更具创造力的问题。

我们将通过以下几个方面缩小 ChatGPT 的职责范围:

(1)专注于研究计算机视觉的模态:我们之所以选择计算机视觉,因为这是我们的专长,同时也是因为作为一种大型语言模型,ChatGPT 在其训练过程中未能直接访问任何视觉媒体。因此,它只能从纯概念的角度来处理这个领域。

(2)探索一个具体的问题:Python 有一个库 pandas,同时我们所有人都很喜欢熊猫,所以我们决定构建一个强大的熊猫检测器。我们将使用开源数据集 YouTube-VOS(https://youtube-vos.org/dataset/)的数据,对这些数据做了标记,而且还故意埋了几个错误。

(3)以数据为中心的方法:我们选择以数据为中心的方法,因为我们发现这种方法通常对实际模型开发的影响力最高。我们可以去除模型和参数选择的大部分复杂性,这样就可以专注于改进提供给模型的训练数据和标签。采用以模型为中心的方法来运行超参数和模型架构虽然很重要,但无法很好地测试 ChatGPT 的抽象推理能力。

(4)使用现有工具:为了进一步简化任务,我们决定避免使用机器学习工程师自己构建的内部工具。因为 ChatGPT 并不能运行 Jupyter Notebook,我们将利用 Encord 平台,通过 Encord 的微模型以及开源工具 Encord Active 运行数据、标签和模型评估来简化模型的训练/推理。运行模型训练的代码如下:

考虑到范围已经缩小了,我们的方法是使用 ChatGPT 通过 Encord Active 编写自定义质量指标,然后运行数据、标签和模型预测来过滤和清理我们的数据。

质量指标是数据、标签和模型的附加参数,从语义上来说,这些是给训练数据加索引以及预测数据的方法,既可以包括一般的属性(例如图像的模糊度),也可以是特定的属性(例如图像中行人之间的平均间距)。

作为机器学习工程师,ChatGPT 的工作是想办法分解和管理我们的标签和数据,以提高下游模型的性能,并通过自定义的质量指标来调节模型。

示例质量指标的代码如下:

这个简单指标计算的是数据集内熊猫的边界盒的纵横比。使用这个指标遍历数据集,我们看到了一种分解数据的方法:

ChatGPT 的目标是找到其他可以用来改进数据的相关指标。

此外,我们必须考虑的最后一点是:作为机器学习工程师,ChatGPT 处于极大的天然劣势,它看不到自己正在处理的数据。它的实现能力也是有限的,虽然 ChatGPT 本身取得了巨大的成功,但也经常会遇到频繁中断和无法响应。

我们可以把 ChatGPT 想象成一名机器学习工程师,身处荒岛之上,wifi 非常糟糕,唯一可以运行的软件是 Slack。因此,我们需要一个中间人。我们将充当 ChatGPT 的眼睛、耳朵和手指,同时也是它在这个项目中的合作伙伴。

流程

根据上述限制,我们制定的策略如下:

1. 在随机采样数据上,运行初始基准模型;

2. 要求 ChatGPT 提出改进数据和标签选择过程的想法;

3. 让 ChatGPT 编写自定义质量指标来实例化这些想法;

4. 在改进的数据上训练新模型;

5. 评估并比较模型。

我们利用以数据为中心的方法,限制 ChatGPT 的试验变量只能是这些质量指标。所有模型和超参数都将保持不变。总结一下:

相较于 OpenAI 服务器上的神经网络,作为人类,我们的优势之一是可以直接查看数据。只需用目光扫视一下,很快就可以发现标签错误(我们有意引入)。在这个过程中,我们尽可能将我们看到的问题传达给 ChatGPT,为其解决方案提供足够的背景信息。下面是一些示例数据:

还有一些明显的标签错误:

基准

做好一切准备工作,下面我们来运行初始模型,为 ChatGPT 的工作建立基准。我们随机抽取 25% 的训练数据集样本,并用这些数据训练模型。我们的初步结果:平均准确率为 0.595,平均召回率为 0.629。

下面,我们问一问 ChatGPT 下一步该怎么办。

用 ChatGPT 处理机器学习

我们以上述基准测试集为基础,与 ChatGPT 就如何使用质量指标改进我们的数据集进行了探讨。我们的第一种方法是提供问题的高级描述,并引出初步建议。

在经过几个来回的讨论后,我们与 ChatGPT 进行了一场富有成效的头脑风暴会议:

到这里,我们已经有了一些有趣的想法。为了汲取更多想法,我们与 ChatGPT 进行了一系列长时间的对话,期间还与它玩了一会儿小游戏。

在经过几次互动(并建立了稳固的融洽关系)之后,我们来回顾一下 ChatGPT 提出的一些建议:

(1)对象相似度:参数化边界盒内熊猫到边界盒的平均距离。如果熊猫彼此之间离得很近,我们就可以利用这个参数防止对象检测模型感到迷惑。

(2)对象置信度分数:这是一个标准方法,指的是使用现有模型对标签的置信度等级进行排名。

(3)对象计数:这是一个简单的指标,在边界盒中的熊猫数量有可能影响到模型精度的情况下使用。

(4)边界盒的紧密性:计算边界盒内轮廓的纵横比与边界盒本身的纵横比的偏差,以衡量边界盒是否紧紧围绕对象。

除了指标方面的想法外,我们还需要 ChatGPT 提出如何在实践中使用这些指标的建议。

数据选择:

我们来问问 ChatGPT,对于如何利用指标来提高数据质量,它有何看法。

标签错误:

我们还询问了当指标发现潜在的标签错误时该怎么办。

总结一下,针对如何改进我们的模型,ChatGPT 给出如下一系列具体的策略:

(1)数据分层:使用指标对数据集进行分层,以实现平衡。

(2)删除错误:删除指标找出来的训练数据中的错误标记。

(3)重新标记:重新标记有错误的标签。

到这里为止,我们在 ChatGPT 的帮助下制定了一系列可操作的指标和策略。下一个问题是:

ChatGPT 真的可以实现这些解决方案吗?

下一步是让 ChatGPT 将以上想法实例化为自定义指标。我们来试试输入一些示例指标代码和 Encord Active 文档中给出的示例指标说明:

从表面来看,结果还不错。我们运行了 ChatGPT 建议的各种其他指标,并找到了看似合理的代码片段。将这些指标插入 Encord Active,运行后得到的结果如下:

不过似乎我们还需要一些改进,来问问 ChatGPT 有没有好办法:

虽然刷新了很多次,但我们依然没有得到响应。ChatGPT 就像一个不可靠的同事,编写了错误的代码,而且还消失了——此处还是需要人工干预。经过大量手动调试后,ChatGPT 的指标终于可以运行了。现在我们回头去实现它的建议。

与其他数据科学建议一样,关键是针对各个想法进行多次迭代。我们需要运行多个 ChatGPT 指标,并求结果的平均值。但为了简洁起见,此处我们仅尝试它建议的过滤策略。

结果

我们使用 ChatGPT 的指标和策略进行了多项实验,可以通过这些指标查看 ChatGPT 的模型性能。

使用以数据为中心的指标驱动方法后,与我们的随机样本相比,ChatGPT 给出的指标建议的平均精度提高了 10.1%,召回率提高了 34.4%。

虽然 ChatGPT 不是一位完美的伙伴,但它在构思合理的指标方面有着优异的表现,它提出的想法大幅改进了我们的熊猫检测器。那么,ChatGPT 会是下一个 Geofrey Hinton(反向传播算法和对比散度算法的发明人之一,也是深度学习的积极推动者,被誉为“深度学习之父”)吗?

不可能。ChatGPT 给出的代码需要大量的人工干预才能运行,而且整个对话过程背后有人类的正确判断,这一点不可忽视。事实上,最成功的指标,也就是对减少标签错误和提高模型性能方面影响最大的指标,很大程度上受到了人类建议的影响:

上述“边界盒的紧密性”指标是通过一系列提示和响应得出的。最后得出这样的结论,不能完全归功于 ChatGPT,其中也离不开人为因素。

此外,ChatGPT 也错失了一些针对性很强的简单指标,比如人类在判断熊猫时,一个很明显的观察因素是它们是黑白色的,判断标签是否错误的最直接指标就是边界盒中白色和黑色像素与总像素数的比值。如果这个指标很低,则表明边界盒没有紧密贴近熊猫。尽管对人类来说,这个指标显而易见,但我们尽了最大努力,依然未能引导 ChatGPT 提出这样的想法。

总结

总的来说,ChatGPT 对计算机视觉有着深刻的理解。遇到陌生的问题和框架,它能够提出有用的建议和初始模板的代码片段。在它的帮助下,我们成功改进了我们的熊猫检测器——无需从头创建代码模板,也可以加快人类机器学习工程师的迭代周期。

然而,ChatGPT 缺乏在没有指导的情况下建立自己想法和结论的能力,它无法通过集中推理深入研究问题的特殊性。

对人类来说,洞察力来自多年的经验和积累,但 ChatGPT 似乎还没有发展出这样的能力,它仍然依赖于其他工程师的指导。虽然它拥有机器学习思想和策略,但不具备独立机器学习工程师的深度认知能力。

所以,我们可以利用 ChatGPT 来改进 AI 系统吗?可以。

我们会聘请它作为独立的机器学习工程师吗?不会。

让我们等到 GPT4 问世,再来试试看吧!

AI编程工具深度横评2026:Claude Code × Cursor × Trae × OpenCode,7场景实测+完整免费配置 2026年AI编程工具已进入"自主Agent"时代:Claude Code以80.8% SWE-bench得分领跑编程能力,Cursor 3在用户体验和多Agent协作方面突出,GitHub Copilot保持企业市场优势。这些工具分别代表不同的使用哲学:命令行原生、IDE分支、平台集成、编辑器扩展和后起之秀。本文从开发者视角出发,通过7个真实编程场景的系统性测试,给出每款工具在具体场景下的表现评估和免费使用完整配置方案。所有代码均可直接复制运行,所有工具均有免费使用路径。 阅读详情

相关推荐

避坑指南:Windows下OpenCV摄像头索引混乱问题的3种解决之道

本文详细解析了Windows下OpenCV摄像头索引混乱问题的3种解决方案,包括GUID查询法、DirectShow接口集成和注册表固化技术。针对工业视觉和智能监控场景,提供实战代码和性能优化建议,帮助开发者稳定识别多路摄像头设备,有效解决VideoCapture接口的索引漂移问题。

weixin_30836759的博客 406

0行代码拿210万年薪,ChatGPT催生新型「程序员」岗:工作纯靠和AI聊天

梦晨 发自 凹非寺量子位 | 公众号 QbitAI靠玩ChatGPT,还能找到新工作?没错,Riley Goodside(后面叫他好面哥)4月份开始在网上发布玩GPT-3的心得。最近ChatGPT一波爆火,他不光粉丝涨了一万多,还收到新offer。估值73亿美元的硅谷独角兽公司Scale AI,正式聘请他为“提示工程师”(Prompt Engineer)。他的新老板、Scale AI创始人兼CEO...

量子位 5927

3-RRR并联机器人结构详解:从运动学到奇异点分析(附MATLAB仿真代码)

本文详细解析了3-RRR并联机器人的结构设计、运动学建模及奇异点分析,并提供了MATLAB仿真代码。通过对称性设计和可分析性,3-RRR结构成为教学与研究的理想对象。文章从基础杆件参数设置到奇异位形的实时捕捉,深入探讨了机构运动的数学本质,并分享了仿真调试中的实用技巧,助力工业自动化和精密控制应用。

sunny的博客 341

我,一个程序员,靠玩ChatGPT年薪210万

没错,Riley Goodside(后面叫他好面哥)4月份开始在网上发布玩GPT-3的心得。最近ChatGPT一波爆火,他不光粉丝涨了一万多,还收到。估值73亿美元的硅谷独角兽公司Scale AI,正式聘请他为他的新老板、Scale AI创始人兼CEO发文欢迎他的加入,并称提示工程师这个岗位还是,引发大量关注。为啥要新设这样一个岗位?这位CEO认为,AI大模型可以看成一种,所以需要一种去给它编程。虽说是新型程序员,但是这份工作自己。毕竟只要讲几句人话,AI自己就能把代码生成好了。

xzp740813的博客 1171

Ad hoc网络路由协议概述4——按需路由协议(2)AODV协议 (Ad-hoc on-demand distance vector algorithm protocol)

AODV协议的基本流程。

weixin_42982240的博客 7705

网络工程师面试题汇总(二)

网络把主机连接起来,而互连网(internet)是把多种不同的网络连接起来,因此互连网是网络的网络。而互联网(Internet)是全球范围的互连网。因为网络层是整个互联网的核心,因此应当让网络层尽可能简单。网络层向上只提供简单灵活的、无连接的、尽最大努力交互的数据报服务。使用 IP 协议,可以把异构的物理网络连接起来,使得在网络层看起来好像是一个统一的网络。地址解析协议 ARP(Address Resolution Protocol)

悦分享 184

ChatGPT带火了一个新职业,年薪200W+

作者| Mr.K 编辑| Emma来源| 技术领导力(ID:jishulingdaoli)吃着火锅聊着天就把钱赚了,年薪还能高达33万美刀,你敢信吗?不用怀疑,除了“吃着火锅”这四个字是玩梗,其它全是真的。这个负责“聊天”的活儿有个新职位,提示工程师(prompt engineer),聊天的对象也不是一般人,而是火遍全球的ChatGPT。前段时间,估值73亿美元的硅谷独角兽公司Scale AI...

技术领导力 4968

Robot Framework 7.0 报告解析

本文深入解析 Robot Framework 7.0 新增的 JSON 报告功能,手把手教你如何从 output.xml 转换为结构清晰的 output.json,并通过 Python 脚本提取关键测试指标。文章附完整示例、命令、解析脚本,支持导出为 CSV 和 Markdown,方便接入可视化看板、群通知和 CI 流程。适用于测试自动化、质量平台建设和回归趋势分析场景。

点点寒彬的博客 264

年薪高达 267 万元,ChatGPT 催生高薪职业,无需编程背景

整理 | 朱珂欣 出品 | 优快云程序人生(ID:coder_life)ChatGPT 的兴起,催生了一个“与众不同”的新职业—— prompt engineer (提示工程师)。主要职责是负责为 AI 聊天机器人生成的文本、图片、音频等内容添加关键词和提示,从而指导 AI 聊天机器人根据特定的目标和情境生成更符合用户需求的内容。据外媒 Benzinga 报道,目前,提示工程师的部分职位的...

程序人生的博客 8346

如何实现一个用STM32F103C8T6作为主控芯片,加上AD8232、MAX30102 、MPU6050模块的用于运动中监测心率变异性??

🏆 本文收录于《全栈Bug调优(实战版)》专栏,致力于分享我在项目实战过程中遇到的各类Bug及其原因,并提供切实有效的解决方案。无论你是初学者还是经验丰富的开发者,本文将为你指引出一条更高效的Bug修复之路,助你早日登顶,迈向财富自由的梦想🚀!同时,欢迎大家关注、收藏、订阅本专栏,更多精彩内容正在持续更新中。让我们一起进步,Up!Up!Up!    备注: 部分问题/难题源自互联网,经过精心筛选和整理,结合数位十多年大厂实战经验资深大佬经验总结所得,数条可行方案供所需之人参考。

**My Coding Family** 1212

瑞芯微RV1109平台GT911触摸屏驱动调试记录1

很明显这里可以看到系统已经配置了i2c-0、i2c-1、i2c-3、i2c-4、i2c-5,当开机的时候系统已经将相应的I2C节点注册成功了,说明I2C部分是没有问题的。

bingdund的博客 297

AI/机器学习高效学习路线与实战指南

机器学习作为人工智能的核心技术,其学习路径需要系统化的设计。理解线性代数、概率论和微积分等数学基础是构建模型的基石,而Python工程化实践则是将理论转化为生产力的关键。在实际应用中,传统机器学习算法如Random Forest和SVM的参数调优与可解释性分析至关重要,而深度学习领域则需掌握Transformer等现代架构。计算机视觉(CV)和自然语言处理(NLP)作为热门方向,要求从业者不仅理解算法原理,还要具备从数据准备到模型部署的全流程能力。通过避免常见认知误区,如过度追求模型准确率或最新技术,学习者

weixin_34115824的博客 553

【2024年5月备考新增】《2024高项论文精华版(5)项目工作绩效域和度量绩效域》

3、专注于工作过程和能力。③专注于工作过程和能力。1、制定有效的度量指标。2、度量内容及相应指标。3、展示度量信息和结果。4、管理沟通和参与。7、监督新工作和变更。①制定有效的度量指标。②度量内容及相应指标。③展示度量信息和结果。5、基于度量进行诊断。

Else 的博客 1265

别只盯着ChatGPT!2025年企业真正需要的AI工程师培训课程是什么?

摘要:本文探讨了2025年AI工程师培训的新趋势,指出企业需求正从AIGC工具使用转向智能体开发与工作流整合。文章强调AI智能体将成为企业自动化的核心,需要具备规划推理、学习适应和执行能力。同时,未来AI工程师需掌握工作流整合技能,而非仅停留在提示词工程阶段。引用湖南培联文化的报告指出,具备智能体开发和商业应用部署能力的复合型人才将成为企业争抢的核心资产。建议开发者选择培训时关注前瞻性课程体系,确保知识体系与未来市场需求同步。

peilianwenhua的博客 330

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

ChatGPT催生的高薪职业,竟然会是它?

要想成为一名合格的提示工程师,需要了解 AI 工具的缺陷,增强它们的优势,博弈出复杂的策略,将简单的输入变成真正独特的结果。他们的工作内容主要是与从设计、研发的各个团队合作,以确保为客户提供有效的结果和更有价值的服务。据 insider 早前的报道,人工智能安全和研究公司 Anthropic 在招聘提示工程师时,开具的年薪在 28 万美元(约人民币 200 万元)到 37.5 万美元(约人民币 267 万元)之间,工作内容是构建出高质量的回复提示,为用户提供一个简单的指南来满足他们的需求。

隐私计算市场洞察 256

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

chatgpt赋能python:Python找工作攻略

本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程中用到的ai工具。

www_xuhss_com的博客 97

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

马斯克成立X.AI搞大模型,硬刚OpenAI,已囤万张GPU

来源:量子位为了“对抗”OpenAI,马斯克成立了一家新公司!这家公司名为X.AI,就目前看来,马斯克是这家公司的唯一董事。而“X”是马斯克最近成立的一个空壳公司,近期他已经将自己拥有的推特、SpaceX、特斯拉、Neuralink等所有公司打包加入其中。现如今,从马斯克再添X.AI来看,他已然是一副入局ChatGPT之争的架势。已经挖到DeepMind工程师那么马斯克的X.AI发展到了什么程度?...

深度学习技术前沿 279

学会使用AI,让其成为你的专家帮手

✍文章目标:帮助你学会正确的使用AI,让其扮演专家的角色,给与你更专业的建议

共同学习、强我国家 274

全球自动驾驶公司排名,特斯拉再次垫底

近日,公共与商业咨询公司 Guidehouse Insights 发布了最新的全球自动驾驶技术公司竞争力分析报告,特斯拉连续第三年在该榜单中排名垫底,评分仅28分。☞一位工程师搞崩了 Twitter,马斯克:代码太脆弱,全部重写! ☞“我们聘请 ChatGPT,让它当了一天 ML 工程师” ☞TIOBE 3月榜单发布,Go 闯进 Top 10、C++ 再次被 Java 反超!...

程序人生的博客 647
上一篇: 当我奶奶都开始用小红书,我觉得搜索引擎们不妙了。
下一篇: 终结者最强大脑!谷歌发布史上最大「通才」模型PaLM-E,5620亿参数,看图说话还能操控机器人
IT界那些事儿
博客等级 码龄6年 2万+粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值