Agent 知识总结

知识图谱集成:扩展AI Agent的知识储备 知识图谱(Knowledge Graph)是一种用于表示实体之间关系的语义网络,它通过图形结构来组织信息,使得信息之间的关系更加直观和清晰。知识图谱的核心是实体(Entity)、属性(Property)和关系(Relationship),这三个要素共同构成了知识图谱的基本结构。实体:知识图谱中的基本元素,可以是人、地点、物品等。实体是知识图谱中表示知识的主要对象。属性:描述实体的特征或属性,如人的年龄、地点的经纬度等。属性为实体提供了更详细的信息。关系:实体之间的关系,如“朋友”、“属于”等。 阅读详情

【第1节】Agent如何工作的?


1. 核心:感知,决策,行动,反馈
2. 过程:用户提问-》Agent思考行动(React 思考方式,Reasoning+Acting 的迭代式决策逻辑)-》根据意图选择工具-》执行工具-》结果加工-》输出答案;
3. Agent React 思考方式:是当前前沿多智能体系统的核心决策机制,指智能体通过 “观察 - 推理 - 行动 - 反馈” 的闭环流程,实现复杂任务的自主拆解、动态调整与高效执行。Agent React 思考方式的突破,使 AI 从 “信息提供方” 升级为 “任务执行方”。

【第2节】Agent架构组件


1. Tool(工具)
核心作用:单个功能模块,比如查天气、查汇率。每个工具专注做一件事。
特色说明:强调工具是 “解决单一任务” 的执行单元,每个工具只负责一个具体功能,不做通用推理。
2. AgentType(代理类型)
核心作用:决定 Agent 如何 “思考” 和 “推理”,常见的有 ReAct(反应式推理)。
特色说明:直接点明这是定义 Agent 的 “思考方式”,即它的推理逻辑和决策模式。
3. LLM(大模型)
核心作用:Agent 的大脑,负责理解和推理,常用模型如 qwen-turbo。
特色说明:标注 “内容”,突出大模型是整个智能代理的核心认知引擎,负责理解指令、生成逻辑、驱动决策。
4. initialize_agent(初始化代理)
核心作用:把大脑(LLM)和工具们组合起来,生成一个能跑的智能助手。
特色说明:标注 “组”,强调它是 “组装器” 的角色,将大模型与各类工具整合,形成完整可用的智能代理系统。

【第3节】LangChain与LangGraph区别


1. LangChain:大模型应用开发工具集 / 框架,提供海量组件(如数据加载、提示词、工具调用、记忆等);
2. LangGraph:基于 LangChain 构建的有状态多智能体工作流框架,专注于复杂、循环、多步骤的智能体流程编排
3. 若仅需实现简单功能(如 RAG 问答、单轮工具调用、基础对话),直接用 LangChain 即可,轻量高效;
4. 若需实现复杂流程(如多轮推理、循环重试、多智能体协作),基于 LangChain 组件,用 LangGraph 编排流程;
5. 核心区别:LangChain 是 “组件库”,覆盖大模型应用全链路;LangGraph 是 “流程编排引擎”,专注复杂闭环工作流,依赖 LangChain;
6. LangGraph 通过节点角色划分和状态共享实现多智能体交互。def researcher_agent(state):
    # 调用工具获取数据,更新状态
    state["research_data"] = call_search_tool(state["query"])
    return state

def analyst_agent(state):
    # 分析数据,生成结论,更新状态
    state["analysis_result"] = analyze_data(state["research_data"])
    return state

# 定义多智能体协作流程
graph.add_node("researcher", researcher_agent)
graph.add_node("analyst", analyst_agent)
graph.add_edge("researcher", "analyst")

【第6节】记忆对话的Memory的类型


1. ConversationBufferMemory:描述:存储按顺序的对话历史;适用场景:简单对话
2. ConversationBufferWindowMemory:描述:存储固定大小的对话窗口,保留最近 N 条对话;适用场景:长对话,保留最新的对话
3. ChatMessageHistory:描述:记录对话的每条消息(更细粒度的历史);适用场景:复杂聊天场景
4. EntityMemory:描述:记录和处理实体信息(如人物、地点等);适用场景:需要记住实体的场景
5. MapMemory:描述:存储键值对,适用于状态管理,适用场景:需要键值对存储的场景
6. CustomMemory:描述:自定义的记忆类型;适用场景:特定需求


【第7节】Prompt 设计原则和优化方法


一、 设计原则
清晰明确:界定任务目标、输出格式、约束条件,无歧义表述。
指令前置:核心指令置于开头,优先引导模型聚焦任务。
上下文适配:提供必要的背景信息、领域知识或对话历史。
格式约束:明确输出格式,降低后续处理成本。
简洁性:剔除无关信息,避免注意力分散。
可验证性:要求输出附带依据、来源或推理过程。
二、 优化方法
迭代式优化:测试 - 反馈 - 调整,循环提升 Prompt 质量。
角色设定:赋予模型专业角色,锚定知识范围与语言风格。
Few-Shot 提示:嵌入输入 - 输出示例,传递任务逻辑。
任务拆解:拆分复杂任务为简单子任务,分步引导完成。
约束强化:明确禁止项与边界条件,限定内容范围、长度、合规要求。
关键词强调:标注核心关键词,引导模型重点关注。

【第8节】ReAct Agent 概念


一、 定义
ReAct Agent 是一种基于大语言模型的智能体框架,通过交替执行推理(Reasoning)和行动(Acting)的循环(TAO 循环)来完成任务。其核心设计源自 2023 年 ICLR 会议论文《ReAct: Synergizing Reasoning and Acting in Language Models》。
二、 核心原理与设计
1. TAO 循环机制
思考(Thought):分析问题并规划行动路径。
行动(Action):调用工具(如搜索引擎、API 等)执行具体操作。
观察(Observation):评估行动结果并反馈至下一轮循环,直至任务完成。
2. 优势
结合内部推理与外部工具,减少模型幻觉。
具备动态决策能力,支持多工具协同和实时环境适应。

【第9节】ReAct Agent 图解

ReAct (Reasoning + Acting) 是目前最经典的智能体模式。它的逻辑很像人类解决陌生问题:思考 -> 行动 -> 观察 -> 再思考。
ReAct范式

核心Prompt设计

ReAct的灵魂在于Prompt,你必须教会它“按格式说话”:

REACT_PROMPT = """
尽你所能回答以下问题。你可以使用以下工具:
[Search]: 用于搜索未知信息

请严格遵循以下格式:
Question: 需要回答的问题
Thought: 你现在的思考过程
Action: [Search]
Action Input: 搜索的关键词
Observation: 工具返回的结果
... (重复 Thought/Action/Observation)
Final Answer: 最终答案
"""

它不是一次性把事做完,而是像走迷宫一样,一步步试探。

核心代码逻辑

这就是ReAct的“引擎”部分,一个简单的while循环就能实现:

def react_agent(question):
    prompt = REACT_PROMPT + f"\nQuestion: {question}"
    
    while True:
        # 1. 让LLM思考并决定行动
        response = get_completion(prompt)
        
        # 2. 如果LLM决定结束,直接返回
        if "Final Answer:" in response:
            return response.split("Final Answer:")[-1]
        
        # 3. 解析LLM想调用的工具和参数
        action, action_input = parse_action(response) # 简单的正则提取
        
        # 4. 执行工具(Hands)
        observation = search(action_input)
        
        # 5. 将执行结果反馈给LLM(闭环关键!)
        prompt += f"\n{response}\nObservation: {observation}"

点评: ReAct最强的地方在于容错。如果第一步搜错了,LLM看到Observation不对,会在下一轮Thought里自我纠正。

【第10节】MCP 解析

MCP 的本质是通过客户端将用户的 Prompt 与可用工具列表一并发送给 LLM。LLM 在理解意图后,会返回需要调用的工具名称及其对应参数。随后,MCP 客户端通过定义好的统一接口调用对应工具,完成实际执行。

用户输入 Query
        │
        ▼
MCP 客户端构造请求(Prompt + 工具列表)
        │
        ▼
       LLM
        │
        ▼
解析 Prompt,返回工具名 + 参数
        │
        ▼
MCP 客户端通过统一接口调用对应工具
        │
        ▼
     工具执行并返回结果复制

以官方的client 代码举例,通过self.session.list_tools()方法获取所有的tool,然后构建一个Claudi api call,让大语言模型去判断是否调用工具

 """Process a query using Claude and available tools"""
    messages = [
        {
            "role": "user",
            "content": query
        }
    ]

    response = await self.session.list_tools()
    available_tools = [{
        "name": tool.name,
        "description": tool.description,
        "input_schema": tool.inputSchema
    } for tool in response.tools]

    # Initial Claude API call
    response = self.anthropic.messages.create(
        model="claude-3-5-sonnet-20241022",
        max_tokens=1000,
        messages=messages,
        tools=available_tools
    )

