
人工智能基础
文章平均质量分 51
Yonggie
只写优质原创,坚决绝拒绝抄袭 | 研究员 | 广州大学 | 香港中文大学深圳FNii | pytorch_geometric(PyG)、FATE contributor
展开
-
teacher forcing training速览
teacher forcing不局限于rnn,序列数据都可以用。原创 2024-04-30 10:20:05 · 222 阅读 · 0 评论 -
Diffusion Model简明梳理2024,小综述,待续
下面按照时间线梳理Diffusion Model的发展。原创 2024-02-06 12:51:36 · 1398 阅读 · 0 评论 -
Geoffrey Hinton对于AI的警示 20230507
视频:https://www.bilibili.com/video/BV1zo4y1x7LL油管:https://www.youtube.com/watch?原创 2023-05-07 09:47:55 · 482 阅读 · 0 评论 -
pip 本地安装PyG 2.x(pytorch geometric)
虽然这样,但是本身安装的时候所需的很多依赖,在下载的时候还是会网络断掉,需要要么再加入pip源,要么再手动下载pip的file手动安装,当然多试几次也是一种方法,我自己就是多试了几次,趁他网络不注意,就安装好了。根据官网给出的pip和conda不管怎样都会http error,主要是有墙,所以可以浏览器下载后本地安装。可以搜索pip的pytorch geometric,里面有download files。,下载后,scp到服务器上,然后cd到目录后。原创 2023-05-05 23:28:24 · 271 阅读 · 0 评论 -
pytorch lightning报错:type object ‘Trainer‘ has no attribute ‘add_argparse_args‘
在一些时间比较久使用了pytorch lightning的项目里面很容易出现这个。因为pytorch lightening 2.x已经不兼容1.x了。。而他们在写包的setup的时候可能只是写了pytorch lightning>=1.5.0,没写要小于多少(因为他们当时也不知道未来的某个版本是不兼容的),所以在当前时候,pip install的直接是最新版本的,导致了这个问题。原创 2023-05-01 14:04:40 · 10072 阅读 · 2 评论 -
【pytorch】collections.OrderedDict‘ object has no attribute ‘named_parameters‘
这样的话就换个方式加载模型原创 2023-04-25 17:04:28 · 2769 阅读 · 0 评论 -
贝叶斯派 先验分布、后验分布、似然分布、似然估计,通俗解释
先验分布、后验分布、似然分布三个应该在一起,似然估计应该分开。(3)求导数,令导数为0,得到似然方程;(4)解似然方程,得到的参数即为所求;下,度量生成某个样本/事件的分布。(2)对似然函数取对数,并整理;前三个一起出现在贝叶斯公式,是似然,即在已知分布参数。(1)写出似然函数;原创 2023-04-17 09:27:37 · 716 阅读 · 0 评论 -
贝叶斯公式及其“推广”
贝叶斯公式原创 2023-02-06 19:06:02 · 893 阅读 · 0 评论 -
KDD2022 Learning Backward Compatible Embeddings【个人笔记】
KDD2022: https://cs.stanford.edu/people/jure/pubs/bcemb-kdd22.pdf文章本身说的情景并不适合。个人认为此方法适合的场景是:如何在低储存量的前提下交付多个下游用户。而不是文章说的在同一个模型不断迭代的情景下保持对某个用户的稳定节点表示。把原先只在face recognition的方法迁移到图表示上来。另外还做了些工程上的尝试。为了学到一个B矩阵,用来还原上一版,原本应该有222 共8种实验,但是文章只给出了6种。模型使用Pinsage,也就是gr原创 2022-12-05 15:26:16 · 435 阅读 · 0 评论 -
【torch】如何把给定mask按比例选取再次划分mask?
在以torch为基础的很多框架下有一些集成的数据集,数据集往往自带已经划分好的mask。但是如何能够把框架给出的mask再次划分?比如按比例划分出来80%的train mask。原创 2022-11-29 14:48:27 · 733 阅读 · 0 评论 -
huggingface transformer 真 quickstart
对于sentence要先分词,对每个词做一个word embedding,这个过程叫tokenize,所以用tokenizer这个类。那对于中文来说,选用什么tokenizer好?可以见https://github.com/lonePatient/awesome-pretrained-chinese-nlp-models假定我要用这个模型,则是很重要的方法,你需要传入一个mode id来确定tokenizer的适配的模型。原创 2022-10-11 12:09:01 · 613 阅读 · 0 评论 -
ROC曲线简明讲解
受试者工作特征曲线 (receiver operating characteristic curve,简称ROC曲线),来源于雷达,历史不谈。原创 2022-08-15 12:02:07 · 968 阅读 · 0 评论 -
跨模态对齐 20220728
全部是有监督模型尽管casestudy上,能够实现sentenceword↔↔imgobj级别的align,但是并没有一个model是以此为目的,且给出衡量指标的模型,全部的模型都是检索任务。不过retrieval的提升可以理解为query中的obj与samples的obj对得更齐了使得整体的结果上升了。txt端的encoder大部分都是bert,img这边有FasterRCNN和ViT,这些模型retrieval结果的提高,很大程度上是encoder升级换代。httpshttps。...原创 2022-07-28 16:58:11 · 3488 阅读 · 0 评论 -
2022年6月torch使用正则的写法
model是要正则的模型,reg_type选择还是,coef是系数。代码是一个小例子,对哪个module进行正则,这都可以自己挑选,不必对每一个module都正则。一个是Adam或者AdamW优化器里面有weight_decay参数,那个是l2的正则系数...原创 2022-06-09 16:34:09 · 234 阅读 · 0 评论 -
协方差矩阵在torch和numpy中的比较,自行实现torch协方差矩阵
前言数学中(教科书、大学课堂、数学相关的科普视频),一个矩阵的向量往往是竖着的,一列作为一个vector,这一点numpy库也是这样默认的。但是在机器学习以torch框架为例,一个有意义的向量或者说embedding是横着的。比较因为numpy库默认是一列是一个向量而torch等机器学习框架默认一行是一个向量,所以torch.cov(X)和numpy.cov(X.T)是相等的。自行实现torch在较高版本中才有torch.cov函数,低版本的需要自行实现。因为大部分博客都是数学风格的,在减掉原创 2022-05-13 19:31:30 · 4294 阅读 · 0 评论 -
pytorch只想对模型加载部分参数
前言对一个torch模型保存可以使用save dict操作,其本质是一个字典,字典的k是string,表示参数所在的层,v是此层的参数。可以自己debug看看对于模型来说,load_state_dict可以加载之前保存的参数字典,此函数有一个参数,是是否严格加载参数。model.load_state_dict(related_params, strict=True)默认strict是False,当权重中的key和网络中匹配就加载,不匹配就跳过。如果strict是True,那必须完全匹配,不然就报原创 2022-05-10 15:10:58 · 2838 阅读 · 0 评论 -
矩阵线性变换后 协方差矩阵的关系
问题描述以向量横向排列(一行一个向量)举例,对于各个向量均值为0的矩阵XXX来说,其协方差矩阵标记为Σ\SigmaΣ,进行某一变换WWW,结果是X^=XW\hat{X}=XWX^=XW,变换后的协方差矩阵标记为Σ^\hat\SigmaΣ^,问Σ\SigmaΣ和Σ^\hat\SigmaΣ^的关系?解答/记忆方法对于均值为0一维的数据来说,对每一个数字都乘以系数aaa,那么其方差会变为原来的a2a^2a2倍。正式一点的表达是均值0的一维分布YYY的方差μ\muμ,与变换后的分布Y^=aY\hat{Y}原创 2022-04-22 16:38:07 · 2803 阅读 · 2 评论 -
cnn不变性的理解
一般来说,大家认为的cnn的不变性有这几个:平移不变,意思是一只猫头不管在图片的那个位置,cnn都能捕捉到猫头。尺度不变,意思是不管图片是大是小,cnn都能正确识别/捕捉。旋转不变,意思是不管图片如何旋转,cnn都能正确识别/捕捉此同一个东西。更多的讨论是这三种不变的条件:平移不变平移不变是cnn本身天生就有的,拿此的参考图举个例子: 上图是cnn本身的特性,能够平移不变的捕捉局部特征。另外一个表现就是pooling操作,其他博客都喜欢拿max或者min pooling举例子,原创 2022-03-02 12:37:23 · 3559 阅读 · 1 评论 -
torch/numpy生成各种tensor
torch指定所有元素(默认float):torch.tensor([[1,2,3,][4,5,6]])指定shape的float型:# generate a float tensor with shape (1,3)torch.rand(1,3)高斯分布的指定shape(float):# generate a float tensor with shape (1,3) using Normal(Guassian) distributiontorch.randn(1,3)# or t原创 2021-11-17 10:59:51 · 2949 阅读 · 0 评论 -
2021年强化学习框架概览
这个图其实是github上找的,左侧是platform,可以按需求挨个查找。原创 2021-10-22 16:59:17 · 262 阅读 · 0 评论 -
二分类、多分类中acc microf1 macrof1的关系
多分类中, acc=micro f1,证明:https://blog.youkuaiyun.com/da_kao_la/article/details/104616016二分类中,microf1=macro f1,证明:https://blog.youkuaiyun.com/qq_43190189/article/details/105778058原创 2021-09-29 11:42:46 · 1666 阅读 · 0 评论 -
panda profiling简明使用
推荐直接看人家的get started,其他博客废话太多了。https://pandas-profiling.github.io/pandas-profiling/docs/master/index.html最简使用import pandas_profiling as ppimport pandas as pddata=pd.read_csv('sample.csv')report = pp.ProfileReport(data.iloc[:,:-1])report.to_file('rep原创 2021-09-22 17:13:52 · 260 阅读 · 0 评论 -
seaborn制作feature label整体概览
我这种写法只能一个feature一个feature的来看,也就说假设有3个feature,feat1、feat2、feat3,那么就生成3个feat-label图。import seaborn as snsfig=ax = sns.jointplot(x=feat1_np_array,y=np_labels,kind='hex',)ax.set_axis_labels('feat1','labels')fig.savefig('feat1-label.png')效果:...原创 2021-08-20 09:22:47 · 346 阅读 · 0 评论 -
xgboost learning to rank 简明实用使用说明
说在前面首先你要了解什么是xgboost、了解什么是监督学习、了解什么是learning to rank(ltr)、掌握基本的python常识等。这些不赘述,有的是资源。几个比较推荐的:https://datascience.stackexchange.com/questions/10179/how-fit-pairwise-ranking-models-in-xgboosthttps://zhuanlan.zhihu.com/p/111636490这个链接也太长了吧……https://me原创 2021-08-18 11:33:42 · 2577 阅读 · 0 评论 -
python zip和zip longest
其实很简单,zip是python语法自带的,但是zip_longest是itertools里面的。zip就是把两个结合起来,比如【1,2,3】和【9,8,7】,zip之后就会是【1,9】,【2,8】,【3,7】。但是zip只能适用于两个相同长度的list,否则就会报错。zip longest适用于不同长度的。【1,2】和【9,8,7】也可以,结果类似,只不过你要后面加一个参数fillvalue,填补上空缺的那个值。#examplefrom itertools import zip_longest原创 2021-07-12 11:24:48 · 517 阅读 · 0 评论 -
转换函数的比较
import torchimport matplotlib.pyplot as pltimport numpy as npk=0.1b=0num_range=4def convert(p,k,b): ''' convert non-zero-one to zero-one with linear-clip function :param p: original value :param k: k in [0, +∞] :param b: b in [0,原创 2021-04-14 15:09:00 · 88 阅读 · 0 评论 -
创建repository后推荐的命令行扫盲解读,自用
前言这篇博客没有复杂的操作,只是把git和github的基本常识给扫盲掉,免得搞得一头雾水。Git与Github显然程序员们离不开github,github呢又和git千丝万缕。当年下载了git的同学是不是一头雾水?只会下download zip的同学,说的就是你。那么他们的关系是怎样的呢?github本身是git的远端仓库,所以,想进入github的版本操作,就一定要知道git本身的知识。举个例子,如果你想上传自己的项目到github上,项目有很多文件,你只是用图形界面是相当的麻烦。(当然如果你原创 2020-12-05 20:54:12 · 204 阅读 · 1 评论 -
kaggle titanic accuracy 78% 方案
先放个图,证明我确实是提交了哈。前言我使用了sklearn做数据处理和机器学习,分类方法直接使用了集成方法random forest。读取数据使用pandas。其实主要的解释都在代码里面。那显然,这么简单的分类问题总是有巨多中解决方案的,所以我的方案只是一种而已。方案...原创 2020-11-13 15:24:55 · 172 阅读 · 0 评论 -
pytorch 使用mask-rcnn物体检测
前言伸手党,直接项目全拿走链接:https://pan.baidu.com/s/1vqpG4SRseZFBWf0xYHxKYw提取码:ydva下载并且配好安装必要的包即可运行。运行main_code.py使用了opencv和pytorch,无TensorFlow!效果至于文字位置、颜色、框框显示还是mask显示,你可以自己调。稍微一说代码是直接使用torchvision下载的预训练模型预测前要先处理照片,使其变成能够喂进去网络的格式,预测后要取出预测结果,用这些信息可视化结果。原创 2020-11-04 22:04:07 · 1344 阅读 · 2 评论 -
python opencv 自适应中央显示图片或视频
先给代码中央显示图片三个工具函数,直接后面有三行代码的示例。def GetScreenCenter(): root = tk.Tk() return root.winfo_screenwidth()//2,root.winfo_screenheight()//2def AdaptSize(img): # 视频、图片过大直接1/2 center_x, center_y = GetScreenCenter() img_h, img_w, _ = img.shape if i原创 2020-11-04 12:45:26 · 2433 阅读 · 0 评论 -
线性代数自用笔记
SPACEAny linear combination of any vectors in the space STAY in the space.Space MUST go through the origin.CONSTRUCT SPACEColum space, colums of a matrix construct a space: C(A)C(A)C(A)Null space, the solutions of the system construct the null spac原创 2020-07-23 14:22:50 · 746 阅读 · 0 评论 -
pytorch分别用MLP和RNN拟合sinx
0理论上带有一个非线性函数的网络能够拟合任意函数。那显然MLP和RNN是科研拟合sinx的。开头先把结果给展示出来,然后是代码,最后是我的过程。懒得看的直接看前半部分行了,过程给有兴趣的人看看。先上结果图注:每次训练torch初始化有不同,所以结果有出入。代码乍一看挺多的,实际上简单得一批。只不过是定义了两个网络,训练了两次,展示图片的重复代码而已。具体代码已经注释。import torchimport mathimport matplotlib.pyplot as pltcl原创 2020-06-24 15:17:21 · 3288 阅读 · 2 评论 -
简洁 为什么用word2vec
word embedding所谓word embedding就是把一个词用编码的方式表示以便于feed到网络中。举个例子,最简单的one-hot编码方式。word2vec由于onehot不能表示词之间的关系、维度太大等等问题,需要其他编码方式。word2vec同样也是最终目标是把一个单词编码成一个向量,只不过用的是网络训练的手段。这个向量就是onehot向量到linear层的权值。不管...原创 2020-04-14 17:58:01 · 438 阅读 · 0 评论 -
真别再纠结标准化还是归一化了
很多博客把他们搞混。毕竟字典也是把他们放一起了。既然搞混,那混在一起看好了在我看来他们其实都是对feature value做了变化就是了。纠结那么多概念的问题也没什么意义。有些是不变化原数据分布的其实均值方差变了那分布肯定就变了。我这里“不改变原数据分布”的意思是概率密度函数的形状不变。xi=xi−μσx_i=\frac {x_i-\mu} {\sigma}xi=σxi−μ这...原创 2020-04-12 16:31:37 · 940 阅读 · 0 评论 -
opencv+yolov3实现物体检测
效果:yolo, you only look once. 如此著名故事又多的模型,真的值得一试。我们是直接下载人家yolov3模型来用,所以需要下载几个东西,除了detection是我们自己写的代码,其余都要下载。代码讲解:其实主要的代码在画框上,而不是怎样预测上,因为我们直接加载了yolo来detect。首先加载yolo,加载类别,没什么好说的...原创 2020-03-19 13:41:23 · 1558 阅读 · 3 评论 -
pytorch、torchvision离线pip
开官网。https://pytorch.org/找到这个看好你要下载的版本。直接打开它下载的网页:https://download.pytorch.org/whl/torch_stable.html找到和你python相匹配的whl包。ps:你的pip要下载好wheel包,pip install wheel我的要下载torchvision0.5.0+torch1...原创 2020-02-14 10:12:12 · 1283 阅读 · 0 评论 -
pip使用清华源
pip install --upgrade torch==1.4.0 torchvision -i https://pypi.tuna.tsinghua.edu.cn/simple包名自己改即可。原创 2020-02-13 19:11:55 · 3446 阅读 · 2 评论 -
pytorch深度学习 3层全连接层,使用MNIST,图片训练、识别、测试全过程示例
请一定要看代码中的解释,一定要理解深度学习的原理,一定要理解pytorch的实现方法。一些简介:MNIST、经典的手写数字图片,Fashion-MNIST是MNIST的更新版,意在取代MNIST。从0-9共10个类别。整体上我并没有用程序设计模块化的写法,直接一溜烟下来的。整个程序的流程:1.得到MNIST图片训练材料作为training set、2.transform图片使得...原创 2020-01-05 16:32:50 · 1675 阅读 · 1 评论 -
pytorch中一些基本的常识,懒得翻文档快速理解
pytorch--------------------------------------------------------------------------------------------------------------------------------生成2x3随机tensor:a=torch.randn(2,3),生成高斯分布的数据。生成2x3随机tensor:a=to...原创 2020-01-01 16:58:01 · 662 阅读 · 0 评论 -
maven 安装 复旦nlp
复旦nlp:https://github.com/FudanNLP/fnlp安装和编译看它的QuickStart:https://github.com/FudanNLP/fnlp/wiki/quicktutorial#12-%E5%91%BD%E4%BB%A4%25E遇到的错误:1.其中如果你mvn install -Dmaven.test.skip=true 这个命令出现了 ...原创 2019-05-08 11:45:22 · 452 阅读 · 0 评论