自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 2020秋招 携程算法岗笔试编程题解答

矩阵求导题目:给出一个5*2*2的张量A,一个2*2*2的张量B,一个5维向量M;M中的元素为0或者1。我们执行这样的矩阵乘法pointwise_matmul(A[1,2,3,4,5],B[M])即让i=1:5, A[i] 对应的2*2矩阵和B[M[i]]对应的2*2矩阵两两之间做矩阵乘法,这样将得到5个结果2*2矩阵,即输出5*2*2的张量Z。现在给出A,B,M和Z的导数dZ,请问A,B,M的导数dA,dB和dM分别为何?解答:这是一道概念题。熟悉多元函数微分学的同学很容易就能写出矩阵求导的

2020-10-19 11:53:05 1427

原创 CS231n assignment1

2020版的斯坦福CS231n深度学习与计算机视觉的课程作业1,这里只是简单做了下代码实现,并没有完全按照作业要求来。1 k-Nearest Neighbor classifier使用KNN分类器分类Cifar-10数据集中的图片,这里使用Pytorch的张量广播和一些常用运算快速实现一下,并没有考虑效率。基本操作和numpy大同小异。from collections import Counterdef knn(X,y,X_unknown,k=1): # 3通道图像展平成1维向量

2020-08-05 21:52:16 340

原创 GAN快速入门(Pytorch based, 二维点集生成)

简介GAN的主要结构包括一个生成器G(Generator)和一个判别器D(Discriminator)。生成器接受一段从各向同性高斯分布中采样的噪声向量,输出我们的目标产物。判别器负责给这个产物打分,判断它像不像真实的物体。我们的训练方法就是,让判别器尽可能地分辨真假,也就是以真实物体标签为1,虚假的产物标签为0,训练判别器。与此同时,让生成器的参数学会欺骗判别器,也就是虚假的产物标签为1,训练生成器。一般来说,为了让生成器的训练更高效,我们会先更新k次判别器的参数,再去训练一次生成器,这样生成器将能

2020-08-04 13:02:45 2868 3

原创 CNN搭建端到端的验证码识别系统

卷积神经网络验证码识别深度学习大行其道的一个重要原因,是算力的提升,技术的进步允许我们每个人都自由地使用个人PC训练强大的神经网络。神经网络的强大能力有效地辅助了我们开发各类新式软件,举个例子,原本的一整套语音识别系统,需要一个pipeline的多种算法协同工作才能发挥作用。我们要先预处理语音,过滤噪声和背景;然后把语音分割成一个一个音节;然后使用HMM等模型识别语音。而如果使用深度学习的方法,我们只需要把语音信号丢入一个LSTM,使用端到端的训练方法,就能得到一个效果更好的语音识别系统。这种端到端的设

2020-07-20 16:36:15 824

原创 线性代数的应用场景

机器学习与线性代数自打我开始学习机器学习的相关知识以来,线性代数就一直是制约我读懂算法的最大短板。尽管经过大概两个月的学习,我的代数知识积累似乎已经足以让我不害怕任何数学推导了,但是毕竟是将来要赖以生存的本领,如果有一天忘记了它们我会很沮丧的。所以这里我还是决定整理一下与机器学习相关的所有数学知识,方便随时查阅,杜绝忘却。笔记将以花书《深度学习》为思维导向,从底到上梳理各种可能用到的数学知识。代数的运算律和标量类似的运算律有分配律、结合律,而一般不满足交换律,因为代数是有维度的。AB≠BAexp:

2020-05-25 00:14:06 5410

原创 Deep Reinforcement Learning超简单入门项目 Pytorch实现接水果游戏AI

学习过传统的监督和无监督学习方法后,我们现在已经可以自行开发机器学习系统来解决一些实际问题了。我们能实现一些事件的预测,一些模式的分类,还有数据的聚类等项目。但是这些好像和我们心目中的人工智能仍有差距,我们可能会认为,人工智能是能理解人类语言,模仿人类行为,并做到人类难以完成的工作的机器。所谓KNN、决策树分类器,好像只是代替人类进行一些简单的工作。但今天,我们似乎在强化学习的领域找到了通往真正...

2020-05-02 13:57:44 2739 1

原创 Elastic Weight Consolidation(EWC) for Life long Learning

