科研入门
配色
https://mycolor.space/
素材
https://www.freepik.com/
绘图-python
seaborn库
绘图-matlab
图论绘图
Gephi
绘图-
tableau
Seaborn (sns)
seaborn 是对 matplotlib 进行二次封装而成的,尽管这两者我都不会。
EDA:Exploratory Data Analysis 探索性数据分析
直接看这篇文章吧
AI的数学基础
使用的书 :《人工智能的数学基础》
大概是在里面找些重要的内容,实际上B站有这个的课。
Gram-Schmidt Process
wiki的翻译: 格拉姆-施密特正交化
给一点基础的定义
VnV^nVn 维数为 nnn 的内积空间
v∈Vnv \in V^nv∈Vn , VnV^nVn 中的元素,可以是向量函数等
⟨v1,v2⟩\langle v_1,v_2 \rangle⟨v1,v2⟩ , v1,v2v_1,v_2v1,v2 的内积
spanv1,v2,...,vn\text{span}{v_1,v_2,...,v_n}spanv1,v2,...,vn : v1,v2,...,vnv_1,v_2,...,v_nv1,v2,...,vn 的张成空间
projvu=⟨u,v⟩⟨v,v⟩\text{proj}_v u=\frac{\lang u,v \rang}{\lang v,v\rang}projvu=⟨v,v⟩⟨u,v⟩ : uuu 在 vvv 上的投影
算法
利用投影原理构造新的正交基
假设 v∈Vnv \in V^nv∈Vn 。VkV^kVk 是 VnV ...
图神经网络
前言
以下按照 CS224w\text{CS224w}CS224w 顺序进行,显然,其中肯定会穿插一些作者认为的应该具有的基础芝士(不过本人才大一,说不定听课的都掌握了)
但是我科技树乱点的,所以中途可能会学很多前置芝士。
ToDoList
目录
待办
核方法
还没学,在2.2.3
神经网络那个函数
在2.2.4
第二章剩下的内容
让我咕一下
N-gram 平滑化
还没学
1 概念
这一章并没有讲什么东西,但是我们依然可以学习以下内容
一些任务类型
包括 Graph-level,Node-level,Community(Subgraph)-level,Edge-level
实例
Node classification
Predict a property of a node
Example: Categorize online users / items
Link prediction
Predict whether there are missing links between two nodes
Example: Knowledge graph co ...
NLP入门
前言
看到了一个 NLP\text{NLP}NLP 研究等位基因的算法,虽然感觉不是很科学,但是这确实是一个入门的点,值得学学。
内容
词性标注&分词
这个就是查字典,显然这个是语文/英语等语言学科研究的内容
然后有些算法,比如AC自动机这些。
标记词性是一个隐马尔可夫模型,以及一个贝叶斯网络
上面可能写的很民科,后头在仔细研究一下。
句法分析
关键词提取
摘要提取
感知机词法分析器
短语提取
拼音转换
英译人名识别(这都可以?)
日记
11月
报名了百度的那个 nlp 比赛,选的赛道 1 。
11.23
2.27
莫比乌斯反演学习记
萌新的莫比乌斯反演学习记。
开头规范
定义单位函数 ϵ(n){1n=10n≠1\epsilon (n)\begin{cases}1 & n=1\\ 0 & n\neq1 \end{cases}ϵ(n){10n=1n=1
定义幂函数 Idk(n)=nkId_k(n)=n^kIdk(n)=nk 注意 kkk 取值从 000 开始
定义除数函数 σk(n)=∑d∣ndk\sigma_k(n)=\sum_{d|n} \limits d^kσk(n)=d∣n∑dk 注意 kkk 取值从 000 开始
以及欧拉函数 φ\varphiφ
迪利克雷卷积
定义数论函数Z+→C\mathbb{Z_+} \to \mathbb{C}Z+→C 的函数间的一中二元运算,即:
(f∗g)(n)=∑d∣nf(d)g(nd)(f*g)(n)=\sum_{d|n}\limits f(d)g(\frac{n}{d})(f∗g)(n)=d∣n∑f(d)g(dn)
其中,一个比较重要的性质是若 f,gf,gf,g 是积性函数,那么一定也有 (f∗g)(f*g)(f∗g) 是积性函数。
(似 ...
ICPC2022 西安游记
Day -1
热身赛,感觉还行。
Day 1
早上十点起来,然后十一点十多分来机房,发现俩队友还没来,显然组对队了。
刚开始就卡了签到 J ,然后我看了一下,发现最多只有两个数字选进去,然后就秒了。
接着看F ,又是一道签到题,秒了
然后看 C ,很显然的贪心策略是先复制再生产,枚举生产次数即可。
又做了G,很显然最大长度是低于根号的,写了个可以被卡的,但是出题人仁慈没卡。
到此为止一切良好。
队友又说了L的做法,说是长链剖分然后把所有叶子节点统计,然后弄了个板子,交了几发都是WA,开始怀疑长链剖分出错了。
然后做E,发现可以弄成三进制来做,答案为数位和+数位,然后贪心做,还好没有假。
此时时间剩下一小时,封榜了,队友开始重写L,还是WA
然后最后30min,我才发现类似于完全二叉树这种的图用这个贪心得到的答案不对。
最后也没过,遗憾,打铁了。
后记
中途查我们学校队伍排名的时候,不知道怎么打开了浏览器,直接吓半死,事后才知道五秒内关了没事,不过就算有事也没法剥夺我的铁牌
大概是大一上的ACM生涯就结束了,一铁一铜,任重道远。
图论板子
最短路
这部分用wiki的即可
网络瘤
最大流
dinic
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106#include<iostream>#include<cmath>#include<cstdio>#include<cstring>#include<queue>#include<stack>#include<vector>#include<set>#include<map>#include<algorithm>using namespace std;const int maxn=20020;in ...
图论
前言
这是学习记,板子准备在另一个博客用。
kruskal 重构树
我们考虑如何处理 A,BA,BA,B 两点路径中最大边最小?
很贪心的,我们考虑从小到大加入边,那么显然,仅需满足 A,BA,BA,B 在一个并查集,即有路径中的最小的最大边。
那么多次询问怎么办?带撤销并查集然后胡乱弄个operator跑莫队?
显然不是,这就是 kruskal\text{kruskal}kruskal 重构树可以解决的问题
我们考虑如何表示路径?把一条边 {x,y,dis}\{x,y,dis\}{x,y,dis} 取出来然后它单独生成一个点,点权pip_ipi表示边的大小,然后再让这个新点代替x,yx,yx,y ,继续操作,既有以下性质:
plca(x,y)p_{lca(x,y)}plca(x,y) 即为 x,yx,yx,y 两点的路径的最小的最大值。
123456789101112131415161718192021void getkruskal(){ for(int i=1;i<=n*2;i++) fat[i]=i,sz[i]=1; for(int i=1;i<=n*2 ...
博弈论
前言
nim 游戏
A,B 两人取石子 , A先取,A能赢当且仅当所有石子异或和为 000
证明:此时如果 B取是 xxx, 并且取得的不是最后一组 ,aaa 也一定可以取到一组 xxx ,否则 BBB 取到的就是最后一组,然后重复,直到取完。
12345678while(T--){ cin>>n; int tmp=0,tmd; for(int i=1;i<=n;i++) cin>>tmd,tmp^=tmd; if(tmp) cout<<"Yes"<<endl; else cout<<"No"<<endl;}