软考架构师:数据库设计范式与事务并发控制全解析
数据库设计基础知识在软考系统架构设计师科目里属于那种看着不难、一做就错的章节。尤其第六章的下篇基本把关系规范化、事务并发控制、数据库设计流程这些硬核内容全压进来了很多人复习到这儿的第一反应是知识点太散范式和事务各讲各的到做题时又发现它们其实紧紧绞在一起靠死记硬背根本扛不住。这篇内容我就按自己的备考思路重新梳理一遍重点是下篇的三大块范式与模式分解、事务与并发控制、数据库设计全流程顺带把现在考试里越来越常出现的分布式、NoSQL等数据库扩展问题一起串起来。这样整理完你会明显感觉到整章内容不再是孤立的考点而是一条能用来解题、能用来做案例分析的完整线索。1. 函数依赖与范式先明白为什么要拆表1.1 没有范式概念时数据库会出什么乱子范式这个东西如果直接背诵1NF、2NF、3NF的定义十个人有八个背混。我的办法是先从反例入手搞清楚不规范化到底会付出什么代价。最简单的例子就是一张选课表选课记录学号课程号课程名成绩系别系主任这张表能把所有数据塞在一起查询倒是方便但写入和更新时问题一堆。如果某个学生选了3门课他的系别和系主任信息就重复存了3次这是数据冗余如果某门课程暂时没人选课程名和课程号就根本存不进去这就是插入异常如果某个学生退选了一门课把这条记录删掉的同时可能把课程信息也一起删没了这是删除异常如果系主任换人了需要把所有相关记录都改一遍几条没改到就会出现更新异常。所以规范化的根本目的不是为了显得高级而是消除这些异常让数据在同一个地方只表达一次。理解了这个出发点再看范式定义就不会觉得是一条条生硬规则了。1.2 三类函数依赖完全、部分、传递函数依赖是范式的底层语言。符号X→Y表示通过X能唯一确定Y也就是给定X的值Y的值随之确定。考试里需要重点辨析的是三个前缀完全函数依赖整个属性组X共同决定Y去掉X里任何一个属性这个决定关系就不成立。部分函数依赖X的一部分就能决定Y常见于复合主键场景。比如学号课程号能决定课程名但课程号单独也能决定课程名这就是课程名对学号课程号的部分依赖。传递函数依赖X决定YY决定Z但X不能直接决定Z。比如学号决定系别系别决定系主任就形成了学号到系主任的传递依赖。判断范式的时候先找候选码再看非主属性对候选码到底是完全依赖、部分依赖还是传递依赖整个判断过程就变成了填空式操作不容易出错。1.3 范式递进从1NF到BCNF的直观理解1NF考察的是每个属性不可再分。凡是看到一张表里某个字段存了多个值比如课程名操作系统、数据库或者电话号码字段里同时塞了手机和座机直接判定不满足1NF。这一条最简单也是规范性问题的起点。2NF解决的是非主属性对候选码的部分依赖。前提是满足1NF然后消除所有部分依赖。回到选课表的例子候选码是学号课程号课程名只依赖课程号就属于部分依赖需要拆开。3NF解决的是非主属性对候选码的传递依赖。比较典型的场景是员工员工号部门号部门名称部门名称通过部门号传递依赖于员工号虽然每个员工只对应一个部门名称但部门名称在每行重复出现拆表更合理。BCNF再进一步要求每一个决定因素都包含候选码。很多人会把BCNF当成3NF加上主属性也不能部分或传递依赖。区别在于3NF容忍主属性对候选码的传递依赖BCNF不允许。考试中如果给出候选码是AB函数依赖里有C→A这类设置基本就是在考BCNF与3NF的边界。我整理了一个速查表方便做题时对照范式满足条件消除的问题1NF属性原子不可分非原子结构2NF消除非主属性对候选码的部分依赖插入、删除异常3NF消除非主属性对候选码的传递依赖更新异常、冗余BCNF每个决定因素都含候选码主属性间的不合理依赖1.4 模式分解无损连接与保持函数依赖拆表不是拆完就了事还要保证拆完之后信息不丢、约束还在。这里有两个核心概念必须抠清楚。第一个是无损连接。意思是把分解后的多个关系做自然连接还能还原出原始的完整关系。判断方法最常用的是表格法把所有属性放到列上把每个分解后的关系作为一行根据函数依赖不断填充看最后是否有一行全部填满。虽然表格法做起来有点繁琐但套路固定考试时要稳住一步步推。第二个是保持函数依赖。拆完表之后原来所有的函数依赖还能在某个新关系中直接体现或者在几个新关系间通过依赖集推导出来。如果拆完连最基础的决定关系都找不到了后续的数据一致性就没法保证。实际做题时两种分解情况很常见。一种是有损分解但保持了函数依赖另一种是无损连接但丢了依赖。理想情况下既要无损连接又要保持函数依赖但3NF分解能做到两者兼顾BCNF分解则可能出现无法同时满足的情况。所以考到分解到3NF和分解到BCNF时答案偏好其实不一样前者求稳后者需要接受一定的依赖丢失。2. 关系代数与SQL视角把查询优化想明白2.1 几大关系运算与SQL的对应关系关系代数是数据库查询的理论根基虽然软考直接让你手推关系代数表达式的情况不多但理解它和SQL的对应关系对做选择题和案例题都很有帮助。选择σ、投影π、连接∞、笛卡尔积、除法是五个核心运算。选择和投影最简单σ是按条件筛选行π是挑选列。连接可以理解为笛卡尔积后按条件筛选自然连接还要求同名列取值相等最后去掉重复的列。除法运算最抽象可以理解为找出同时参与了全部相关项目的记录典型场景是找出选了全部课程的学生。对应到SQL里选择对应WHERE投影对应SELECT后面的列连接对应JOIN笛卡尔积对应FROM后的多表不加条件。备考时我会建议把每个关系运算写成一个SQL再从SQL反推运算来回对照几遍就熟了。2.2 用关系代数理解查询优化关系代数真正的价值在优化层面。比如先做选择再做连接和先连接再选择逻辑结果相同但执行代价天差地别。假设一个表有10万行一个表有100行直接笛卡尔积先算出1000万行再筛选和先通过条件把10万行表缩到几百行再连接耗时完全不是一个量级。这就是典型的代数优化规则尽量让选择和投影提前执行减小中间结果规模。查询优化器也是基于这个思路做等价变换的。考试里常出现为了提高查询效率应改为哪种写法这类选择只要记住选择下推、投影下推这个大方向一般不会错。索引的生效原理也可以用关系代数解释。为什么在WHERE条件列上建索引能加速本质上就是让数据库在做选择运算时不用全表扫描直接通过索引缩小候选集。什么时候索引失效也很值得注意比如对列做了函数运算、使用LIKE前置通配符、发生隐式类型转换都会让优化器放弃索引。这块是案例题里经常埋坑的点。2.3 常见拆分等值连接与自然连接的区别很多初学者把等值连接和自然连接混为一谈。等值连接是在笛卡尔积里取满足某个等值条件的行结果里会保留两边的重复列自然连接是根据所有同名列做等值匹配重复列只保留一列。简单说自然连接是等值连接的一种特例附加了去掉重复列的规则。考试如果给两个关系R和S问自然连接结果有几列第一步是先看两者的公共属性有几列公共属性就合并掉几列。这个考法出现频率不低而且计算量很小属于必须拿分的送分题。3. 事务与并发控制ACID背后的取舍逻辑3.1 事务的四个特性怎么理解最省力事务是数据库并发控制的基础单位。ACID四个特性里最容易混淆的是一致性和隔离性。原子性强调事务内操作要么全做要么全不做通常由日志和回滚机制保障。持久性强调已提交事务的结果必须永久保存由日志和备份机制保障。一致性强调事务执行前后数据库都满足完整性约束它其实是原子性、隔离性共同作用的结果。隔离性强调的是多个事务并发执行时彼此之间不能产生计划外的影响由锁和MVCC机制保障。做题时经常遇到某特性由什么机制保证这类问题记住原子性主要看撤销日志持久性看重做日志隔离性看并发控制机制。如果题目问一致性可以由哪两个特性共同保证答案方向就是原子性和隔离性。3.2 四类并发问题与四种隔离级别并发事务交织执行时可能产生四类问题丢失更新两个事务同时修改同一数据后提交的把先提交的覆盖了。脏读读到另一事务尚未提交的数据事务回滚后这个数据就是不存在的。不可重复读同一事务内两次读取同一数据结果不一致因为期间被另一事务修改并提交。幻读两次查询同一范围的数据第二次多出了行或者少了行因为期间有其他事务插入或删除了记录。SQL标准根据这些异常定义了四个隔离级别。隔离级别从低到高分别是读未提交、读已提交、可重复读、串行化。读未提交能绕开丢失更新的部分情况读已提交防止脏读可重复读防止脏读和不可重复读串行化把事务完全排队防止一切并发异常。但要注意隔离级别和并发问题的对应关系并不是全有全无的经典表格不同数据库实现有差异。比如在大多数主流数据库中可重复读级别不仅防住不可重复读也通过间隙锁或快照机制防住了幻读。所以做题时看题干是严格按SQL标准还是按某数据库实现答案会有差别。隔离级别脏读不可重复读幻读读未提交可能可能可能读已提交避免可能可能可重复读避免避免可能串行化避免避免避免3.3 封锁协议和两段锁并发控制的常规武器封锁分为排他锁X锁和共享锁S锁。X锁与任何锁都不兼容S锁只和S锁兼容这是做判断题的基础。三级封锁协议是递进的一级封锁协议要求事务在修改数据前加X锁直到事务结束才释放能防止丢失更新二级封锁协议在一级基础上要求读取数据前加S锁读完即可释放额外防止脏读三级封锁协议在二级基础上要求S锁也保持到事务结束额外防止不可重复读。每一级解决一个问题规律非常清晰。两段锁协议解决的是调度可串行化问题。它要求事务分为扩展阶段和收缩阶段扩展阶段只能加锁不能解锁收缩阶段只能解锁不能加锁。如果一个事务调度满足两段锁那么它的并发调度就是可串行化的。注意两段锁是可串行化的充分条件不是必要条件这句话在选择题里反复出现。死锁处理也是常考点。检测死锁需要维护事务等待图发现环就解除预防死锁的思路包括按统一顺序加锁、一次性申请所有锁、超时机制。架构师考试常考的是判断某种策略是否会产生死锁或者在案例里设计避免死锁的方案。实际系统里更常用超时和死锁检测因为预防策略往往牺牲太多并发度性价比不够高。4. 数据库设计四步法把知识串成工程流程4.1 需求分析与概念设计是地基数据库设计分为四个阶段需求分析、概念结构设计、逻辑结构设计、物理结构设计。每个阶段的产出物和核心任务是案例题的高频考点。需求分析阶段要做的事是搞清楚用户要什么。产出物是数据字典和数据流图。数据字典里包含数据项、数据结构、数据流、数据存储和处理过程等条目。很多人觉得这阶段没什么技术含量但案例题里经常让你补充数据字典条目或者判断某条数据项是否描述完整这时候就需要把数据项名称、类型、长度、取值范围、含义这几要素记清楚。概念结构设计阶段输出ER图。这里强调概念模型独立于具体的数据库系统它只描述现实世界的实体、属性和联系不涉及表结构。设计时常见的问题是属性归类搞错比如班级到底是实体还是属性如果班级还需要记录班级人数、班主任那它就是实体如果只是学生的某个简单描述字段可以作为属性。这个判断不是死规则而是看需求场景的复杂程度。多个局部ER图合并成全局ER图时会出现三类冲突属性冲突、命名冲突、结构冲突。属性冲突指同一属性在不同局部图中取值范围或单位不一致命名冲突指同名异义或异名同义结构冲突指同一对象在不同局部图中被建模成实体还是属性。答题时如果题目描述一个部门在A图中是属性在B图中是实体直接定位到结构冲突。4.2 ER图转关系模式有一套固定口诀从ER图转关系模式核心就是实体转表联系按类型处理。一对一联系可以并入任一端实体表外键放在哪一端都行一对多联系一般把一方的主键放到多方作为外键多对多联系必须生成一张单独的联系表表的主键通常由两个实体的主键共同组成。考试经常会问一道多对多联系转换后生成几张表记住规律就不会错。转换完还要做规范化检查。大部分情况下按规则生成的模式已经满足3NF但如果出现函数依赖异常就要继续分解。这里规范化和ER转换是前后衔接的两个动作很多考生分开记一到综合案例题就不知道先做哪一步。按我的经验标准答题顺序是先画ER图再转关系模式然后判断需要几范式不满足就分解最后评估反范式化的必要。反范式化是架构师视角下必须掌握的概念。当查询性能吃紧而规范化又导致表连接过多时可以刻意保留一些冗余字段空间换时间。但反范式化会让数据一致性维护成本上升作答时需要权衡说明不能只写加冗余字段可以提高性能而要补一句需要配合应用层或批处理保证冗余数据的一致性。4.3 物理设计与性能优化要点物理设计阶段要确定数据的存储结构和访问方式。最常考的是索引选择B树索引适合范围查询和等值查询位图索引适合低基数、高更新频率较低的列。注意位图索引在大数据量分析场景很常见但高并发写入时锁开销很大实战中往往不是首选。存储结构上堆组织、顺序组织、聚簇组织各有适用场景。聚簇表让同一数据块里存储相关行适合经常一起查询的表。索引组织表适合通过主键频繁访问但更新主键代价高。案例题如果问某业务场景适合哪种存储结构答案基本要结合查询特点和数据量来判断。完整性约束也是物理设计的一部分包括主键约束、外键约束、唯一约束和检查约束。答题时要注意外键约束会影响写入性能在数据量极大的分布式场景下很多系统会放弃数据库层外键改由应用层保证一致性。这种理论标准做法与实际工程取舍的差异正是架构师考试喜欢设问的角度。5. 架构视角下的数据库扩展分布式、NoSQL与大数据存储5.1 分布式数据库与CAP架构师考试不会停留在单机数据库层面分布式扩展的知识点越来越重要。分布式数据库的核心难点是数据分布和复制。数据分片包括水平分片、垂直分片和混合分片分片后查询可能涉及跨节点访问分布式透明性就是把这些复杂细节对应用隐藏起来。CAP理论是分布式数据库绕不开的话题。一个分布式系统在一致性、可用性、分区容错性三者中最多同时满足两个。因为网络分区在分布式环境里一定会发生所以实际设计往往是在C和A之间做取舍。考试常让你判断某个系统更偏CP还是AP比如订单系统通常偏CP宁可暂时不可用也不能出现重复扣款内容社区通常偏AP保证能刷出内容允许点赞数略有延迟。作答时如果能从业务语义出发解释取舍而不是只背结论得分率会高很多。BASE理论是对AP系统特征的一个概括基本可用、软状态、最终一致。它和传统事务ACID形成鲜明对比。案例题里经常让你对比两种方案我的建议是不要简单说一个强一致一个弱一致要具体说清楚在哪个环节放松了一致性要求用哪些机制达到最终一致比如消息队列、版本号、对账任务等。5.2 NoSQL分类与选型思路NoSQL不是某一种技术而是一类技术的统称。考试常考的是四大分类键值数据库、文档数据库、列族数据库、图数据库。键值数据库典型场景是会话缓存、配置管理适合单键访问的高并发场景。文档数据库适合灵活多变、结构不固定的数据业务上经常处理JSON结构时会优先考虑。列族数据库适合海量数据的大规模分析它能按列族存储和读取扩展性好。图数据库适合社交网络、推荐系统这类关系复杂的场景查询多跳关系时能力突出。选型题最重要的不是背分类而是通过题干关键词判断需求。题干如果出现非结构化字段不确定方向一般偏文档型出现高并发读写session缓存方向是键值型出现关系深度遍历好友链方向是图数据库。这种对应关系在很多真题里反复出现属于性价比很高的得分点。5.3 数据仓库与大数据场景的存储设计数据仓库也是软考常客。数据仓库的特点是面向主题、集成、非易失、随时间变化。它和操作型数据库的区别可以总结为数据库面向事务处理注重当前值和高并发写入数据仓库面向分析决策注重历史数据和批量加载。数据仓库里两个核心概念是事实表和维度表。事实表存储度量值比如销售额、订单量它通常数据量巨大维度表存储描述属性比如时间、地区、产品名称数据量相对小。星型模型中以事实表为中心维度表直接关联在周围结构清晰、查询简单雪花模型把维度表进一步规范化减少冗余但查询连接路径变长。大数据存储部分要理解数据湖和数据仓库的差别。数据仓库存的是经过清洗、转换后的结构化数据数据湖则能存原始格式的结构化、半结构化和非结构化数据。ETL过程把源数据经过抽取、转换、加载放入仓库。考试如果给出一个先收集原始日志后续再逐步加工的场景答案方向通常是数据湖思路因为数据湖支持先存储后定义模式正好契合这种需求。6. 备考易错点与实战答题技巧6.1 选择题里反复出现的坑数据库这块选择题的陷阱其实数量有限整理出来完全可以避开。第一类是范式判断时没先找候选码直接凭感觉说这个关系已经满足3NF了结果错在漏了部分依赖。正确顺序永远是求候选码列出所有函数依赖逐个判断非主属性和主属性的依赖类型。第二类是事务隔离级别和并发问题的配对。记住严格标准下可重复读不防幻读但实际某些数据库可重复读级别通过间隙锁或MVCC防了幻读。题干如果提到具体数据库实现要按实现特点选不要机械套标准答案。第三类是关于死锁预防与死锁避免概念混淆。预防是破坏死锁产生的必要条件比如一次性申请所有资源避免是让每次资源分配都处于安全状态比如银行家算法。这两个名词很多教材都混着用考试却要求严格区分答题时看到预先分配优先想到预防。6.2 案例题的答题套路案例题里数据库部分通常分成三小块ER图设计、关系模式规范化、SQL或事务问题。我自己的答题顺序是先快速浏览题干里所有实体和联系关键词一边读一边画草稿避免漏掉隐含的一对多或多对多关系再列函数依赖把候选码、主属性、非主属性全部标注出来再判断范式最后回答问题。描述反范式化或分布式方案时注意使用一方面……另一方面……的结构先写优点再写代价这样能同时覆盖两个得分点。比如写将订单金额冗余到订单汇总表可以减少高频统计查询的聚合开销但需要引入消息机制在订单明细变更时同步更新汇总值保证最终一致。如果时间紧张优先级是ER图转换规则必得分、范式判断与分解高频得分、事务并发问题理解性得分、分布式与NoSQL选型术语得分。很多考生在事务部分纠结太久导致后面的ER题没时间写是非常可惜的失分方式。6.3 知识串联记忆法最后再分享一个我备考时觉得特别好用的串联方法把所有异常问题都收敛到冗余上。数据冗余会带来更新异常所以需要范式化去冗余但过度范式化会带来查询连接开销所以需要反范式化补充并发控制里的丢失更新本质是同一数据的多版本覆盖问题也是另一种写冗余冲突分布式系统里的数据复制本身是一种冗余所以CAP里要在数据一致性和可用性之间取舍。这样你会发现整个数据库设计章节其实是被冗余这条线串起来的理解了主线很多看似独立的考点都会自然归位。我个人在实际复习中体会最深的一点是不要上来就背概念而是每次拿到一个关系模式先问自己两个问题——候选码是什么非主属性对候选码的依赖方式是什么这两个问题想通所有范式题都能手到擒来。数据库设计基础知识这一章确实是需要反复练的但练的不是背功而是先框架、后细节的分析习惯。希望这篇梳理能帮你在冲刺阶段把散落的知识点重新焊成一张网考场里少交一点想不起来的冤枉分。

