DevOps-Eval:蚂蚁集团联合北京大学发布首个面向DevOps领域的大语言模型评测基准!

运维大模型评测基准OpsEval发布及解读 由清华大学、中国科学院计算机网络信息中心、南开大学、必示科技、中兴通讯、中亦科技、腾讯、华为、联想、国泰君安证券、基石数据、Zabbix中国宏时数据、日志易等多家首批社区成员单位共同发布了国内首个运维大语言模型评测基准OpsEval。 阅读详情

1. 背景

大语言模型在各类NLP下游任务上取得了显著进展。然而在DevOps领域,由于缺乏专门用于大型语言模型的评测基准,在有效评估和比较该领域大语言模型的能力方面存在严重不足。

为弥补这一不足,蚂蚁集团联合北京大学发布了首个面向DevOps领域的大模型评测基准DevOps-Eval,以帮助开发者跟踪DevOps领域大模型的进展,并了解各个DevOps领域大模型的优势与不足。

DevOps-Eval根据DevOps全流程进行划分,包含计划、编码、构建、测试、发布、部署、运维和监控这8个类别,包含4850道选择题。此外,DevOps-Eval还特别对运维/监控类别做了细分,添加日志解析、时序异常检测、时序分类和根因分析等常见的AIOps任务。由于DevOps-Eval根据场景对评测样本做了详尽的细分,因此除了DevOps领域大模型,也方便对特定领域大模型进行评测,如AIOps领域等。

目前,我们已发布了第一期的评测榜单,首批评测大模型包含OpsGpt、Qwen、Baichuan、Internlm等开源大语言模型;同时,DevOps-Eval相关论文也在紧锣密鼓地撰写中。我们欢迎相关从业者一起来共建DevOps-Eval项目,持续丰富DevOps领域评测题目或大模型,我们也会定期更新题库和评测榜单。

GitHub 地址:GitHub - codefuse-ai/codefuse-devops-eval: 首个开源的针对DevOps/AIOps领域大模型的评测基准!

HuggingFace 地址:https://huggingface.co/datasets/codefuse-admin/devopseval-exam

2. 评测数据

2.1. 数据来源

DevOps-Eval最终生成的样本格式都为单项选择题,采用此类格式的原因是单项选择题客观性高,不但能够提高样本收集效率,并且方便进行自动化评测。因此,我们收集样本的策略是尽可能获得选择题原题,或者通过某些手段生成或转换为选择题。经过统计,该项目的数据来源可以分为以下5大类:

  1. 选择题类试题:直接为选择题形式的公开试题,例如计算机通识类考试试题、DevOps专业考试试题等;
  2. 问答类试题:此类试题以问答题的形式出现,且已按照DevOps场景进行了有效划分,来源如超级码客、devops-exercises等,我们再在问答题基础上通过ChatGPT生成答案并转换为选择题;
  3. 开源数据集:基于开源数据集构造AIOps相关样本,例如基于LOGPAI的数据构造日志解析相关的选择题样本,基于TraceRCA的数据构造根因分析相关选择题样本;
  4. ChatGPT生成:某些细分场景缺乏现成的试题,我们使用场景关键词通过ChatGPT直接生成相应的选择题;
  5. 数据仿真生成:通过数据仿真的手段生成数据,例如时序异常检测、时序分类等试题。

2.2. 数据类别

DevOps-Eval根据DevOps全流程进行划分,共分为8个大类和53个子类,包含4850道选择题。其中,AIOps场景有4个,共计2200个中英文题目。每个子类分为dev数据集和test数据集。其中,dev数据集包含5个带有标签和解析的样例,用于few-shot评测;test数据集仅包含标签,用于模型评测。图2.1给出了DevOps-Eval数据的具体细分类别。若要进一步了解各个类别包含的具体内容,可以参考Github中更为具体的样本明细脑图。

图2.1 数据细分类别

2.3. 数据样例

2.3.1. DevOps

以下样本来自于CODE大类下的versionControl子类,主要考察git相关知识。

编号

4

问题

如何找到Git特定提交中已更改的文件列表?

A

使用命令 `git diff --name-only SHA`

B

使用命令 `git log --name-only SHA`

C

使用命令 `git commit --name-only SHA`

D

使用命令 `git clone --name-only SHA`

答案

A

解析

