摘要: 类型萃取 借用化学中的萃取概念,类型萃取即将混合类型中的部分类型提取出来。在C++中可以使用模板实现这个功能。 非类成员变量的类型萃取 对于变量混合类型如 int * 、const int 等,我们可以将 * 和 const 去掉,只留下 int。 template <typename T> str 阅读全文
posted @ 2024-08-27 20:55 imyhy 阅读(20) 评论(0) 推荐(0)
摘要: 机器学习简介 Learn from data、深度学习 经典定义:利用经验改善系统自身的性能 [T. Mitchell 教科书, 1997]。 数据 -> 算法 -> 模型 基本术语 数据: 数据集;训练;测试 示例(instance);样例(example) 样本(sample) 属性(attri 阅读全文
posted @ 2024-08-25 18:33 imyhy 阅读(41) 评论(0) 推荐(0)
摘要: 语言模型与神经网络 语言模型(Language Model) Chat GPT 流畅的语言生成能力 自然语言是一种上下文相关的信息表达和信息传递方式。 定义:语言模型是衡量一句话出现在自然语言中的概率的模型。 数学形式上,给定一句话 \(s=\{w_1,\dots,w_n\}\) ,它对应的概率为: 阅读全文
posted @ 2024-08-25 18:33 imyhy 阅读(29) 评论(0) 推荐(0)
摘要: 自然语言处理(NLP) 基础:语言模型 ChatGPT能力 语言理解和生成能力 抽象能力 强大的学习和泛化能力 自然语言处理 交叉学科:计算机科学、人工智能/机器学习、语言学等 自然语言理解:理解文字的含义 自然语言生成:用文字表达特定的意图和思想 利用计算机对自然语言进行各种加工处理、信息提取及应 阅读全文
posted @ 2024-08-25 18:25 imyhy 阅读(98) 评论(0) 推荐(0)
摘要: 前缀函数(\(\pi\)函数) 定义 border :若字符串 \(s\) 存在某个真前缀和某个真后缀相同,则这个真前缀或真后缀称为 \(s\) 的一个 border。\ 前缀函数 :前缀函数 \(\pi[i]\) 的值为字符串 \(s\) 的前缀 \(s[0,i]\) 的最长 border 的长度 阅读全文
posted @ 2024-02-25 15:59 imyhy 阅读(93) 评论(0) 推荐(0)
摘要: 前置知识Splay,可以参考这篇博文。 算法思想 动态树算法用于解决一类树上问题,涉及树边的连接和断开,本质是维护一个森林。该算法将树上的边划分为实边和虚边,每一条实边构成的实链有一个Splay维护,Splay之间用虚边连。LCT可以轻易实现实链的重新划分,因此可以借助Splay实现高效维护树上路径 阅读全文
posted @ 2023-10-12 21:28 imyhy 阅读(119) 评论(1) 推荐(0)
摘要: 数学推导 根据代数基本定理,\(n\) 个点值可以唯一的表示一个 \(n\) 阶多项式,快速傅里叶变换可以帮助我们快速求出一个n就多项式的点值表示。 对于一个 \(n\) 阶多项式 \(A(x)\) 我们想要得到它的点值表示,朴素的方法是用 \(n\) 个值代入计算。这样计算的时间复杂度是 \(O( 阅读全文
posted @ 2023-10-07 22:36 imyhy 阅读(9) 评论(0) 推荐(0)
摘要: Hello World 阅读全文
posted @ 2023-09-30 19:54 imyhy 阅读(4) 评论(0) 推荐(0)
摘要: 问题 求解线性方程组 算法思想 高斯消元法的实现主要分为两种,一种是普通的高斯消元,将系数矩阵消为上三角矩阵,再一步步回代求出所有未知数;第二种是高斯-约旦消元法,将系数矩阵消为对角矩阵,不需要回代即可直接解出未知数,这里展示第二种做法。 代码实现 例题:P3389 【模板】高斯消元法 #inclu 阅读全文
posted @ 2023-09-24 15:46 imyhy 阅读(45) 评论(0) 推荐(0)
摘要: 问题 对于树上路径上的信息进行修改和查询操作 算法思想 对于树上的每个节点,将其节点最多的子树对应的儿子称为重儿子,其他儿子称为轻儿子,连接重儿子和其父亲的边称为重边,其余边称为轻边。那么这棵树会被划分为一条条由重边和其连接的节点组成的链,称为重链。每条链由轻儿子开头,一直延申至叶节点。如图所示。 阅读全文
posted @ 2023-09-21 22:39 imyhy 阅读(23) 评论(0) 推荐(0)