相关新闻

企业AI助手联网问答Agent落地实战:架构选型、检索优化与工程避坑指南

企业AI助手联网问答Agent落地实战:架构选型、检索优化与工程避坑指南

1. 从"离线知识库"到"实时在线":企业AI助手的能力断层在哪里做过企业级AI助手落地的人大概都有过这种体验:Demo演示的时候,用户问什么都能答上来,因为演示问题都是提前设计好的。一旦上线给真实业务人员用&am…

2026/10/19 11:15:36 阅读更多 →
Oracle层次查询LEVEL伪列详解:从原理到树形数据实战应用

Oracle层次查询LEVEL伪列详解:从原理到树形数据实战应用

刚接触Oracle层次查询的同行,可能都遇到过这样的情况:写了一个CONNECT BY语句,结果里莫名其妙多出一列数字,有时候是1、2、3,有时候是1、1、2,看得一头雾水。这个数字就是Level伪列,很多人只知道…

2026/10/19 11:15:36 阅读更多 →
Docker部署MySQL 5.7.44:从镜像拉取到数据备份的完整实践

Docker部署MySQL 5.7.44:从镜像拉取到数据备份的完整实践

1. 部署前:为什么用Docker跑MySQL 5.7.44 1.1 版本锁定的意义 MySQL 5.7.44,是5.7系列的最后一个维护版本。很多人还在担心“是不是太老了”,但现实是,大量业务系统、旧项目、内部管理系统仍然依赖5.7的特性,尤其是那…