分析原因:git diff --name-only SHA命令会显示与SHA参数对应的提交中已修改的文件列表。参数--name-only让命令只输出文件名,而忽略其他信息。其它选项中的命令并不能实现此功能。

2.3.2. AIOps
  • 日志解析

编号

0

问题

下面是一些运行日志

0 04:21:15,429 WARN Cannot open channel to 2 at election address /10.10.34.12:3888

1 19:18:56,377 WARN ******* GOODBYE /10.10.34.11:52703 ********

2 19:13:46,128 WARN ******* GOODBYE /10.10.34.11:52308 ********

3 19:16:26,268 WARN ******* GOODBYE /10.10.34.11:52502 ********

4 09:11:16,012 WARN Cannot open channel to 3 at election address /10.10.34.13:3888

5 16:37:13,837 WARN Cannot open channel to 2 at election address /10.10.34.12:3888

6 09:09:16,008 WARN Cannot open channel to 3 at election address /10.10.34.13:3888

7 15:27:03,681 WARN Cannot open channel to 3 at election address /10.10.34.13:3888

日志最前面三部分别为序号、时间戳和日志Level,在不考虑这三部分内容的情况下,此处我们设定日志的变量用'<*>'代替,token与token之间用空格分隔,那么请问上述日志的日志模版具体是什么?

A

Notification time out: <*> 和 Connection broken for id <*>, my id = <*>, error =

B

Send worker leaving thread 和 Connection broken for id <*>, my id = <*>, error =

C

Received connection request /<*>:<*> 和 Interrupting SendWorker

D

Cannot open channel to <*> at election address /<*>:<*> 和 ******* GOODBYE /<*>:<*> ********

答案

D

解析

根据日志中的内容,选项D是最符合日志模板的。日志中包含了"Cannot open channel to &lt;*&gt; at election address /&lt;*&gt;:&lt;*&gt;"和"******* GOODBYE /&lt;*&gt;:&lt;*&gt; ********"这两个固定的模板片段,它们都在选项D中出现了。同时,其他选项中的模板片段与日志中的内容不匹配。因此,选项D是最符合日志模板的。

  • 时序异常检测

上述日志解析样例为给定日志给出具体模版,此外还有给定日志给出模版个数,给定日志模版判断哪些日志由给定模版生成。此外限于篇幅,此处不再展示时序分类和根因分析样例,具体可以查看HuggingFace数据集。

2.4. 数据下载

  • 方法一: 直接下载(也可以用浏览器打开下面的链接)
wget https://huggingface.co/datasets/codefuse-admin/devopseval-exam/resolve/main/devopseval-exam.zip
# 然后可以使用 pandas加载数据:
import os
File_Dir="devopseval-exam"
test_df=pd.read_csv(os.path.join(File_Dir,"test","UnitTesting.csv"))
  • 方法二:使用Hugging Face datasets库函数
from datasets import load_dataset
dataset=load_dataset(r"DevOps-Eval/devopseval-exam",name="UnitTesting")
print(dataset['val'][0])

3. 评测设置

3.1. 评测模型

一期我们选取了比较热门的不同参数大小、不同机构发布的通用大模型和运维领域大模型,具体细节如下表。后续我们也会评测更多其他的大模型。

模型类别

模型名称

参数量

通用大模型

Qwen-7B

7B

Qwen-7B-Chat

7B

Qwen-14B

14B

Qwen-14B-Chat

14B

Baichuan2-7B

7B

Baichuan2-13B

13B

Internlm-7B

7B

运维领域大模型

DevOps-Model-7B

7B

DevOps-Model-7B-Chat

7B

DevOps-Model-14B

14B

DevOps-Model-14B-Chat

14B

3.2. 评测方式

DevOps-Eval包含Zero-shot和Few-shot两种评测方式。其中针对DevOps题目,我们主要评测Zero-shot和Five-shot的结果。而针对AIOps题目,由于题目的token长度较长(如上面展示的日志解析样例,包含多行日志),Five-shot后的题干长度会超过2k个token。而大部分模型的训练的上下文就是2k,所以针对AIOps的题目,我们主要评测Zero-shot和One-shot的结果。

Base模型和Chat模型获取预测结果的方式如下:

  • Base模型:我们将问题输入大模型后,基于模型预测下一个Token的得分,获得分别对应A,B,C,D四个选项的得分,将得分最高的选项作为模型对于这道题预测结果;
  • Chat模型:我们先将问题转换为Chat模型对齐训练时使用的prompt,比如Qwen采用的是chatml的格式,Baichuan2是一种自定义的格式,采用模型对齐训练的格式能够使得模型更好地发挥其能力。当转换好后输入大模型,然后用和Base模型相同的方式获取预测结果。

4. 评测结果

4.1. 🏆 DevOps全流程评测榜单

4.1.1. 0-shot评测结果

如下图所示,0-shot评测结果中DevOpsPal-14B-Chat平均分最高,达到了80.34分,Internlm-7B-Base评分较低,为66.91分。从总体上来看,各模型的分数区分度不大。

4.1.2. 5-shot评测结果

如下图所示,5-shot的结果要稍好于0-shot,其中DevOpsPal-14B-Chat平均分依然最高,达到了81.77分,Internlm-7B-Base评分较低,为69.17分。从总体上来看,各模型的分数区分度也并不大,说明样本集难度偏低,后期需要区分下样本难度等级。

4.2. 🔥 AIOps场景评测榜单

4.2.1. 0-shot评测结果

从0-shot结果来看Qwen-14B-Base平均分最高,达到了49.27分,Internlm-7B—Chat评分较低,为32.0分。从总体上来看,各模型在AIOps类别的区分度明显变大。

4.2.2. 1-shot评测结果

1-shot的结果要稍好于0-shot,其中DevOpsPal-14B—Chat平均分最高,达到了53.91分,Internlm-7B—Chat依然评分较低,为32.73分。在不同细分类别的表现,根因分析得分相对较高,可能跟根因分析题目做了简化相对较为简单有关,而时序异常检测整体表现都不太好,当前大模型对时序类数据的处理依然有待提升。

5. 未来展望

未来我们将持续对DevOps-Eval项目进行优化,主要优化方向包括以下几点:

1)不断丰富评测数据集:

    • 当前DevOps全流程评测数据主要为中文,后续将增加英文题目;
    • 当前不同类别之间的数据量存在较大差异,需要持续补充数据集,平衡各类别的数据量;
    • 当前评测数据主要以知识类为主,后续将增加更多任务类题目,且题型将不局限于选择题,增加问答等形式;
    • 从DevOps全流程评测结果可以看出,当前评测模型之间得分差异较小,说明当前DevOps全流程的评测数据难度的区分度一般,需要对数据集增加难度分级;

2)重点关注AIOps领域:

    • AIOps一直是运维领域的研究热点,大模型与AIOps能碰撞出什么火花也是当前行业内最关心的话题。目前DevOps-Eval已涵盖4类常见的AIOps任务,后续将继续增加,直至覆盖运维领域的所有智能化任务;

3)持续增加评测模型:

    • 一期主要评测了一些主流的、规模不是很大的开源模型,后续将覆盖更多的模型,并重点跟踪评测面向DevOps和AIOps领域的大模型。

希望大家一起来共建DevOps-Eval,期待在大家的努力下,建立更准确、更全面的DevOps领域大模型评测体系,推动DevOps领域大模型技术的不断发展与创新。

6. 关于DevOpsGPT

DevOpsGPT是我们发起的一个针对DevOps领域大模型相关的开源项目,主要分为三个模块。本文介绍的DevOps-Eval是其中的评测模块,其目标是构建DevOps 领域LLM行业标准评测。此外,还有DevOps-Model、DevOps-ChatBot两个模块,分别为DevOps领域专属大模型和DevOps领域智能助手。我们的目标是在DevOps领域,包含开发、测试、运维、监控等场景,真正地结合大模型来提升效率、成本节约。我们期望相关从业者一起贡献自己的才智,来让“天下没有难做的coder”,我们也会定期分享对于 LLM4DevOps 领域的经验&尝试。

欢迎使用&讨论&共建
(1)ChatBot - 开箱即用的 DevOps 智能助手:GitHub - codefuse-ai/codefuse-chatbot: DevOps-ChatBot 是一个开源的 AI 智能助手,专为软件开发的全生命周期而设计,通过知识检索、工具使用和沙箱执行,能解答您开发过程中的各种问题。
(2)Eval - DevOps 领域 LLM 行业标准评测:GitHub - codefuse-ai/codefuse-devops-eval: 首个开源的针对DevOps/AIOps领域大模型的评测基准!
(3)Model - DevOps 领域专属大模型:GitHub - codefuse-ai/CodeFuse-DevOps-Model: DevOps-Model 是一系列 DevOps 领域的大模型,旨在回答整个开发运维生命周期中所有产生的问题。做到有问题,问 DevOps-Model !

AIOps探索 | 基于大模型构建高效的运维知识及智能问答平台(1) 运维大模型,当下有什么落地场景? 阅读详情

相关推荐

通过大语言模型理解运维故障:评估和总结

本文根据南开大学软件学院张圣林教授在2023 CCF国际AIOps挑战赛决赛暨“大模型时代的AIOps”研讨会闪电论文分享环节的演讲内容整理,欢迎大家学习交流~

weixin_52705010的博客 1786

【论文阅读】OpsEval

信息技术(IT)运营(Ops),特别是用于IT运营的人工智能(AlOps),是保持现有信息系统有序和稳定运行的保证。根据Gartner的预测,将人工智能技术用于自动化IT运营已成为一种新趋势。大型语言模型(LLM)在NLP相关任务中表现出非凡的能力,在AlOps领域显示出巨大的潜力,例如在故障的根本原因分析、操作和维护脚本的生成以及警报信息的总结等方面。尽管如此,当前LLM在运营任务中的表现尚未确定。需要一个全面的基准来优化为Ops(OpsLLM)量身定制的LLM。

wangyifan123456zz的博客 1592

让天下没有难做的开发和运维,DevOps终于有了专属大模型,蚂蚁和北大联合发布

针对 QA 数据,我们的目标是想让模型不仅能够对齐到通用的问答能力,针对 DevOps 领域也可以学会如何更好的回答问题,因此不但收集了通用领域的单轮和多轮对话数据,还针对 DevOps 领域,通过爬取和 ChatGPT 生成的方式产出了属于 DevOps 领域的问答数据。希望能有更多伙伴加入共建 DevOps-Model 和 DevOps-Eval的行列,期待在大家的共同努力下,建立更准确、更全面的 DevOps 领域大模型评测体系,推动 DevOps 领域大模型技术的不断发展与创新。

银行信息系统应用架构详解 290

DevOps-Model:面向DevOps领域的大语言模型现已开源

DevOps-Model 是蚂蚁集团联合北京大学发布面向中文 DevOps 领域的大语言模型,通过收集 DevOps 领域相关的专业数据,再针对模型进行语言模型的加训和对齐训练,产出可以帮助工程师在整个开发运维生命周期提效的大模型。弥补当前大模型在 DevOps 领域的缺失,旨在做到有问题,问 DevOps-Model!当前我们已经开源了 7B 和 14B 两种规格的经过加训得 Base 模型和经过对齐后的 Chat 模型,同时还开源了对应的训练代码,欢迎大家一起合作建设!

CodeFuse的博客 627

AI大语言模型的部署与运维策略

1. 背景介绍 1.1 人工智能的崛起 随着计算机技术的飞速发展,人工智能已经成为了当今科技领域的热门话题。特别是近年来,深度学习技术的突破性进展,使得人工智能在众多领域取得了显著的成果。其中,自然语言处理(NLP)领域的大语言模型(Large Language Model,简称LLM)更是备受关注。

AI天才研究院 347

[uboot] (第一章)uboot流程——概述

[uboot] uboot流程系列: [project X] tiny210(s5pv210)上电启动流程(BL0-BL2)建议先看《[project X] tiny210(s5pv210)上电启动流程(BL0-BL2)》,根据例子了解一下上电之后的BL0\BL1\BL2阶段,以及各个阶段的运行位置,功能。==============================================

ooonebook的博客 1万+

DevOps-Model

针对 QA 数据,我们的目标是想让模型不仅能够对齐到通用的问答能力,针对 DevOps 领域也可以学会如何更好的回答问题,因此不但收集了通用领域的单轮和多轮对话数据,还针对 DevOps 领域,通过爬取和 ChatGPT 生成的方式产出了属于 DevOps 领域的问答数据。希望能有更多伙伴加入共建 DevOps-Model 和 DevOps-Eval的行列,期待在大家的共同努力下,建立更准确、更全面的 DevOps 领域大模型评测体系,推动 DevOps 领域大模型技术的不断发展与创新。whaosoft

whaosoft143ai的博客 284

保姆级避坑指南:用Docker在Ubuntu 22.04上部署Isaac Sim 5.1.0,搞定宇树G1仿真环境

本文提供了一份详细的保姆级避坑指南,帮助用户在Ubuntu 22.04上通过Docker部署Isaac Sim 5.1.0,并成功搭建宇树G1仿真环境。文章涵盖了环境准备、Docker与NVIDIA容器工具包的配置、Isaac Sim镜像的定制化拉取与配置,以及宇树G1仿真环境的实战调试,旨在帮助开发者高效解决部署过程中的常见问题。

weixin_33728268的博客 207

0门槛!用ChatGPT只花1天批量生成300个爆火TikTok视频

针对 QA 数据,我们的目标是想让模型不仅能够对齐到通用的问答能力,针对 DevOps 领域也可以学会如何更好的回答问题,因此不但收集了通用领域的单轮和多轮对话数据,还针对 DevOps 领域,通过爬取和 ChatGPT 生成的方式产出了属于 DevOps 领域的问答数据。不露脸,不怕视频也能从TikTok赚到钱?当前的模型词表是从比较通用的语料中产出的,然后针对 DevOps 领域,有一些专有的词汇并不在词表中,所以下一步会产出 DevOps 领域的专有词表加到 tokenizer 中来提升模型的效果。

mrjieke6的博客 965

【项目实战-MATLAB】:基于机器学习的虹膜识别系统设计

虹膜识别主要包括虹膜定位、虹膜裁剪、极坐标变换、归一化、HOG特征提取、虹膜识别六个主要步骤。本系统采用MATLAB作为开发工具实现 主要算法:霍夫变换预处理 HOG特征提取 SVM进行识别

qq_45047246的博客 6537

2025.06.18【转录组】|Ribo-seq/small RNA数据分析:rRNA和smRNA比对率统计全流程

本文介绍了一种自动化统计rRNA/smRNA比对率的方法,用于评估Ribo-seq或small RNA测序数据的质量。主要内容包括:分析原理(比对率定义、参考序列来源)、实践流程(构建索引、比对统计)以及结果可视化方法。通过Python和R脚本实现自动化处理,可生成汇总表格和柱状图。比对率结果能反映样品污染程度,建议控制在20%以下。该流程有助于快速评估测序质量,为后续分析提供可靠依据。文中还提供了常见问题解决方案和脚本示例,适用于生物信息学标准化质控环节。

1615

老杨说运维 | 历时180天,跟复旦大学共研的运维大模型终于来了!

大模型与AIOps结合究竟有什么能力?如何能更好的在实际中进行应用?——复旦大学计算机学院教授 & 擎创科技首席数据家 王鹏与您分享大模型在智能运维中的实践探索经验。

智能运维及数据中台探索 3807

java毕设:基于springboot的服装搭配推荐系统(springboot+layui+jq+html)1011

项目描述 基于springboot的服装搭配推荐系统: 基于天气服装搭配推荐系统为用户提供未来一周的天气预报情况,并根据预报天气和用户现有的服装进行着装搭配,以及显示未来6小时精确温度数据为用户提供更精确的天气信息便于用户在出行前对自己的着装进行调整,每日用户可以根据自己当日对系统推荐的着装搭配舒适度进行反馈,系统将根据用户的反馈对用户着装的保暖系数进行相应调整,通过多次的反馈和调整形成对用户着装的个体化和精确化的推荐。 本系统可以为用户提供以下服务: 1.未来五天的天气信息显示; 2.未来六小时内天气温度

qq_2537071370的博客 3646

DataSophon——国产开源一站式运维平台

DataSophon——国产开源一站式运维平台

luo981695830的博客 1万+

SystemUI-下拉去掉后去掉用户切换-去掉电源按键中的紧急呼叫

这里自己倒腾完成了两个常见需求:去除用户切换、去除紧急呼叫UI在去除用户切换时候,用到了Compose知识点,所以很难按照以前经验去找对应布局、找对应的View Item ,以往方法都只能部分借鉴的搞系统的还是要跟着谷歌学一点Compose技能了,方便日常开发调试。

十年饮冰,难凉热血 1459

智能车图像处理3-入门级分析2 ---直道冲刺

PS :入门级文章适合新手,如果已经有基础可以去看进阶篇文章。

taiyuezyh的博客 4308

DevOps-Eval终极指南:如何评估大模型在DevOps领域的真实能力

想要了解AI大语言模型在DevOps领域的真实表现如何?DevOps-Eval就是你的最佳选择!这个开源项目专门为大语言模型在DevOps领域的知识评估提供了一个全面的基准测试框架,帮助开发者和研究人员准确衡量模型在工具调用、代码理解、自动化运维等方面的能力表现。 ## 🔍 什么是DevOps-Eval? DevOps-Eval是一个专门针对DevOps领域知识的大语言模型评估基准。通过精心

gitblog_00490的博客 964

DFIG风电场经LCC-HVDC外送系统SIMULINK建模与仿真

本文基于MATLAB/Simulink平台构建了DFIG风电场经LCC-HVDC外送系统的仿真模型。系统采用1000MW聚合DFIG模型与双极12脉动LCC-HVDC连接,详细阐述了参数设计、控制策略及接口协调方法。重点解决了风电场无功能力不足、功率波动影响换相等关键技术问题,为大规模风电基地外送提供了仿真研究框架。模型整合了官方DFIG和HVDC详细模块,通过参数缩放和控制系统优化,实现了完整系统的动态仿真分析。

huanghm88的专栏 119

DevOps 内容分享(十):在大模型下重新定义的DevOps

这种合作通过自动化软件开发、测试、部署等流程来实现,目的是加快软件交付的速度,同时保持高水平的可靠性和安全性。在传统的IT组织结构中,开发、运维和质量保障通常是分离的部门,这导致了效率低下和协作障碍。DevOps运动正是针对这些问题,推动了一个更加融合的工作模式。它强调自动化和持续集成/持续部署(CI/CD)实践,使软件开发和运维活动能够无缝地结合在一起。DevOps的关键要素包括:1.:自动化构建、测试、部署等环节,减少手动操作,提高效率和准确性。2.

之乎者也·的博客 1550

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

devops model

1,自动部署() 2,在线监控 (可视化,智能化) 3,故障诊断 (故障识别,故障隔离) 4,快速定位 (识别环境与程序,数据等问题) 评测工具开发---- 统计条目增加大项目; BI中权限―拨测数据查看; 代码行统计:新增,注释行比例; Sonarqube,fortify 代码检查―更加应该找出无效代码---无论tool/manual,---...

weixin_30539835的博客 224

深度学习工具包 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")

一定要看看的大模型【评测基准】及【评测报告】

针对于复杂任务,每个模型都要多次测试其对指示模版的适应程度。

weixin_44077556的博客 1万+

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

DevOps概念及搭建全过程(Jenkins、Harbor、SonarQube、K8s)

DevOps概念及搭建全过程(Jenkins、Harbor、SonarQube、K8s)

weixin_45565886的博客 5万+

LLM DevOps 平台:加速大模型应用开发

bisheng 是一款开源的 LLM DevOps 平台。 该项目旨在赋能和加速大模型应用开发,帮助用户以最佳体验进入下一代应用开发模式。

pythonhy的博客 1241

详解LLMOps,将DevOps用于大语言模型开发

在当今快速发展的语言模型领域,LLM-OPS代表了一项重要的技术突破,它架起了数据科学与DevOps之间的桥梁。通过整合Git Flow、基础设施即代码(IaC)、零信任安全框架和不可变工件等先进实践,LLM-OPS极大地提升了数据科学家在开发大型语言模型(LLM)时的效率,帮助顺利应对各种挑战。这些综合能力不仅推动了生成式AI技术在众多应用程序中的深度融合,也为未来的技术创新奠定了坚实基础。

csdn1561168266的博客 2481

利用AI大模型,增强你的DevOps!

自从去年春天ChatGPT问世之后,互联网也掀起了拥抱AI的浪潮,不仅是各大头部大厂相继发布大模型产品,在开发者的Coding过程中也紧跟时代,一些热门插件也纷纷受到了开发者的青睐,比如GitHub Copilot的智能代码生成。本人也不例外,用起来是真滴香!既然AI可以帮助我们解决如此多的开发相关的问题,那么我们如何可以更高效更合理地去利用AI来帮助我们提升开发效率呢?

2401_85343303的博客 1520
上一篇: 在 Visual Studio Code 中使用 CodeFuse
下一篇: CodeFuse-MFTCoder 提升 CodeGeeX2-6B 代码能力
CodeFuse
博客等级 码龄3年 630粉丝 74原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值