- 博客(47)
- 收藏
- 关注
原创 深入浅出 jmap:Java 内存分析的“显微镜“
jmap(Java Memory Map) 用于生成 Java 进程的内存映射。它可以让你看到堆内存的分区比例、查看内存中的对象统计,甚至可以将整个堆转储(Dump)下来进行离线分析。生产环境慎用:live和都会触发 Full GC。在堆内存超过 100GB 的系统上,这可能导致长达数十秒甚至几分钟的服务不可用。权限问题:请确保使用与 Java 进程相同的人员权限(通常是)执行。版本差异:从 JDK 9 开始,官方更推荐使用来代替jmap,因为jcmd的性能开销通常更小。
2025-12-19 23:11:11
678
原创 LLM中的选择性注意:从人类聚焦到模型聚焦
本文探讨了选择性注意机制在大型语言模型中的应用及其意义。文章首先将人类认知中的选择性注意与AI中的注意力机制进行类比,指出两者在信息过滤和目标导向上的相似性。随后分析了传统注意力机制的局限性,如计算复杂度高和语义冗余问题。接着介绍了选择性注意在LLM中的实现方式,包括稀疏注意力、学习型注意模式等方法,强调这些技术如何提高模型效率。最后,文章指出选择性注意不仅是性能优化手段,更可能推动模型认知能力的发展,为可解释性和高效记忆系统提供新思路。选择性注意机制正成为连接人类认知与AI理解能力的重要桥梁。
2025-11-05 17:13:20
705
原创 理解全连接层:深度学习中的基础构建块
在深度学习模型中,全连接层(Dense Layer)是最基础也是最核心的组件之一。尽管近年来注意力机制和卷积神经网络等结构备受关注,但全连接层仍然是许多神经网络架构中不可或缺的部分。本文将深入探讨全连接层的原理、实现和应用。
2025-11-04 21:28:13
836
原创 聚类(Clustering)详解:让机器自己发现数据结构
聚类是一种无监督学习技术,用于将数据样本按相似性划分为不同簇,广泛应用于用户分析、推荐系统等领域。核心算法包括K-Means(高效但需预设簇数)、层次聚类(可视化强但计算复杂)、DBSCAN(基于密度且能识别噪声)和高斯混合模型(概率化软聚类)。评价指标分内部(如轮廓系数)和外部(如Rand指数)两类。聚类结果受算法、参数和距离度量影响,需结合业务需求选择合适方法。其优势在于自动发现数据模式,但需注意解释性与算法局限性。
2025-11-03 15:58:55
1202
原创 一篇就够!用大白话讲透数据库第三范式
第三范式(3NF)在第二范式基础上进一步消除传递依赖,确保非主属性直接依赖于主键,避免数据冗余和更新异常。通过分解学生信息表的例子,展示了如何从初始表逐步规范化至3NF:消除部分依赖后,拆分出学生表、课程表和选课表;再通过消除传递依赖,将系主任信息独立为系列表。3NF的优点是减少冗余和维护异常,缺点是多表关联可能降低查询效率。核心记忆口诀:“非主属性必须直接依赖于主键”。
2025-10-30 15:51:22
403
原创 IDEA 中提示代码文件大小超出限制,导致洞察不可用问题
摘要: 当IDEA遇到大文件(如生成的Proto文件)时,代码洞察功能可能失效,报错"无法解析方法"等。原因是IDEA默认限制单个文件大小。解决方案:在"帮助->编辑自定义属性"中添加idea.max.intellisense.filesize=10000,若无效则改为在虚拟机选项配置-Didea.max.intellisense.filesize=8192,修改后重启即可。部分情况需清除缓存。参考JetBrains官方文档解决配置失效问题。
2025-10-27 15:06:42
481
原创 启动Hive和Hadoop的兼容性问题:java.lang.VerifyError: class org.apache.log4j.bridge.LogEventAdapter overrides
Hadoop 3.4.2和Hive 4.0.1环境下运行MapReduce任务时出现java.lang.VerifyError错误,原因是log4j组件冲突。错误显示LogEventAdapter类重写了final方法导致验证失败。解决方案是移除Hive安装目录下的冲突jar包:将log4j-1.2-api-*.jar和log4j-slf4j-impl-*.jar移动到备份目录,使系统回退到使用log4j-core。执行后重启YARN和Hive Server2服务,问题解决。该方法通过消除log4j版本冲突
2025-10-26 16:57:10
356
2
原创 Hadoop启动Mapred任务,报错Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster
摘要:Hadoop任务启动报错"找不到MRAppMaster主类"的解决方法:1)编辑mapred-site.xml文件,添加mapreduce.framework.name等5个关键配置项,并替换为实际Hadoop路径;2)通过hadoop classpath命令获取类路径并更新配置文件;3)将修改同步到所有从节点;4)重启yarn服务。主要涉及环境变量配置和类路径设置问题,需确保配置路径与实际安装路径一致。
2025-10-26 16:54:49
211
原创 [MIT6.824] Spring2021 Lab 2: Raft
总体来说,只看lecture对raft还是有些认知不到位的,就像我说我的疑问那里,还有很多不清晰的地方。但是一旦上手做了代码,就把细节的部分掰开弄清楚了。加上网上好心人写的博客很多,知乎也有各种细节问题的讨论,最终还是顺利完成了。最后就是一起测试了。这里的超时选举时间都是300∼900ms300∼900ms图一是每50ms发送一次心跳,图2是每100ms发送一次心跳。可以看到第一次的总时间较短,但CPU用时高。心跳间隔长的总时间较长,但CPU用短(因为等待时间多)。
2023-09-22 00:06:33
776
原创 MIT6.824 Spring2021 Lab 1: MapReduce
需要实现master和coordinator。MapReduce分为两个阶段:Map和Reduce阶段。Map阶段函数提供Key,比如是key,然后Worker通过这个Key获取Value。比如的具体内容。然后将Key和Value(在例子中是文章的内容),传递给map function。获取结果,并将结果分成R个Reduce内容。举个例子。假设我们要对和统计词频。那么就要有两个Map Task(不一定有两个Worker,比如有3个Worker,那么就是2个Worker干活一个围观;
2023-09-03 01:22:14
1153
7
原创 [LeetCode] 128. 最长连续序列
感觉第三种实现比较有意思。虽然实际上写起来就感觉运行会很慢。,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。的话,肯定不用进行这次遍历(因为结果肯定会小于从。然后想一下,可以枚举每个数字,比如x。但是需要维护集合大小。请你设计并实现时间复杂度为。进行排序,然后查找最大序列。给定一个未排序的整数数组。然后还可以使用并查集。朴素的话时间复杂度为。
2023-09-01 23:41:28
616
原创 ARIES,一种数据库恢复算法
比如物理操作是将x的400变为500,undo info是(x-100),表示撤销时应该将值减去100,而不是设为400(因为可能受到其他事务影响)如果该log的页不在脏页表中,或者更新日志记录的LSN小于脏页表中该页的rec lsn(该log已经落盘),就跳过该次记录。如果遇到一个更新日志记录,就用其进行物理undo,并产生一条CLR,将该CLR的UndoNextLSN设置为该日志的prev LSN。当一个操作在一行上执行多次,结果都是相等的,则该操作是幂等的。物理日志记录是幂等的,逻辑操作不是幂等的。
2023-07-31 01:25:07
965
原创 CMU 15-445 Project #3 - Query Execution 题解 关系型数据库执行器
CMU15-445 Project #3 - Query Execution 题解
2023-06-10 22:11:00
1009
原创 Spring Security OAuth2 启动报错
问题描述spring-security-oauth2启动报错spring-security 5.5.0spring-boot 2.5.0java18报错日志java.security.PrivilegedActionException: null at java.base/java.security.AccessController.doPrivileged(AccessController.java:573) ~[na:na] at com.sun.xml.bind.v2.runtim
2023-06-05 14:11:16
1543
1
原创 Feign报错‘org.springframework.cloud.openfeign.FeignContext‘ that could not be found.
因为Spring Boot 3.0.0 中的Spring.factories被移除,所以之前的版本配置失败了。之前SpringBoot版本用的2.5.3没这个问题,升级到3.0.1之后报错[1]可能因为Feign的自动配置需要db依赖,我直接在pom中加上。
2023-05-29 18:26:08
4562
2
原创 期权价格计算
📊看涨期权(按照一定价格买入的权利)和看跌期权(卖出的权利)。美式期权在到期日之前可以被选择执行,欧式期权只能在到期日执行。头寸:期权也分多头空头。多头为买入期权方,空头为卖出期权(也叫做承约方)。如果K是执行价格,St为最终价格。看涨多头收益为max(St-K,0),看跌多头收益为maxK−ST0maxK−ST0。也即K>St是才会行权(按照K卖出股票),否则可以直接按照市场价卖出。股票期权货币期权指数期权期货期权期权被分为。
2023-04-08 00:45:43
2030
原创 [笔记] 查询计划及其优化
Rules:通过静态的条件判断,来重写查询。通过查看catalog而不是数据。Cost-based 枚举SQL的所有方案,并且预估成本然后选择成本低的。
2023-04-07 13:42:47
229
原创 Lucene测试出错:Provider org.apache.lucene.codecs.idversion.IDVersionPostingsFormat could not be instanti
然后复制官网api给出的demo都报相同错误,可能是和什么东西冲突了。调了一个下午不知道问题在哪,之前用的最新版Lucene。又通过测试了,不知道什么问题。
2023-03-22 17:41:14
286
原创 Spring Security logout注销问题
在整合Spring Security 之后,访问路径/logout,会自动变成/login?结论:不要用/logout,随便换个其他的。百思不得其解之后,换了个路径试试成功了。
2023-03-16 20:28:30
247
原创 缓存替换策略:LRU-K算法详解及其C++实现 CMU15-445 Project#1
LRU-K是对LRU算法的改进,规避了一些访问上实际的问题,同时带来的额外开销也是可以接受的,是一个值得学习的算法。
2022-12-27 16:39:56
12991
25
原创 CMU 15-445 (FALL 2022) Project #0 - C++ Primer 题解 Trie
CMU为外校的学生提供了自动测试平台和公开课,代价是什么呢?那就是不要直接公开代码在网上。还请大家遵守。这篇博客记录一些踩的坑,欢迎交流。
2022-11-13 20:26:20
3035
4
原创 GDB 必会的基础操作
如果你想要在没有debug支持的文件(例如没有使用-g)中设置断点。打上一个断点,然后continue多次后使用bt查看堆栈信息。通过command,你可以在达到指定断点时,执行指令。一般gdb还会显示指定位置之前的几行代码,如图所示。可以显示指定函数或行号开始的代码。在(当前文件的)指定行设置断点。在指定文件的行或者函数设置断点。p 变量(int,char等)函数第一行自动设置一个断点。也可以启动程序,但是会在。可以在指定的位置设置断点。来忽略指定断点指定次数。删除指定断点,单写一个。
2022-11-03 18:13:44
158
原创 [问题解决]Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: javax.servlet.http.H
在做SpringMVC时遇到了这个报错。应当是依赖包版本不对。
2022-10-11 00:32:36
2359
原创 Vue一把
Vue是一套前端框架开始使用 Vue - 学习 Web 开发 | MDN (mozilla.org)基于MVVM思想,实现数据的双向绑定。
2022-10-06 22:37:36
237
原创 MySQL Error Code: 2013. Lost connection to MySQL server during query解决
Error Code2013
2022-10-06 17:05:24
3216
原创 Servlet
实现Servlet方法实现接口然后在注解中配置访问路径方法每次请求被调用HttpServelet继承类,实现doGet和doPost方法的封装继承后需要重写doXxx类Servlet urlPattern一个Servlet可以配置多个urlPattern例如配置规则XML配置Servlet在Web.xml中配置Servlet这种方法较老,不推荐Request和Response对象RequestServletRequestHttpServletRe
2022-10-05 13:52:37
153
原创 MyBatis
MyBatis是一种持久层框架,用于简化JDBC开发持久层:将数据保存到数据库Java EE:表现层、业务层、持久层框架是一个半成品软件。在框架基础上构建软件编写更加高效、规范、通用、可扩展JDBC操作繁琐。
2022-10-04 15:59:35
361
原创 Maven入门
Maven是专门用于管理和构建Java项目的工具pom.xml描述对象信息仓库阿里云镜像仓库在maven/conf/settings.xml中配置。
2022-10-03 22:05:08
159
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