2026/10/19 11:15:36 阅读更多 →

最新新闻

Java 基础核心知识学习记录

Java 基础核心知识学习记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 18:47:41 阅读更多 →
3分钟理清AQS与其子类的那些事

3分钟理清AQS与其子类的那些事

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 18:41:37 阅读更多 →
【拯救HMI】:工业4.0时代,为什么你的设备还长着一张“2.0时代的脸”?

【拯救HMI】:工业4.0时代,为什么你的设备还长着一张“2.0时代的脸”?

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 18:40:37 阅读更多 →
Java程序员转AI开发:不用先清空重学,重点补这4项能力

Java程序员转AI开发:不用先清空重学,重点补这4项能力

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 18:40:37 阅读更多 →
《软件工程原理与实践》Lab3——卷积神经网络

《软件工程原理与实践》Lab3——卷积神经网络

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 18:39:36 阅读更多 →
m3u8视频下载全攻略:从HLS协议原理到在线工具实操与避坑指南

m3u8视频下载全攻略:从HLS协议原理到在线工具实操与避坑指南

简介:这是一款面向流媒体视频下载需求的 m3u8 在线下载与提取工具,适合需要将 HLS 流媒体保存为本地视频的普通用户、视频运营人员及前端开发者。工具围绕 M3U8 清单解析、TS 分片多线程下载和自动合并设计,同时提供网页端交互界面&#xff0…

2026/10/19 18:38:35 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/19 10:02:04 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 2:54:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 9:10:22 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →