首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏全栈程序员必看

    记忆化递归(记忆化搜索)

    我看了答案还是有些不能完全理解,于是又去b站翻了翻教程基础DP,其中提到记忆化的递归(也称记忆化搜索),相当于结合了dp和递归的优点(这时我又觉得比DP还厉害),然后就准备写写记忆化递归。 ---- 目录 ​ 1.记忆化递归的解释与分析 ​ 2.记忆化递归的应用 ---- 一、记忆化递归的解释与分析 前面说道它结合了dp和递归的优点,分别是记忆化和逻辑清晰易懂。 记忆化递归则更加”投机取巧“了,它只计算了需要用的值并储存起来,而其它不会用到的值不去计算,最大化地减少了计算。 打个比方,dp就相当于计算了一个方阵上所有的点(无论有没有利用价值),而记忆化递归相当于计算了方阵上有价值的点,因此记忆化递归的运行时间可能比dp还要短。 (注意只是可能,因为斐波那契数列无论是dp还是记忆化递归,都是要把前面的值全部算出来的) ---- 二、记忆化递归的应用 感觉没啥写的,就拿分配宝藏来写shui一写shui吧。题目在这里。

    68460编辑于 2022-09-17
  • 来自专栏程序员

    智能体(Agent)的记忆架构:深入解析短期记忆与长期记忆

    在人工智能领域,尤其是基于大语言模型(LLM)的智能体(Agent)系统中,记忆机制是实现持续、连贯和个性化交互的核心基石。记忆系统模拟了人类的认知结构,通常划分为短期记忆和长期记忆。 第一章:短期记忆——智能体的工作记忆与意识流1.1定义与本质短期记忆是智能体用于处理当前任务或单次会话的临时信息存储区。 检索当新的会话开始时,Agent不会加载整个长期记忆库(那样会瞬间爆满短期记忆)。相反,它会根据当前的用户查询和短期记忆的上下文,去长期记忆库中寻找最相关的信息。 记忆冲突与更新:当新信息与旧记忆矛盾时,如何更新或版本化管理记忆(例如,用户之前喜欢咖啡,现在改喝茶了)。 检索长期记忆:系统将当前查询与短期记忆的上下文结合,作为“检索键”,在长期记忆库中进行向量相似性搜索,找出相关记忆

    2K11编辑于 2025-09-25
  • 来自专栏扶墙集

    记忆技巧

    今天扫了收藏夹里一个TED视频,所以也借此总结一下上半辈子学到的点滴技巧吧~ 关于记忆技巧, 我印象最深的是小时候电视里有个老师在讲如何记忆英语单词,比如同样的词根,只要变换一个字母就可以记住一大批单词这样的技巧 第二个印象,是一个女的演讲者提到的记忆技巧, 她的记忆技巧可以归纳为一个词: “标新立异”, 也就是给每一个你要记忆的事物都打上一个不同寻常的标签,突出强烈的反差感, 比如在脑海里描绘一幅“隔壁老王蹲在一个十米的茅坑里 第三个印象是一个TED演讲者, 他的方法是是图像记忆法, 给每一个词语或者生硬的字面都配合上一幅图, 这种记忆法其实很好的阐述了那句英语谚语:"one picture is better than a 第四个印象是某人发明了个记忆宫殿(Memory Palace)这样的记忆技巧或者说术语,总结下来就是上下文关联(Context),将你要记忆的信息放到一个上下文中,这个上下文是任何你熟悉的场景,比如你的房子 关联性,将要记忆的信息通过某种故事线或者物理场景(上下文Context) 串联起来,可以帮助我们批量记忆一组信息,配合强烈反差的故事线更好。

    69610发布于 2020-01-13
  • 来自专栏AI人工智能

    智能体的记忆系统:短期记忆、长期记忆与知识图谱

    智能体的记忆系统:短期记忆、长期记忆与知识图谱 嗨,我是IRpickstars! 总有一行代码,能点亮万千星辰。 在技术的宇宙中,我愿做永不停歇的探索者。✨ 用代码丈量世界,用算法解码未来。 而具备记忆能力的智能体,能够记录和回忆过去的经验,从而在多轮对话、任务规划和长期交互中表现出更高的连贯性和智能性。智能体的记忆系统主要包括短期记忆、长期记忆和知识图谱三个层次。 记忆系统分类与实现智能体的记忆系统可以根据其功能和实现方式,分为以下几类:1. 短期记忆(STM)短期记忆用于存储当前会话或任务的上下文信息,通常具有较短的生命周期。 自适应记忆管理:系统将能够根据使用频率、重要性等因素自动调整记忆的存储策略,实现更加智能的记忆生命周期管理。 联邦记忆学习:在保护隐私的前提下,多个智能体之间可以共享和学习彼此的记忆,构建分布式的集体智能记忆网络。

    1.6K00编辑于 2025-07-14
  • 来自专栏运维开发王义杰

    刻意训练与记忆强化:竞技记忆与应用记忆的探索之旅

    特别是在竞技记忆和应用记忆领域,我们看到了记忆力如何被推向极限,以及如何在日常生活中得到实际应用。本文旨在深入探讨这两个领域,分析其原理,探索它们的实际应用,并讨论如何通过刻意训练提高我们的记忆力。 一、竞技记忆:大脑的极限挑战 竞技记忆,顾名思义,是一种将记忆力竞赛化的活动。参与者需要在短时间内记忆尽可能多的信息,如一副洗乱的扑克牌、长串数字或复杂的图形等。 这不仅是一场对记忆力的挑战,更是对心智控制、专注力和心理素质的全面考验。 竞技记忆的技巧: 联想记忆:通过将抽象信息与熟悉事物关联,形成更容易记忆的图像。 二、应用记忆:日常生活的智慧 与竞技记忆相比,应用记忆更贴近日常生活,它关注如何将记忆技巧应用于学习、工作和生活中。 竞技记忆强调技巧和速度,而应用记忆强调实用性和长期记忆。两者之间的技巧和策略有交集,也有各自的特点。

    43210编辑于 2024-01-04
  • 来自专栏AI SPPECH

    35:Multimodal Memory系统设计:短期记忆、长期记忆、结构化+Graph记忆架构

    记忆架构的结合,构建高效的多模态记忆系统。 技术实现 5.1 短期记忆实现 5.2 长期记忆实现 5.3 结构化记忆实现 5.4 Graph记忆实现 5.5 多模态融合实现 5.6 完整系统实现 6. 本节为你提供的核心技术价值 掌握Multimodal Memory系统设计,通过短期记忆、长期记忆、结构化和Graph记忆架构的结合,构建高效的多模态记忆系统,提升AI系统的知识管理和推理能力,解决传统记忆系统的局限性 结构化记忆 结构化组织知识 提高知识的可访问性 Graph记忆 基于图结构存储知识 捕捉知识间的关系 记忆管理 管理不同记忆组件 协调记忆的存储和检索 记忆检索 从不同记忆组件中检索信息 快速找到相关信息 、长期记忆、结构化记忆和Graph记忆,构建完整的Multimodal Memory系统。

    17010编辑于 2026-04-05
  • 来自专栏数智转型架构师

    通俗讲解大模型短期记忆 vs 长期记忆

    有些同学问:智能体的 Memory 中 短期记忆(Short-term memory)与长期记忆(Long-term memory)是什么意思?有什么区别? 其中记忆包括短期记忆和长期记忆。 短期记忆是智能体在单一会话中维护即时上下文的能力。 工作机制: 它完全依赖于大模型(LLM)的上下文窗口。 拿 Cherry Studio 为例,长期记忆是通过“全局记忆”实现的。 你可以手动添加记忆,也可以在智能体里开启记忆。它就会把自己需要记忆的信息做判断,然后自动存储。 我们可以在整体设置这里打开全局记忆。 我们在和他们聊天的时候,它会先检索相关的记忆,然后再回答我们的问题。 如果它认为有些信息需要记住,也会自动保存到记忆中。 听着很完美,实际上还是会存在很多问题。 有时候记忆是 AI 自动决策的,没有和用户确认,那么这些记忆可能是错误的。 有了记忆之后,有些模型不够聪明,它有时会强行和相关记忆上靠,导致回答并不是我们想要的信息。

    71810编辑于 2026-03-04
  • 来自专栏AI大模型

    Spring AI 实战:聊天记忆之DB存储,长期记忆

    在前文当中,我们已经介绍了 Agent 的记忆能力,并基于 Spring AI 的聊天记忆组件,实现了具备记忆功能的智能行程规划 Agent。 二、记忆策略设计 在完成持久化改造的基础上,还需配套建立记忆数据的管理、更新与失效机制: 为用户记忆配置 TTL 过期策略(如 7 天有效期),自动清理冗余数据; 通过提示词工程,让 Agent 仅保留核心偏好 中配置 MySQL 连接信息和 JDBC 记忆参数; step 3:初始化记忆组件:绑定JdbcChatMemoryRepository 与 ChatMemory,配置双记忆类型; step 4:开发业务服务 :封装带记忆的行程规划逻辑,支持记忆类型动态切换 step 5:提供接口:设计标准化 HTTP 接口,支持规划、清除、查询功能。 未查询到记忆时,按当前需求正常规划,不提示记忆相关信息。

    21710编辑于 2026-03-31
  • 来自专栏计算机工具

    长期记忆、短期记忆、遗忘机制及门控机制;

    长期记忆、短期记忆、遗忘机制及门控机制智能问答系统实现长期记忆、短期记忆、遗忘机制以及门控机制的方法如下: 长期记忆的实现- **使用数据库存储**:将大量的知识、信息和历史交互数据存储在数据库中。 这样系统可以通过遍历知识图谱来获取更全面和深入的知识,实现长期记忆。短期记忆的实现:滑动窗口- **使用缓存技术**:在系统内存中设置缓存,用于临时存储近期使用过的信息。 它可以根据不同的条件和策略,决定哪些信息可以进入系统的不同记忆模块,哪些信息可以被保留或遗忘。 遗忘门决定了从过去的记忆中丢弃多少信息;输入门控制新的信息有多少可以进入记忆单元;输出门决定了当前的记忆状态有多少可以作为输出。 - **示例**:假设用户询问“人工智能的发展历程”,系统通过输入门将相关的历史数据输入到记忆单元中,同时遗忘门会根据之前的记忆和当前的输入决定丢弃一些不相关的旧信息。

    64221编辑于 2025-01-18
  • 来自专栏机器学习入门与实战

    ⻓短期记忆LSTM

    候选记忆细胞 4. 记忆细胞 5. 隐藏状态 6. LSTM与GRU的区别 7. LSTM可以使用别的激活函数吗? 8. 代码实现 9. 参考文献 1. 这篇将介绍另⼀种常⽤的⻔控循环神经⽹络:**⻓短期记忆(long short-term memory,LSTM)[1]。 (某些⽂献把记忆细胞当成⼀种特殊的隐藏状态),从而记录额外的信息。 输⼊⻔、遗忘⻔和输出⻔ 与⻔控循环单元中的重置⻔和更新⻔⼀样,⻓短期记忆的⻔的输⼊均为当前时间步输⼊Xt与上⼀时间步隐藏状态Ht−1,输出由激活函数为sigmoid函数的全连接层计算得到。 关于激活函数的选取,在LSTM中,遗忘门、输入门和输出门使用Sigmoid函数作为激活函数;在生成候选记忆时,使用双曲正切函数Tanh作为激活函数。

    2K10发布于 2019-11-20
  • 来自专栏远在上海

    非典那年记忆

    ABP core 的框架在过年期间,从1.0突然升级到2.0了,。 整个ABPCore 虽然版本变化 大,但使用流程基本不变吧, 我看官网上文档基本完毕了,官网文档有一个外国人视频,当时版本尚是0.18,总共有2小时吧。记录个学习笔记吧!

    1.2K20发布于 2020-02-12
  • 来自专栏TechBlog

    离散无记忆与有记忆信源的序列熵

    文章目录 离散无记忆信源的序列熵 信源的序列熵 离散有记忆信源的序列熵 平稳有记忆N次扩展源的熵 离散无记忆信源的序列熵 马尔可夫信源的特点:无后效性。 当信源无记忆时: \begin{aligned} p(\bar{X}&\left. 对于有记忆信源,就不像无记忆信源那样简单, 它必须引入条件熵的概念, 而且只能在某些特殊情况下才能得到一些有价值的结论。 : 若进一步又满足平稳性时 H(\bar{X})=\sum_{l}^{L} H\left(X_{l}\right) \quad H(\bar{X})=L H(X) 平稳有记忆N次扩展源的熵 设 X 为离散平稳有记忆信源, X 的 N 次扩展源记为 X^N, X^{N}=\left[X_{1} X_{2} \cdots X_{N}\right] 根据熵的可加性,得 H\left(X^

    1.2K20编辑于 2023-02-26
  • 来自专栏look Java

    UML图记忆技巧

    什么是UML类图 Class Diagram:用于表示类、接口、实例等之间相互的静态关系 虽然名字叫类图,但类图中并不只有类 记忆技巧 UML箭头方向: 从子类指向父类 我相信 很多同学都会有和我一样的想法 ,认为子类是以父类为基础的,箭头应该父类指向子类 那么我们改如何去记忆呢? 线的含义 实线 -->继承 虚线-->实现 可以看到 大雁是一个类 实现的某个接口 是由它指向接口 因为接口不知道有大雁的定义 鸭是的父类 唐老鸭只是其中的一个子类 所以是由它指向父类鸭 如何记忆

    41510编辑于 2023-12-07
  • 来自专栏CSDN技术头条

    大脑记忆的建模

    瑞士洛桑联邦理工学院的科学家们研究了大脑是如何通过突触形成记忆的。突触具有很高的可塑性,因此神经元可以改变信息传递速度和密度,从而改变记忆。 由沃尔夫兰姆·格斯特纳(Wolfram Gerstner)带领的一支研究团队针对所谓的“记忆集合”的形成过程进行了研究。这指的是一组由神经元组成的网络,之间由突触相互连接,可以存储一部分特定的记忆。 当人试图唤起某段回忆时,这些特定的记忆碎片就会组合在一起,形成完整的记忆。该研究团队的模拟过程显示,记忆形成和唤起的过程“就像交响乐队一样协调”。 根据其得出的结果,科学家们得到了一组复杂的算法,并称这是目前为止能够最精确地描述记忆形成过程的表示方法。 这一算法通过改良,可以用于研发新的科技,在大脑中激发新的记忆,或是完全抹去以前的记忆。 这说明科学家已经在它们脑中创造了新的记忆

    1.4K80发布于 2018-02-09
  • 来自专栏全栈程序员必看

    记忆化搜索专题

    什么是记忆化搜索呢?搜索的低效在于没有能够很好地处理重叠子问题;动态规划虽然比较好地处理了重叠子问题,但是在有些拓扑关系比较复杂的题目面前,又显得无奈。 用一个公式简单地说:记忆化搜索=搜索的形式+动态规划的思想。    ,所以又称为记忆化搜索。 记忆化搜索递归式动态规划 1.记忆化搜索的思想 记忆化搜索的思想是,在搜索过程中,会有很多重复计算,如果我们能记录一些状态的答案,就可以减少重复搜索量 2、记忆化搜索的适用范围 根据记忆化搜索的思想 到此,就能明白,此题就是求出所有点与终点的最短距离,然后再从起点进行记忆化搜索。

    99820编辑于 2022-09-19
  • 来自专栏C/C++、数据结构、算法

    DFS:记忆化搜索

    一、记忆化搜索vs动态规划 . - 力扣(LeetCode) class Solution { public: //记忆化搜索 //1、设置一个备忘录,要确保备忘录初始化的结果不能跟我们实际计算的结果相同 } } }; 二、不同路径 class Solution { public: int uniquePaths(int m, int n) { //记忆化搜索 vector<vector<int>> memo(m+1,vector<int>(n+1,-1));//建立一个记忆数组 return dfs(m,n,memo);// memo)+dfs(i,j-1,memo); return memo[i][j]; } }; 三、最长的递增子序列 class Solution { public: //记忆化搜索 //不用记忆化搜索的话会超时,因为本身就是一个多叉树 int lengthOfLIS(vector<int>& nums) { vector<int> memo

    30210编辑于 2024-04-10
  • 来自专栏全栈程序员必看

    记忆化搜索

    记忆化搜索 什么是记忆化搜索呢?搜索的低效在于没有能够很好地处理重叠子问题;动态规划虽然比较好地处理了重叠子问题,但是在有些拓扑关系比较复杂的题目面前,又显得无奈。 记忆化搜索正是在这样的情况下产生的,它采用搜索的形式和动态规划中递推的思想将这两种方法有机地综合在一起,扬长避短,简单实用,在信息学中有着重要的作用。 用一个公式简单地说:记忆化搜索=搜索的形式+动态规划的思想。 以上的定义是抄的,说的非常神奇。一开始啊,我也不理解。因为我是遇到某些题然后百度到的。经过学习,我发现,所谓记忆化搜索说白了就是暴力枚举。 只不过略微优雅一点,把算过的,有可能发生重复的部分进行记忆,不要发生重复计算即可。这就是所谓的记忆化搜索,这是我的理解。 在学习它的过程中,人们总要讲到什么是动态规划,讲到普通的搜索。 需要自己作出判断 * 最后在说:所谓记忆化搜索,就是暴力枚举。。。。。

    46820编辑于 2022-09-17
  • 来自专栏DeepHub IMBA

    理解 Agent 记忆:从无状态模型到持久化记忆架构

    Agent 记忆遵循相同的逻辑。 Agent 记忆的四种类型 Agent 记忆并非单一概念,它是一个四层体系,各层服务于不同目的。 四种记忆类型映射到技术栈的不同组件上。工作记忆对应上下文窗口;情景记忆和语义记忆对应外部数据库(向量存储、关系型数据库、键值存储);程序记忆对应模型权重和系统提示词。 记忆系统需要衰减机制。旧的、低相关性的记忆应当逐渐淡出;相互矛盾的记忆(先说偏好 Python,后来又切换到 Go)需要被清理,否则知识库会随时间推移变得陈旧且自相矛盾。 Mem0 大概是目前应用最广的记忆层方案。它介于 agent 和数据库之间,自动处理写入、检索、遗忘逻辑——接入技术栈后即可管理情景记忆和语义记忆。 API 设计简洁:保存记忆、搜索记忆,剩下的交给它。

    49310编辑于 2026-03-31
  • 来自专栏个人总结系列

    Agent的记忆模块

    一、背景记忆模块离不开上下文,通常会是在某个Agent场景(namespace)、某个会话、某个用户的Agent交互信息,Agent的复杂,体现在通过上下文信息理解用户、以及懂用户的复杂,主要体现在:推理复杂性 Agent的上下文交互,通过记忆存储,能够分析准确性(不一定要feedback通过点赞、点踩方式,相似的问题用户问了2次证明第一次处理没有准确),通过分析与强化学习、让Agent越来越聪明。 把上下文进行记忆存储,进行后期用户画像沉淀、准确度或体验提升很关键。 = StoreItem.of(namespace, userKey, profileData); store.putItem(userItem); // 通过ID获取记忆 ("my-key", "my-value")); // System.out.println(items); // ================== 通过工具读取记忆

    24610编辑于 2025-12-31
  • 记忆不上云:mem9 + TiDB 打造 OpenClaw 私有记忆中枢

    OpenClaw的默认memory-core把记忆写进本地.md文件,当文件积累到上百个,agent没有能力在每次对话前全部扫描——记忆变成了需要你主动提示才能检索的档案馆。 理想的agent记忆系统应该满足四点:自动注入、跨agent共享、新记忆实时可用、数据留在本地。带着这四个要求,我开始寻找答案。这篇文章介绍了mem9作为AIagent记忆方案的思路,给了我很大启发。 ,逻辑隔离等同独立记忆。 三个agent共享同一个tenant,但各自的记忆在逻辑上是隔离的。注入时,插件只拉取与当前agent相关的记忆,不会互相污染。 Step5:历史记忆迁移有两类历史数据需要迁移:本地.md记忆文件和mem9.ai云端记忆。踩坑记录:mem9的/imports端点不支持.md格式(返回status:failed)。

    12900编辑于 2026-04-08
领券