avatar
文章
15
标签
35
分类
7

主页
探索
  • 分类
  • 标签
  • 归档
专题
  • AI 工程
  • 数据分析
  • 算法与竞赛
  • 计算机基础
  • 音乐随笔
  • 写作与知识管理
资源
  • 阅读路径
  • 音乐实验室
关于
Better late than never
搜索
主页
探索
  • 分类
  • 标签
  • 归档
专题
  • AI 工程
  • 数据分析
  • 算法与竞赛
  • 计算机基础
  • 音乐随笔
  • 写作与知识管理
资源
  • 阅读路径
  • 音乐实验室
关于

Better late than never

强化学习入门:从 MDP、价值函数到 Q-learning
发表于2026-09-01|AI 工程
监督学习从带标签的样本中学习映射,强化学习则面对一个会被行动改变的环境:智能体做出选择,环境进入新状态并给出奖励,之后的选择又会受到前面结果影响。 真正困难的地方不是“怎样获得一次高奖励”,而是怎样处理延迟回报、探索未知行动,并从带噪声的交互中学到长期有效的策略。本文先建立最小概念框架,再用一个不依赖第三方库的 Q-learning 示例把公式落到代码。 1. 强化学习在解决什么问题强化学习的核心是一个循环: flowchart LR A[智能体 Agent] -->|选择动作 aₜ| B[环境 Environment] B -->|观察 sₜ₊₁ 与奖励 rₜ₊₁| A A --> C[更新策略或价值估计] C --> A 在时刻 t,智能体观察状态 s_t,根据策略选择动作 a_t。环境随后返回奖励 r_{t+1} 和下一状态 s_{t+1}。智能体的目标不是让当前奖励最大,而是让一段交互中的累计回报尽可能大。 典型任务包括: 游戏中根据局面连续选择动作; 机器人根据 ...
Codeforces 前缀和与差分三题:区间查询、覆盖与贪心
发表于2026-09-01|算法与竞赛
当许多查询反复询问同一个数组的区间信息时,逐次扫描通常浪费了大量重复计算。前缀和把“多次查询”变成一次预处理,差分则把“多次区间修改”延迟到最后统一还原。 本文选择三道 Codeforces 题,从一维前缀计数开始,走到差分覆盖,最后把覆盖次数与贪心排序结合起来。重点是看清信息流向:题目是在反复读取区间,还是反复影响区间? 1. 前缀和与差分是一对逆操作设原数组为 a,前缀数组 prefix 记录从开头到当前位置的累计值: 1prefix[i] = a[1] + a[2] + ... + a[i] 那么区间 [l, r] 的和可以用两个前缀相减: 1sum(l, r) = prefix[r] - prefix[l - 1] 差分数组则记录相邻位置的变化。想给整个区间 [l, r] 增加 value,只需要: 12difference[l] += valuedifference[r + 1] -= value 最后对差分数组求一次前缀和,就能恢复每个位置受到的总影响。 flowchart LR A[原数组] -- 累加 --> B[前缀数组] ...
古典音乐中的和声张力:从功能和声到终止式
发表于2026-09-01|音乐随笔
旋律告诉我们“谁在说话”,和声则常常决定一句话是否已经说完。即使不知道和弦名称,我们也能听见某些时刻像站稳、像离开、像等待,或者像终于回到原点。这种方向感,是理解功能和声最自然的入口。 本文不把和声简化成“某个和弦等于某种情绪”,而是把它看成时间中的作用关系:同一个和弦放在不同调性、音区、节拍和上下文里,意义都可能改变。 1. 和声张力不是音量音乐变紧张,不一定要更响、更快或使用更多乐器。一个很轻的和弦也可能因为迟迟不解决而充满悬念;一段厚重的全奏也可能已经稳定地落在终点。 判断和声张力时,可以先问三个问题: 当前声音是否让人愿意停住; 它是否像在推动下一步; 下一和弦出现后,之前的期待有没有得到满足。 所以张力不是单个和弦的固定属性,而是前后关系产生的听觉预期。 2. 三类基本功能在大、小调功能和声中,常用三个功能区域描述方向。罗马数字表示和弦建立在调式的第几级上,并不是另一套音名。 功能区域 常见级数 听觉作用 可以想象成 主功能 Tonic I,有时包含 vi、iii 确立或延长稳定中心 家与地面 下属/前属功能 Predominant IV、i ...
Codeforces 序列优化三题:滑动窗口、双指针与二分查找
发表于2026-08-31|算法与竞赛
很多序列题看起来都在“枚举一段区间”,但区间的性质不同,最合适的工具也不同:长度固定时维护窗口和,约束单调时移动左右边界,查询阈值时在有序数据上二分。 本文选择三道 Codeforces 官方题目,把它们放在同一条学习路径上。重点不是记住三份代码,而是学会通过题目结构选择数据移动方式。 1. 先判断区间属于哪一种模型 flowchart TD A[题目要求处理连续区间] --> B{区间长度固定吗} B -- 是 --> C[固定滑动窗口] B -- 否 --> D{加入元素后代价单调增加吗} D -- 是 --> E[双指针维护可行窗口] D -- 否 --> F[考虑前缀和、二分或其他结构] A --> G{是独立阈值查询吗} G -- 是 --> H[排序后 upper_bound] 三种方法都在避免重复工作:窗口复用上一次的和,双指针保证边界只向前移动,二分则利用有序性排除一半范围。 2. 363B Fence:固定长度窗口的最小和官方题目:363B Fence · ...
Codeforces 入门四题:把题意翻译成判断、计数与模拟
发表于2026-08-31|算法与竞赛
刚开始做算法题时,最困难的部分往往不是语法,而是把一段自然语言压缩成几个明确条件。Codeforces 的 800 分题很适合训练这项能力:代码通常不长,错误却能准确暴露题意理解、下标和边界处理上的问题。 本文选择四道官方入门题,不复述完整题面,而是专注于“怎样从要求得到判断式”。每题标题都链接到 Codeforces 官方页面,建议先独立阅读和尝试,再回来对照分析。 1. 通用翻译流程面对一道短题,可以先写出四行草稿:输入是什么、输出是什么、每个条件怎样判断、最小边界在哪里。 flowchart LR A[阅读输入与输出] --> B[圈出必须满足的条件] B --> C[把条件写成布尔表达式] C --> D[用最小值和临界值测试] D --> E[再开始编码] 不要急着寻找“算法名称”。如果题目只需要扫描、计数或判断,直接实现就是正确算法。 2. 4A Watermelon:必要条件与充分条件官方题目:4A Watermelon · 难度 800 · 官方标签:math、brute force 核心要求把一 ...
个人知识地图:用分类、标签与链接组织长期写作
发表于2026-08-31|写作与知识管理
文章数量增加以后,博客很容易变成一个按时间倒序排列的文件柜。旧文章并没有消失,却越来越难被再次发现;新文章也常常重复解释以前写过的背景。 解决这个问题不需要一开始设计庞大的知识体系。只要让分类、标签和文章链接各自承担清晰职责,博客就会从时间线逐步长成一张能够探索的知识地图。 知识地图不是一次规划完成的目录,而是内容在持续连接中显露出的地形。 1. 三种结构不要混在一起分类、标签和链接看起来都在做整理,但它们回答的是不同问题。 结构 回答的问题 合适的数量 典型例子 分类 这篇文章主要属于哪个长期方向 少而稳定 AI 工程、数据分析、音乐随笔 标签 它涉及哪些可以横向交叉的概念 适度增长 RAG、可观测性、聆听指南 链接 阅读前后还需要哪些具体上下文 随内容自然增加 搭建文章连接到评测文章 一个简单原则是:分类像书架,标签像索引,链接像路。书架频繁改变会让人迷路,索引过多会失去区分度,没有路则会让每篇文章成为孤岛。 2. 分类负责长期承诺好的分类通常对应愿意持续写几年的主题,而不是某次短期兴趣。判断一个名称是否适合作为分类,可以问三个问题: ...
古典音乐中的主题变形:四个音怎样长成一首曲子
发表于2026-08-31|音乐随笔
一首规模很大的作品,常常不是由无数互不相关的旋律堆起来的。作曲家更像是在观察一颗种子:改变它的速度、重音、方向、光线和生长环境,让一个短小动机在不同场景中继续保持身份。 理解主题变形之后,听音乐会多出一条线索:我们不再只等待“熟悉的旋律回来”,而是开始辨认它换了怎样的步伐和语气。 一个短小动机可以沿着节奏、和声与配器,逐渐展开成完整的声音世界。 1. 主题与动机有什么区别动机通常很短,可能只有几个音,最重要的是它有容易辨认的节奏或音程轮廓。主题则更完整,往往已经形成一句可以独立记住的音乐。 可以把它们理解成语言中的词根与句子:词根很小,却能在不同词语中保留意义;句子更完整,但依然可以拆回几个关键材料。 本文用一个抽象的四音动机来说明:先上行,再稍作停顿,最后回落。无需知道具体音名,只要记住它的“动作”。 2. 五种最常听见的变化改变节奏:同一句话换一种步伐音高顺序不变,只把均匀的四拍改成长短相间,动机就可能从平静变得犹疑,或从抒情变成舞蹈。聆听时可以暂时忽略音高,只用手指轻敲重音位置。 改变音程:保留方向,扩大张力原来相邻的两个音可以被拉远。旋律仍然“先上后下”,但 ...
RAG 知识库评测:从检索命中到可信回答
发表于2026-08-31|AI 工程
一个知识库“能回答”并不等于“回答得可信”。同一个错误结果,可能来自文档没有解析完整、文本块切得不合适、召回结果偏离问题,也可能是模型忽略证据后自行补全。只有把链路拆开评测,优化才不会变成反复调整参数。 本文承接 RAGFlow 知识库搭建实战,重点讨论上线前后怎样建立一套轻量、可复现、能够定位原因的评测体系。 评测的目标不是得到一个孤立分数,而是看清证据怎样抵达回答。 1. 先把“效果好”拆成四个问题一次完整问答至少包含四个可以独立检查的环节: flowchart LR Q[用户问题] --> R[检索候选文本块] R --> S[重排与筛选] S --> G[基于证据生成] G --> A{证据是否充分} A -- 是 --> C[回答并引用来源] A -- 否 --> D[拒答或请求补充] 对应的四个问题是: 检索是否找到了证据:正确文本块有没有进入候选集合; 重排是否把证据放在前面:真正相关的内容是否获得更高优先级; 回答是否忠于证据:结论能否从引用片段中推出 ...
古典音乐入门:从七首作品开始建立聆听地图
发表于2026-08-29|音乐随笔
古典音乐常被描述得很有门槛:要懂曲式、记住作曲家生平,还要分清作品编号。其实,进入它最自然的方法仍然是听。先对声音产生兴趣,再慢慢知道自己听见了什么,知识才会变成路标,而不是入场券。 这篇文章不追求列出一份“必听排行榜”,而是选择七首性格不同的作品。每一首只关注一个问题,七天之后,你会得到一张属于自己的初步聆听地图。 flowchart LR A[巴赫<br/>秩序] --> B[莫扎特<br/>对话] B --> C[贝多芬<br/>动机发展] C --> D[肖邦<br/>呼吸与诠释] D --> E[柴可夫斯基<br/>配器色彩] E --> F[德彪西<br/>和声空间] F --> G[拉威尔<br/>重复与变化] 第一天:听见秩序巴赫《G 大调第一无伴奏大提琴组曲》前奏曲,BWV 1007一把大提琴,没有乐队,也没有歌词, ...
从文档到可检索知识库:RAGFlow 搭建与调优实战
发表于2026-08-29|AI 工程
搭建 RAG 知识库并不只是“上传文档,再接一个大模型”。真正影响效果的环节包括文档解析、分块、向量化、混合检索、重排以及回答阶段的约束。RAGFlow 把这些环节放进一套可视化流程中,适合用于内部制度问答、产品手册检索、技术资料助手等场景。 本文以本地 Docker Compose 部署为起点,完成一个可以检索、测试和持续优化的知识库。示例不包含任何真实凭据。 1. 先理解数据怎样流动一份文档进入 RAGFlow 后,大致会经过下面这条链路: flowchart LR A[原始文件] --> B[版面解析与内容提取] B --> C[按规则切分文本块] C --> D[向量化与全文索引] D --> E[关键词与向量混合检索] E --> F{是否启用重排} F -- 是 --> G[重排候选文本块] F -- 否 --> H[选择相关文本块] G --> H H --> I[对话模型生成回答] Docker Compose 默认还会启动若干 ...
12
avatar
eulersail
在技术、阅读与声音之间持续建立连接
文章
15
标签
35
分类
7
GitHub
公告
把零散经验整理成可以再次使用的知识
最新文章
强化学习入门:从 MDP、价值函数到 Q-learning2026-09-01
Codeforces 前缀和与差分三题:区间查询、覆盖与贪心2026-09-01
古典音乐中的和声张力:从功能和声到终止式2026-09-01
Codeforces 序列优化三题:滑动窗口、双指针与二分查找2026-08-31
Codeforces 入门四题:把题意翻译成判断、计数与模拟2026-08-31
分类
  • AI 工程3
  • 写作与知识管理1
  • 开发工具1
  • 数据分析3
  • 算法与竞赛3
  • 计算机基础1
  • 音乐随笔3
标签
Codeforces Docker Matplotlib NumPy Q-learning RAG RAGFlow TCP/IP Visual Studio 二分查找 作曲方法 入门算法 决策过程 前缀和 博客 双指针 古典音乐 可观测性 和声 差分 开发工具 强化学习 数字花园 数据分析 数据可视化 机器学习 模拟 滑动窗口 知识库 知识管理 聆听指南 计算机网络 评测 贪心 音乐鉴赏
归档
  • 九月 20263
  • 八月 20267
  • 五月 20251
  • 七月 20234
网站资讯
文章数目 :
15
本站总字数 :
35.7k
本站访客数 :
本站总访问量 :
最后更新时间 :
©2020 - 2026 By eulersail
框架 Hexo|主题 Butterfly
搜索
数据库加载中