Life Long learning连续学习的概念大概是在2016年以后才开始流行的,虽然今天的工业界中几乎都是使用一个或多个模型对应一个任务,但是为了让机器更像人,让机器能同时解决多个任务,同时把过去的知识运用到新的任务上,也是值得研究的课题。方法Regularization-based methodsParameter isolation methods我们要实践的就是这种非常...

2020-04-11 23:11:56 7872 23

原创 Meta Learning技术 MAML

Learning to learn——Meta learningMeta Learning 最常被用来解决少样本(Few-Shot)的问题,在这边我们介绍一篇经典的论文 Model-Agnostic Meta-Learning(MAML)。由题目可知他是一种「与模型无关的」元学习,亦即这种方法可以匹配任何使用梯度下降算法(Gradient Descent)训练​​的模型,并能应用于各种不同的学习...

2020-04-10 01:41:03 669

原创 基于DANN的图像分类任务迁移学习

注:本博客的数据和任务来自NTU-ML2020作业,Kaggle网址为Kaggle.数据预处理我们要进行迁移学习的对象是10000张32x32x3的有标签正常照片,共有10类,和另外100000张人类画的手绘图,28x28x1黑白照片,类别也是10类但无标签。我们希望做到,让模型从有标签的原始分布数据中学到的知识能应用于无标签的,相似但与原始分布不相同的目标分布中,并提高黑白手绘图的正确率。...

2020-04-08 23:56:46 7123 10

原创 FGSM攻击机器学习模型

FGSM技术对抗攻击技术,因为网络的深层,很少的改变就有可能改变网络中激活函数的方向,进而直接大量改变输出。因此,从模型中得到特殊的输入X就能让模型产生严重的误判,这种就是神经网络攻击技术。我们希望得到和原输入类似的输入,但是与此同时尽可能让输出发生尽可能大的改变。这个优化问题写成把训练时的loss function加负号,再加正则项的无约束优化。迭代就可以得到X写成算法就是Fast Gra...

2020-04-05 01:22:27 2381 4

原创 基于自编码器实现无监督异常检测系统

作为自编码器的入门项目,我实现了一个无监督的异常检测系统,传统的异常检测手段有很多,在有监督时可以单纯用多分类问题来判别异常,也可以用高斯聚类来帮助判别异常出现的概率。这里如果要实现无监督学习的异常检测,一种方法是借助数据降维和聚类来帮助我们实现无监督数据聚类,然后在此之上进行异常检测。这里用MNIST的1-9的数字作为正常样本,0的数字作为异常样本。使用Auto-encoder降维和一些聚类算...

2020-04-05 00:32:35 7203 7

原创 统计学习方法(4) GBDT算法解释与Python实现

回归树统计学习的部分也差不多该结束了,我希望以当前最效果最好的一种统计学习模型,Xgboost的原型GBDT来结尾。GBDT的基础是CART决策树。在CART基学习器上使用boosting,形成更好的集成学习器,就是GBDT的思想。CART在离散特征上的表现并不特别,也就是把我们之前学过的C4.5树用基尼系数划分。但在连续特征上使用树算法进行拟合回归就并没有那么轻松,一是划分标准不容易确定,二...

2020-04-01 14:54:01 1982 1

原创 受限玻尔兹曼机RBM简述与Python实现

生成式模型生成式模型的理念大同小异,几乎都是用一个模型产生概率分布来拟合原始的数据分布情况,计算两个概率分布的差异使用KL散度,优化概率模型的方法是最小化对数似然,可以用EM算法或梯度优化算法。今天表现比较好的生成模型有VAE变分自编码器,GAN生成对抗网络和PixelRNN以及Seq2Seq等。而RBM则比它们要早很多,可以说是祖师爷级别的模型。受限玻尔兹曼机RBM模型是一种很早被提出...

2020-04-01 13:27:59 3959 3

原创 统计学习方法(1) 梯度下降法和SMO算法实现SVM

在各种各样强大的神经网络被提出之前,SVM在机器学习领域一直是走在前列的模型;尤其是在数据规模较小时,SVM的特性能够有效保证模型不会出现严重的过拟合,从而提升模型表现。即使在今天,尽管GBDT和各式各样的深度学习模型大行其道,SVM仍然在数据挖掘领域占有一席之地。我个人认为,深入学习SVM对入门机器学习帮助巨大。SVM涉及的概念,包括了基础线性分类器,间隔最大约束最优化,核技巧以及拉格朗日松弛...

2020-03-30 00:35:49 2046 2

