- 博客(29)
- 收藏
- 关注
原创 操作系统八股
用户态和核心态是操作系统为了保护系统资源和实现权限控制而设计的 CPU 的两种运行级别。可以控制进程对计算机资源的访问权限。用户态下进程只能访问受限的资源和指令集,不能访问操作系统的核心部分,也不能直接访问硬件资源。核心态下进程可以访问全部的操作系统核心资源和指令集。进程可以直接访问硬件资源,进行系统调用、管理内存和文件系统等操作。当系统中存在这两个或多个资源的时候,当每个进程一边持有资源,并且又等待其他进程占用的资源,互相等待着对方的资源,就会造成死锁。
2026-11-02 22:02:59
202
原创 计算机网络八股
强缓存和协商缓存是 HTTP 协议中的缓存机制,可以用来缓解服务器的压力和提高网页加载的速度。目前使用的强缓存是通过 Http 响应中的 Cache-Control 字段实现的,通过 max-age 告诉浏览器在指定的时间范围内可以直接使用缓存中的内容,无需再次访问。当强缓存失效的时候,浏览器发送 HTTP 请求到服务器,服务器通过和此次请求头中派生出来的条件请求头,对比响应头中的 ETag 和 Last-Modified 字段进行对比。
2026-11-01 18:12:02
148
原创 Java八股
主要是因为他的操作不是原子性的,当两个线程同时执行读写操作时,一个线程进行写操作,另一个线程进行读操作,可能导致数据不一致的情况。当在多线程的情况下,检查再写入这种操作存在竞争条件,可能被其他线程插入,导致重复 put 或数据覆盖。if (!可以使用 Collections.synchronizedMap() 方法,该方法创建出来一个线程安全的 HashMap,通过给每个方法加 synchronized 来实现单次操作的线程安全,该方法返回一个同步的 Map 包装器,使得对所有的 Map 操作都是同步的。
2026-11-01 18:11:49
311
原创 Mysql+Redis八股
慢查询是指对数据库的操作超过了 long_query_time 这个时间阈值,通常为10s,生产环境中可以自己设置。超过这个时间会被记录到慢查询日志。查询的数据量过大,会导致查询操作变慢。查询语句比较复杂,比如涉及到多个表的连接和子查询,可能导致查询变慢。索引失效的情况下,查询会退化成全表扫描,导致查询变慢。硬件资源不足,比如数据库服务器上同时运行了多个查询语句,这些语句之间竞争 cpu、内存等资源,导致服务器负载过高,查询变慢。确保开启了慢查询日志,运行语句,找到查询慢的 SQL 语句。
2026-11-01 18:10:54
134
原创 最全深度学习
Tensor(张量)是PyTorch的核心数据结构。张量在不同学科中有不同的意义,在深度学习中张量表示一个多维数组,是标量、向量、矩阵的拓展。如一个RGB图像的数组就是一个三维张量,第1维是图像的高,第2维是图像的宽,第3维是图像的颜色通道。
2026-09-10 10:11:55
159
原创 循环神经网络
是用来回去上述所说的词向量的技术,自然语言是由文字构成的,而语言的含义是由单词构成的。即单词是含义的最小单位。因此为了让计算机理解自然语言,首先要让它理解单词含义。词向量是用于表示单词意义的向量,也可以看作词的特征向量。将词映射到向量的技术称为词嵌入还有一种使用向量表示单词意义的方式是独热向量,独热向量很容易构建,但它们通常不是一个好的选择。一个主要原因是独热向量不能准确表达不同词之间的相似度,因为任意两个不同词的独热向量之间的余弦相似度为0,所以独热向量不能编码词之间的相似性。
2026-09-10 10:11:41
243
原创 NLP自然语言处理
文本表示是将自然语言转化为计算机能够理解的数值形式,是绝大多数自然语言处理(NLP)任务的基础步骤。早期的文本表示方法通常将整段文本编码为一个向量。这类方法实现简单、计算高效,但存在明显的局限性——表达语序和上下文语义的能力较弱。因此,现代 NLP 技术逐渐引入更加精细和表达力更强的文本表示方法,以更有效地建模语言的结构和含义。文本表示的第一步通常是分词和词表构建。分词(Tokenization)是将原始文本切分为若干具有独立语义的最小单元(即token)的过程,是所有 NLP 任务的起点。
2026-09-10 10:11:23
185
原创 线性回归和逻辑回归
逻辑回归(Logistic Regression)是一种用于解决分类问题的统计方法,尤其适用于二分类问题。尽管名称中有“回归”,但它主要用于分类任务。逻辑回归通过将线性回归的输出映射到[0,1]区间,来表示某个类别的概率。
2026-08-07 11:23:07
176
原创 KNN算法
K近邻算法(K-Nearest Neighbors,KNN)是一种基本的分类与回归方法,属于监督学习算法。其核心思想是通过计算给定样本与数据集中所有样本的距离,找到距离最近的K个样本,然后根据这K个样本的类别或值来预测当前样本的类别或值。
2026-08-03 10:54:53
646
原创 模型评价指标
对于分类问题,最常用的指标就是“准确率”(Accuracy),它定义为分类器对测试集正确分类的样本数与总样本数之比。此外还有一系列常用的评价指标。
2026-07-25 16:06:40
156
原创 模型求解算法
正则化可以有效防止过拟合,增强模型的泛化能力。这时模型的评估策略,就是让结构化的经验风险最小,即增加了正则化项的损失函数最小,称为这其实就是求解一个。代入训练集所有数据(),要求最小值的目标函数就是模型中参数的函数。具体求解的算法,可以利用数学公式直接计算解析解,也可以使用迭代算法。
2026-07-25 08:51:21
190
原创 模型评估和模型选择
对于模型一次预测结果的好坏,需要有一个度量标准。对于监督学习而言,给定一个输入X,选取的模型就相当于一个“决策函数”f,它可以输出一个预测结果f(X),而真实的结果(标签)记为Y。f(X) 和Y之间可能会有偏差,我们就用一个损失函数(loss function)来度量预测偏差的程度,记作 L(Y,f(X))。损失函数用来衡量模型预测误差的大小;损失函数值越小,模型就越好;损失函数是f(X)和Y的实值函数;
2026-07-22 20:40:25
196
原创 什么是特征工程
对原始的特征进行过滤筛选,通过对原始数据的处理、转换和构造,生成新的特征或选择有效的特征,从而提高模型的性能。特征工程是将原始数据转换为可以更好地表示问题的特征形式,帮助模型更好地理解和学习数据中的规律。
2026-07-12 10:48:07
236
原创 运维Agent(Python)
Plan-Execute-Replan是一种协作的任务执行模式,核心思路是:先规划、再执行、随时调整。Multi-Agent(多智能体)就是不是一个AI在单打独斗,而是多个AI各司其职、分工协作。每个Agent负责一个专门的职责,就像公司里不同岗位的同事配合完成一—个项目。
2026-05-04 09:03:23
432
原创 对话Agent(Python)
RAG召回:赋予外部知识记忆能力。动态Prompt:让大模型学习外部知识,并带有记忆(历史对话)。ReAct模式:实现复杂任务拆解与工具调用。
2026-05-02 21:48:53
390
原创 知识库Agent(Python)
你有没有过这样的经历:项目上线前夜,突然报了一个告警,你印象中之前有人写过一份处理手册,但死活找不到在哪。翻了半小时的飞书文档、翻了聊天记录、翻了内部Wiki,最后发现那份文档藏在某个三级目录下的一个不起眼的角落里…再比如,新同事入职了,问你“咱们这个API的鉴权流程是什么?“,你说”文档里有”,但他可能花了一下午,都没找到那份写得最全的文档。这就是传统文档管理的痛点——信息孤岛。什么意思呢?就是说,你的知识明明存在,但它们散落在各个角落,像一座座孤岛,彼此之间没有桥梁相连。
2026-05-02 10:42:31
427
原创 AI名词大扫盲
Prompt 就是你发给大模型的所有输入内容,不只是一句简单的问题,而是你塞进messages列表(如上所示)里的所有文字:指令、背景信息、参考资料、示例、格式要求...全部算在内,总称为Prompt。Prompt要装在上下文窗口里面。Agent(智能体),是一个以大模型为"大脑",能自主感知环境、做出决策、调用工具、完成多步骤任务的程序。Tool就是给大模型「装上手」的方案,让它从「只动嘴的参谋」,变成「能落地干活的实干家」。告诉大模型怎么填参数。
2026-05-01 16:45:55
579
原创 数据库SQL学习(进阶篇)
用户定义变量是用户根据需要自己定义的变量,用户变量不用提前声明,在用的时候直接用“@变量名”使用就可以。其作用域为当前连接。-- 赋值。
2026-03-07 08:36:58
521
原创 数据库SQL学习(基础篇)
1)SQL语句可以单行或多行书写,以分号结尾。2)SQL语句可以使用空格/缩进来增强语句的可读性。3)MySQL数据库的sQL语句不区分大小写,关键字建议使用大写。4)注释:单行注释:--注释内容或 #注释内容多行注释:/*注释内容*/
2026-02-14 15:16:09
1488
原创 文字生成transformer
transformer的encoder和之前讲过的bert是大致一样的。对比Encoder和Decoder,我们可以看到两个模型的区别就在于,Decoder中有一个“”和一个“下面会有说到。
2026-01-29 21:30:55
789
原创 自注意力机制 self-attention
之前我们模型的输入一直都是基础的数值或者是图片,今天开始研究输入序列,我们可以尝试用之前的方法,用one-hot Encodeing来表示一个序列的每一个字但是就有一个问题,汉字一共有两万多,那岂不是非常浪费空间,并且无法体现出文字之间的关系,就比如(我)和(你)都是代词,那么(我)和(你)之间的关系,就要比(我)和(狗)之间的关系更近一点,同理,(狗)和(猫)之间的关系又要更近一点,因为他们都是动物。于是我们采用nn.Liner将高维向量,转换成低维向量,一般转换成768维,方便后续模型的输入。
2026-01-24 12:41:12
1261
原创 图像分类实战与半监督学习
先来说一下什么是半监督学习,就是在数据集中,有一部分的数据是没有标签的,但是数据对深度学习是非常重要的,在非必要的情况下,我们要把这些数据利用上。于是,我们可以用模型预测出来的值来当作数据的真实值,前提是模型的预测准确率要非常的高,大概在70%以上的时候,就可以用预测值来当作正确值;相反,如果模型的预测正确率非常低,可能会对模型的训练起到相反的作用。
2026-01-20 21:46:40
920
原创 对上一个模型的优化
解决过拟合问题,在普通的loss后面加上参数的平方,对于那些偏离模型很远的点,这个点提供的loss就会很大,导致模型想要去找他的时候会产生更大的误差,把w变小,让w更靠近0,从而导致模型变得很平滑总而言之,正则化就是为了使模型变得更平滑,缓解模型过拟合。
2026-01-16 20:27:14
218
原创 基于深度学习的新冠病毒人数预测的回归项目实战
这里要特别注意linner的维度问题,全连接,前一层的输出维度为后一层的输入维度。由于最后得到的维度为二维,所以要用x.squeeze(1)将其转变为一维,用来和y进行计算def __init__(self, inDim): # inDim为输入维度super(Mymodel, self).__init__() # 重新定义父类的初始化函数def forward(self, x): # 模型前向传递过程x = self.fc1(x) # 通过第一层全连接。
2026-01-16 12:05:19
1131
原创 深度学习小入门
for batch_x, batch_y in data_provider(X, Y, batchsize): # batch_x,batch_y为数据集的数据和标签。w_0 = torch.normal(0, 0.01, true_w.shape, requires_grad=True) # 这个w需要计算梯度。para.grad.zero_() # 使用过的梯度,归0,否则会累加。pred_y = fun(batch_x,w_0, b_0) # 算出预测值。
2026-01-14 20:33:35
311
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