接下来如果返回内容中content的类型是tool_use,则获取tool的名称及入参,然后调用call_tool方法(mcp库提供),进行方法调用,并获得最终的结果

 assistant_message_content = []
    for content in response.content:
        if content.type == 'text':
            final_text.append(content.text)
            assistant_message_content.append(content)
        elif content.type == 'tool_use':
            tool_name = content.name
            tool_args = content.input

            # Execute tool call
            result = await self.session.call_tool(tool_name, tool_args)
AI Agent的知识图谱构建与推理机制 AI Agent,即人工智能代理,是指能够在特定环境下自主感知、决策和执行任务的智能实体。AI Agent的分类可以根据其自主性、任务复杂度和应用场景进行划分。感知型Agent:这类Agent主要依靠环境传感器获取信息,如语音识别、图像识别和自然语言处理,但不能进行复杂的决策。决策型Agent:这类Agent不仅能感知环境,还能基于感知信息进行推理和决策,如自动驾驶系统中的路径规划Agent。执行型Agent:这类Agent负责将决策结果付诸实施,如机器人执行指定任务。 阅读详情

相关推荐

基于知识图谱的Agent推理机制

1. 背景介绍 在当今人工智能和大数据时代,知识图谱作为一种结构化的知识表示形式,已经广泛应用于各个领域,如智能问答、精准推荐、知识推理等。知识图谱通过实体、属性和关系的方式,将知识进行有机整合,为各类智能应用提供了坚实的知识基础。而作为知识图谱核心的推理机制,则决定了智能系统的推理能力和决策水平。 本文将重点探讨基于知识图谱的Agen

AI天才研究院 1256

Agent基础知识学习,看这一篇就够了!

OpenAI的研究员 Lilian 写过一篇博客:《 LLM Powered Autonomous Agents》,将 Agents 定义为:LLM + memory + planning skills + tool use,即大语言模型、记忆、任务规划、工具使用的集合。Overview of a LLM-powered autonomous agent system.大语言模型 (LLM)是 Agent 的大脑,要求 Agent 具备以下 3 种能力来配合大脑完成任务:ReAct 的提示模板,大致格式如下

h1453586413的博客 3060

构建AI Agent的动态知识蒸馏机制

本文旨在探讨如何构建一个高效的AI Agent动态知识蒸馏机制。我们将首先介绍AI Agent的背景和动态知识蒸馏的概念,接着深入探讨其核心原理和实现方法,最后通过具体项目实战验证其有效性和实用性。

SuperAGI2025 865

什么是Agent?小白如何学习使用Agent?大模型时代的Agent开发:从理论到实践(建议收藏)

什么是Agent?为什么需要Agent?Agent的核心概念Agent的工作原理Agent的架构设计Agent的类型分类实际应用场景开发指南最佳实践常见问题解答总结Agent(智能代理)是一种能够感知环境、制定决策并自主执行行动的智能系统。它是人工智能领域的重要概念,代表了从被动响应到主动行动的技术演进。理论基础人工智能基础概念机器学习和深度学习自然语言处理技术强化学习理论技术实践熟悉主流AI框架(TensorFlow、PyTorch)掌握大语言模型应用学习Agent开发框架。

jennycisp的博客 1482

知识点12:案例实战:多Agent知识问答系统

QA Agent(回答Agent):负责最终回答用户的问题Retrieval Agent(检索Agent):负责从知识库中搜索相关信息Verification Agent(验证Agent):负责验证答案的准确性和完整性这三种Agent将协同工作,共同完成复杂的问答任务,特别是在需要准确、可靠信息的场景中,如公司政策查询、技术支持等。本案例实战中,我们构建了一个多Agent知识问答系统,该系统通过三个不同类型的Agent协同工作,共同完成复杂的问答任务。分工明确。

lpfasd123的博客 730

AI Agent的知识图谱补全技术

知识图谱是一种用于表示实体及其相互关系的语义网络,它通过将数据结构化为图来描述实体和它们之间的关联。这种结构化表示方法使得知识图谱在处理复杂数据时具有显著的优越性,因为它能够捕捉数据的复杂性和多样性。知识图谱是一种用于描述信息之间关系的语义网络,其中信息可以是实体、概念或属性,关系则是实体之间的交互。知识图谱的概念最早可以追溯到 20 世纪 80 年代的本体论研究和语义网项目。随着时间的推移,知识图谱的应用逐渐扩展到互联网、企业信息系统、搜索引擎等多个领域。

AI架构师小马 934

AI Agent开发学习路径:从入门到精通

阶段持续时间核心目标关键技术项目产出基础准备1-2周理解概念,搭建基础Python, API, LangChain基础概念验证Demo初级开发3-4周基础Agent实现工具调用, Prompt工程简单自动化工具中级开发4-6周增强Agent能力RAG, 记忆管理, 推理复杂任务处理系统高级开发6-8周复杂系统构建多Agent协作, 自治系统商业级解决方案专家拓展持续前沿探索与优化多模态, 行业应用创新产品与服务。

qq_20559365的博客 3670

4.6 知识库使用指南:如何让AI Agent拥有专业知识

本文介绍了如何为AI Agent构建和使用知识库。知识库的作用是为Agent提供专业知识,包含文档、数据和规则,可用于专业问答和知识检索。使用方法包括创建知识库(上传文档)、向量化处理、知识检索以及在Agent中的应用。核心要点是理解知识库的价值和使用流程。文章还提出了构建方法、检索优化和应用实践等思考题,建议准备高质量数据、优化检索效果并持续更新知识库。下节将介绍用LangGraph构建复杂AI应用。

yonggeit的博客 3011

【2026 最新】【Agent 开发】后端完整学习路线:从 LLM API 调用到生产级多 Agent 系统,按阶段学,不走弯路

本文为2026年Agent后端开发学习路线指南,面向有Python后端基础的开发者。文章将学习路径分为四个阶段:1)LLM API基础(2-3周),掌握API调用、Prompt工程和流式输出;2)工具调用与RAG(3-4周),学习Function Calling和向量数据库;3)Agent框架与MCP(4-6周),掌握LangGraph等框架;4)生产级多Agent系统(6-8周),学习编排和可观测性。每个阶段都设有里程碑项目,强调后端工程能力(如异步设计、可靠性)比AI知识更重要,并提供了技术栈选型和常见

小李同学_LSH的博客 1619

DQN网络代码调用env.reset()后存储观测信息报错问题ValueError: setting an array element with a sequence.解决处理

**reset()函数返回的是一个array类型以及其中数据的type!模拟游戏进行学习任务。因此需要将observation指定为真正需要的array信息即可,得到的的变量observation类型与Agent存储时的。因此怀疑返回的observation有问题,于是通过。报错信息提示为数据维度不对应,也即最初通过。在强化学习DQN网络代码实现过程中,针对。

Vulcan_Q的博客 4093

Ubuntu18.04 SoftRoCE安装教程

目标:创建两台Ubuntu18.04虚拟机,安装SoftRoCE环境,一台作为Server,一台作为Client,模拟RDMA通信环境,熟悉RDMA的通信方式。

GGGYL111的博客 1549

Agent 快速学习指南

Agent(智能体)是能够自主感知环境、做出决策并执行行动的 AI 系统。自主性:能够独立运行,无需持续人工干预感知能力:能够获取和处理环境信息决策能力:基于感知信息做出合理决策执行能力:能够执行具体的行动和操作tools = ["description": "读取文件内容","description": "文件路径"},},"description": "写入文件内容",},

gaoyunwei的博客 712

基于STM32与OV7670的嵌入式视频监控系统设计与实现

本文详细介绍了基于STM32单片机与OV7670摄像头的嵌入式视频监控系统设计与实现。从硬件选型、电路设计到软件开发,涵盖了摄像头驱动、TFT显示优化及图像处理等关键技术,提供了实用的调试技巧和性能优化方案,为低成本、高效率的视频监控系统开发提供完整解决方案。

desk3的博客 802

Agent系统的知识召回

概述向量:提取标题/首段的语义特征(长度<100 token),适配"什么是XXX"类模糊查询内容向量:编码完整文本的深度语义(长度500-1000 token),解决"如何实现XXX"类细节问题。

qq_32205577的博客 847

【教程4>第2章>第18节】 GMSK调制系统的FPGA开发与matlab对比验证

GMSK(高斯最小频移键控)是一种连续相位的频移键控(CPFSK)调制方法,它在数字通信中得到了广泛应用,特别是在移动通信系统中。GMSK通过限制频率偏差的累积来减少带外辐射,并通过使用高斯滤波器对。

FPGA/MATLAB学习教程/源码/项目合作开发 998

【机器学习-09】特征工程

特征工程是机器学习模型构建的初步工作,但它的重要性却贯穿整个模型生命周期。在进行特征工程时,我们需要充分利用数据科学的知识和技巧,结合具体的应用场景和业务需求,来制定出最合适的特征提取和转换策略。只有这样,我们才能为机器学习模型提供最有价值的输入,从而使其发挥出最大的潜力。总之,特征工程是机器学习中的一项关键任务,它需要我们用心去探索、去实践、去创新。只有不断地优化和完善特征工程的过程,我们才能构建出更加准确、更加可靠的机器学习模型,为实际应用带来更大的价值。

qq_38614074的博客 2万+

Agent知识库:功能、原理浅析

随着LLM不断发展,基于LLM的Agent今年来十分火热。Agent知识库不仅可以存储大量的信息,还包含了丰富的规则、算法和模型,是Agent实现智能化决策和行动的关键。本文将介绍Agent知识库的功能、原理以及相关落地应用。领域学科知识、企业知识、经验知识、特定场景的内容知识、推理规则、学习算法等,涵盖事实、规则、算法等方面。

letsgogo7的博客 3762

3 路由引入

在大型企业网络中,网络规模十分庞大,选用单一的路由协议无法满足网络的需求,因此多种路由协议共存的情况十分常见。或者出于业务逻辑或行政管理的考虑,会在不同的网络结构中设计和部署不同的路由协议,使路由的层次结构更加清晰可控。路由引入是具有方向性的,将路由信息从路由协议A引入到路由协议B(A-to-B),则路由协议B可获知A中的路由信息,但是此时,A还并不知晓B路由协议中的路由信息,除非配置B-to-A的路由引入。表3-1:各种路由协议的优先级。通过路由引入,可以实现路由信息在不同路由协议间传递。

lwljh134的博客 621

智能Agent场景实战指南 Day 17:Agent知识库集成策略

医疗咨询Agent需要整合最新医学研究成果法律顾问Agent必须接入法规条文数据库技术支持Agent需要产品文档作为知识来源金融分析Agent依赖市场实时数据知识库集成是增强Agent专业能力的核心技术RAG架构平衡了知识覆盖与生成灵活性混合检索策略可提升结果相关性金融等专业领域需要额外的验证机制。

在未来等你的专栏 1116

基于STM32设计的智能家居控制系统(华为云)_363

本项目设计并实现了一种基于STM32的智能家居控制系统,融合了语音识别、远程控制、环境监测与安全报警等功能。系统以STM32F103C8T6单片机为核心控制器,集成ESP8266 Wi-Fi模块实现与华为云IOT物联网平台的数据交互,采用MQTT协议进行通信。用户可通过语音识别模块控制风扇、空调、窗帘、卧室灯、客厅灯和电视等家电的开关操作,同时也可通过Android手机APP或Windows电脑上位机进行远程控制。系统还具备温湿度、光照强度、烟雾浓度和火焰检测功能,当检测到异常情况时,自动触发蜂鸣器报警并向

881

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

用 RAG 给 Agent 接入内部知识

真正可靠的 Agent 不能只依赖模型参数和当前会话,它必须能回到内部资料:查规范、查操作手册、查项目文档,并把回答依据讲清楚。

pythonhy的博客 204

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

AI研发知识图谱:RD-Agent知识库构建工具

在AI研发过程中,数据科学家和算法工程师经常面临知识碎片化、经验难以复用的挑战。RD-Agent作为一款开源研发自动化工具,提供了强大的知识库构建工具,通过知识图谱(Knowledge Graph)和向量库(Vector Base)双引擎架构,实现研发知识的系统化管理与高效复用。本文将深入解析RD-Agent知识库构建工具的技术架构、核心功能与实战应用,帮助研发团队构建智能化知识管理系统。 ##...

gitblog_00431的博客 986

IDEA的使用指南

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

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

上一篇: Agent Skill 技术架构研究
下一篇: 战略洞察:MAAS平台在三医领域的应用案例分析
常耀斌
常耀斌 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄8年 1812粉丝 611原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值