原创 中山大学人工智能实验4 Futoshiki Puzzle ( Forward Checking)

描述解决方案#棋盘给定的值board = [ [0,0,0,7,3,8,0,5,0], [0,0,7,0,0,2,0,0,0], [0,0,0,0,0,9,0,0,0], [0,0,0,4,0,0,0,0,0], [0,0,1,0,0,0,6,4,0], [0,0,0,0,0,0,2,0,0], [0,0,0,0,0,0,0,0,0...

2020-03-05 15:42:29 1165

原创 无监督学习(2) 数据降维简述与Python实现

KNNk近邻算法简称kNN(k-Nearest Neighbor),是一种经典的监督学习方法,同时也实力担当入选数据挖掘十大算法。其工作机制十分简单粗暴:给定某个测试样本,kNN基于某种距离度量在训练集中找出与其距离最近的k个带有真实标记的训练样本,然后给基于这k个邻居的真实标记来进行预测,类似于前面集成学习中所讲到的基学习器结合策略:分类任务采用投票法,回归任务则采用平均法。这是一种相当朴素...

2020-03-01 17:34:50 955

原创 CMAC小脑模型神经网络与Python实现

CMAC 小脑模型神经网络简述CMAC是cerebellar model articulation controller,一种模拟小脑的模型。小脑对肢体动作的操作是近似“反射”的,CMAC的理念就是让训练后的网络在应用时对输入的计算越快越好。很容易想到,最快的方法自然是把所有可能的输入情况和它们对应的输出存在表里,在使用时直接查表。而且为了更快的速度,即使是平衡搜索树也不够,哈希散列技术是一种...

2020-02-26 17:48:12 3465 1

原创 SOM神经网络、LVQ神经网络、CPN神经网络与Python实现

竞争型学习神经网络简述最近对神经网络比较感兴趣,因此花了两三天时间对整个领域进行了简单的调研,梳理和学习。其中深度学习,尤其以我们熟悉的如今大火的深度网络模型,如CNN, RNN, GAN和AE及它们的子类等;是在本世纪初,硬件性能达到了一个新的高度后才能有如此巨大的发展的。事实上在21世纪之前,各种各样的神经网络模型已经被发明并应用。那时候由于硬件性能的限制,以及由通信网络不发达导致的数据量...

2020-02-26 01:59:17 4451 3

原创 最优化理论实践——遗传算法解组合最优化

全局优化算法实践全局优化算法概述我们讨论的无约束优化方法仅限于凸优化,这些方法的使用很依赖函数的性质和初始迭代点的选取,在很多情况下只能收敛到局部最小点。为了在更大尺度,更复杂的函数中搜索,我们需要一些不被局部最优局限的方法。一般来说,随机优化方法将能够实现这个目标,但因为随机算法的可行种类非常多,这些算法的理论甚至可以单独拿出来作为一门课讲解。(可以参考《智能优化算法及其MATLAB实例》)...

2020-02-18 17:56:56 4358

原创 使用OpenMP并行化常见算法

OpenMP并行化常见算法openmp是强大的并行编译库,可以动态地设置多线程,使用方便。这里我将以搜索算法为例,介绍如何用OpenMP把常见算法并行化。旅行商问题旅行商问题已经老生常谈了。指在有向带权图内,寻找一条最短回路(指经过每个顶点仅一次,且权值总和最小)。事实上该问题是一个NPhard问题,想解决它只能花费指数级的时间复杂度。我们尝试使用BFS和DFS去求解它。因为题目要求经过...

2020-02-10 22:22:09 3676

原创 OpenMP并行程序设计——设计并行的数据结构

用OpenMP设计并行数据结构并行程序设计假期突然延长,为了不荒废人生,决定趁这两天补一下课,把之前没有修过的并行与分布式计算补习一下。这门课主要教了MPI, Pthread, OpenMP和CUDA,内容围绕着并行计算和高性能计算展开,比较繁杂,知识点很琐碎,但实际上很深入很难的东西倒是没有。我是奔着学习技术来的,那自然是适当忽略理论部分,多写代码。MPI是分布式内存设计,Pthread...

2020-02-10 21:57:14 2293

机器学习笔记 huangwx.rar

主要参考资料是周志华教授的《机器学习》,此外还参考了NTU 2018 Machine Learning、Stanford CS229、李航教授《统计学习方法》以及《Pattern Recognition and Machine Learning》。

2020-04-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除