自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 收藏
  • 关注

原创 Stanford cs231n'18 课程及作业详细解读

Stanford

2018-06-26 11:03:19 4277

原创 Facenet Serving

Facenet ServingGithub link训练好的模型最终还是要放到 TF Serving 上来跑。原作者给出了几个训练好的 pretrain model,同时,在 download_and_extract.py 中,还能发现几个老版本的 model 可以下载。然而,原作者在代码中用到了 tf.py_func 这一函数,但是 TF Serving 并不支持这个函数。所以,要想在 ...

2018-08-14 09:20:05 1292 10

原创 Facenet 的 TensorFlow 实现

Facenet 的 TensorFlow 实现上一节使用 mtcnn 可以将图片中的人的面部图像切割出来,这一节就要捕捉这些不同人的面部图像的特征,实现人脸识别。这一节参考的是 Google Facenet,其理论基础是文章 FaceNet: A Unified Embedding for Face Recognition and Clustering。这里我们的目标是重写 facenet,...

2018-08-14 09:18:02 3596

原创 MTCNN 的 TensorFlow Serving

代码在我的github: https://github.com/FortiLeiZhang/model_zoo/blob/master/TensorFlow/mtcnn/mtcnn_client.pyMTCNN TensorFLow Serving上一节用 Keras 实现了 mtcnn,下一步就是在 TF Serving 上将这个服务起来。本来以为很简单,就是把 model 导出来,...

2018-08-04 01:43:28 2339 2

原创 MTCNN 的 TensorFlow 实现

代码及原文贴在我的 github 上: https://github.com/FortiLeiZhang/model_zoo/tree/master/TensorFlow/mtcnnMTCNN 的 TensorFlow 实现Magic Vision 要加人脸识别功能,所以要在 TensorFlow Serving 上起一个人脸识别服务,自然想到的是 Google 的 Facenet。 由...

2018-08-04 00:34:45 16784 12

原创 PyTorch: Conv2d and ConvTranspose2d

ConvTranspose2d 实现的是 Conv2d 的逆过程,也就是将一张 m×mm×mm \times m 的图片,upsampling 到 n×nn×nn \times n,这里 n>mn>mn > m。 ConvTranspose2d 的实现方法,与 Assignment 2 | ConvolutionalNetworks 计算 dx 的方法完全相同。实际上,不论在 PyTo...

2018-07-15 12:34:55 21318 4

原创 cs231n'18: Assignment3 | Style Transfer

Assignment3 | Style Transfer所谓 style transfer,就是找一张原图,一张样式图,固定一个 CNN 模型,设计一种 loss 的计算方法,然后在 CNN 中 backprop 出 loss 对原图中每一个像素点的梯度,根据此梯度来更新原图中的每一像素的值。最后得到的图片既有原图的内容,又有样式图的风格。这里的核心问题是 loss 计算方法的设计。C...

2018-07-12 08:17:10 802

原创 cs231n'18: Assignment3 | Network Visualization

Assignment3 | Network Visualization在这里只解决与 NN 有关的问题,与 PyTorch 有关的问题,集中到另外的一个 project 专门学习。Saliency MapsSaliency map 表示的是图片中的每一个像素对最终分类 score 的影响有多大。计算 saliency map 时,首先使用一个训练好的 model,计算出输入图片的对...

2018-07-11 12:10:05 2465

原创 cs231n'18:Lecture 11 | Detection and Segmentation

Lecture 11 | Detection and Segmentation这一节讲 CNN 的几个重要应用,有 semantic segmentation,classification + localization,detection 和 instance segmentation。但是,这一节居然没有想对应的作业。不用代码实现一遍,视频里讲的那些方法根本不能完全的理解。特别是 detec...

2018-07-10 06:33:37 243

原创 cs231n'18:Lecture 10 | Recurrent Neural Networks

Lecture 10 | Recurrent Neural NetworksLecture 10 主要是讲了 RNN 和如何用 RNN 进行 image captioning,详细内容见作业里的这一部分。

2018-07-10 06:32:22 168

原创 cs231n'18: Assignment 3 | LSTM Captioning

Assignment3 | LSTM Captioning上一节介绍了 Vanilla RNN,同 NN 一样,RNN 存在的最大的问题就是梯度消失。这是因为,RNN 中需要学习的参数在一个 time capsule 结束之后才会更新一次,而在同一个 time capsule 中,所有的时刻都会有 loss 产生,因此也都会有对于参数的梯度产生,最后参数更新时的梯度是所有这些梯度之和。梯度的计...

2018-07-08 12:01:17 955

原创 cs231n'18: Lecture 10 | Recurrent Neural Networks

Lecture 10 | Recurrent Neural NetworksLecture 10 主要是讲了 RNN 和如何用 RNN 进行 image captioning,详细内容见作业里的这一部分。

2018-07-06 01:43:10 220

原创 cs231n'18: Assignment 3 | RNN Captioning

Assignment3 | RNN Captioning这部分实际上做了两件事情,首先建立一个 RNN,然后以此 RNN 为基础,训练一个模型来完成图片 caption 的工作。我感觉作业中的代码先后顺序有些混乱,这里依照自己的理解,把内容重新组织一下。Datasettrain 和 val 使用的是 Coco2014,从打印出来的 data 信息来大概浏览一下数据的构成。t...

2018-07-06 01:41:46 2831 2

原创 ResNet 的 PyTorch 实现

ResNet 的文章有两篇:Deep Residual Learning for Image Recognition 和 Identity Mappings in Deep Residual Networks。这里仅仅关注三个问题:ResNet 解决了机器学习中的什么问题;ResNet 的代码怎么写的;ResNet 怎么用。至于文章中的性能研究和试验结果,就不做讨论了。Deep Resid...

2018-06-29 06:29:48 11741 1

原创 cs231n'18:Assignment 2 | PyTorch

Assignment 2 | PyTorch初步介绍了一下 PyTorch,准备找个教程好好学习一下,以后以 PyTorch 为主了。

2018-06-29 00:43:17 1758 1

原创 cs231n'18:Assignment 2 | TensorFlow

Assignment 2 | TensorFlow感觉 TensorFlow 比 PyTorch 难上手多了,最受不了的是建 graph 的时候没法调试,必须把一个 session 跑起来才能看到数据的形状,这岂不是背离了 Python 写到哪运行到哪里的初衷?先暂时放弃 TensorFlow,主攻 PyTorch 去了。...

2018-06-29 00:42:39 825

原创 cs231n'18: Assignment 2 | Dropout

Assignment 2 | DropoutDropout 就是在 train 的过程中随机的丢掉一部分连接,但是在 test 的时候使用全部的连接。这样做的好处是在 train 的时候引入一些随机性,在 test 的时候相当于用这些随机性进行了 ensemble。起到了 reg 的作用。 Inline Question 1: What happens if we do no...

2018-06-29 00:40:35 1275

原创 cs231n'18: Assignment 2 | ConvolutionalNetworks

Assignment 2 | ConvolutionalNetworksConvolution首先说说这个aside。仅仅将 filter 设置为特定的数字,就可以对图像进行某种处理,这里是将图像灰度化和在一个图层取其水平边缘,这直观的给出了一个 filter 的作用。第一层的 filter 可以直观的看出其作用,以后各层 filter 是第一层 filter 的各种线性、非线性组合,...

2018-06-29 00:37:55 457

原创 cs231n'18: Assignment 2 | FullyConnectedNets

Assignment 2 | FullyConnectedNetsgradient check函数的不同实现到目前为止用到了三个gradient check函数,分别是:grad_check_sparse,eval_numerical_gradient,eval_numerical_gradient_array。eval_numerical_gradientdef eval...

2018-06-28 00:45:27 2008

原创 cs231n'18: Course Note 9

Convolutional Neural Networks: Architectures, Convolution / Pooling LayersConvolutional Neural NetworksCNN 默认要处理的对象是图片,所以输入都是形如 (H, W, 3),这里的3表示RGB三个颜色通道。同时注意,由于是图片,所以输入中的每一个像素在整个图片中的相对位置也有了意义。C...

2018-06-28 00:43:32 262

原创 cs231n'18: Course Note 8

Putting it together: Minimal Neural Network Case Study这里讲了个例子,没什么可说的。

2018-06-28 00:42:41 256

原创 cs231n'18: Course Note 7

Neural Networks Part 3: Learning and Evaluation梯度检验梯度的数值计算方法是: f′=df(x)dx=f(x+h)−f(x−h)2hf′=df(x)dx=f(x+h)−f(x−h)2hf^{'} = \frac{\mathrm{d} f(x)}{\mathrm{d} x} = \frac{f(x+h) - f(x-h)}{2h} 梯...

2018-06-28 00:41:41 257

原创 cs231n'18: Course Note 6

Neural Networks Part 2: Setting up the Data and the Loss数据预处理常见的数据预处理方法包括: 1. 减均值 2. 除标准差:只有在feature具有相似的标准和度量方式时才有意义 3. PCA:先减均值,再除标准差,然后找所有eigenvalue,最后将原始数据映射到最大N个eigenvalue定义的空间上 4. 白化:将...

2018-06-28 00:40:39 223

原创 cs231n'18: Course Note 5

Neural Networks Part 1: Setting up the Architecture常用的激活函数Sigmoidsigmoid函数的为 σ(x)=11+exp(−x)σ(x)=11+exp⁡(−x)\sigma(x) = \frac{1}{1+\exp(-x)}, 值域为 (0,1)(0,1)(0, 1), x→−∞x→−∞x \rightarrow -\in...

2018-06-28 00:39:17 187

原创 cs231n'18: Course Note 4

Backpropagation, IntuitionsBackprop和chain rule,就是用求解微分时的链式法则,将复杂算式的微分计算,一步步分解成小的node,然后用这些基本的node层层叠加,最后得到微分结果。通常做法是先画出computation graph,然后再stage by stage的计算grads,基本的公式是: down_dif...

2018-06-28 00:37:19 337

原创 cs231n'18: Course Note 3

Optimization: Stochastic Gradient Descent这一节主要讲optimization的相关内容。重点在于各种grads的实现,特别是与矩阵相关的grads的实现,包括公式推导和代码实现。note 3中先给出了svm的grads,以后还会遇到softmax,conv,relu,BN等等各种grads。将会结合作业详细的给出各种grads的公式推导和代码实现。...

2018-06-28 00:34:46 675

原创 cs231n'18: Course Note 2

Linear classification: Support Vector Machine, SoftmaxLinear Classification实现image classification更常用的方法是采用score function + loss function。其中,score function将raw data映射为class score;而loss function衡量...

2018-06-28 00:31:24 431

原创 cs231n'18: Course Note 1

Image Classification: Data-driven Approach, k-Nearest Neighbor, train/val/test splits关于KNN首先讲Nearest Neighbor,然后扩展到KNN。就是将所有的training data映射到R维空间中,然后定义某种距离度量计算方法,比如L1、L2等等。然后将要predict的data依同样方法映...

2018-06-28 00:28:20 738

原创 cs231n'18: Assignment 2 | Batch Normalization

Assignment 2 | Batch Normalization上文吐槽BN部分讲的太烂,2018年果然更新了这一部分,slides里加了好多内容,详见Lecture 6的slides第54到61页,以及Lecture 7的slides第11到18页,这里结合着原始论文和作业,把BN及其几个变种好好总结一下。Batch NormalizationTrain前面的作业中已...

2018-06-27 00:47:02 1741 2

原创 cs231n'18:Lecture 9 | CNN Architectures

Lecture 9 主要是讲了几个主流的CNN的实现。这几种CNN每一个拿出来都值得好好研究一番,所以这里泛泛的讲没有什么意义。大概看看就行了。Lecture 9链接

2018-06-26 11:49:51 288

原创 cs231n'18:Lecture 8 | Deep Learning Software

这里介绍了主流的几种AI编程语言,我的计划是先从 PyTorch 入手,把几个主流的 CNN 模型自己写一遍,然后捎带着看看Caffe2,最后再用 TensorFlow 写一遍。Lecture 8链接...

2018-06-26 11:48:43 239

原创 cs231n'18:Lecture 7 | Training Neural Networks II

Lecture 7主要讲note 7中的优化问题,这个小伙子比那个小姑娘讲的好太多。具体内容参考Course Note 7笔记。Lecture 7 链接

2018-06-26 11:28:32 199

原创 cs231n'18:Lecture 6 | Training Neural Networks I

这一节讲Course Note 5/6和7中的一部分。这是这门课中讲的最烂的一节,内容杂乱,没有重点。既然ReLU是最常用的,为什么又拿tanh举例子;BN这么重要的问题没讲明白,下面同学提了一大堆问题。看看Course Note 5笔记,Course Note 6笔记,Course Note 7笔记就行了,也没多少东西。重点还是作业里代码怎么实现的。update:Course Note和视频都是...

2018-06-26 11:27:13 224

原创 cs231n'18:Lecture 5 | Convolutional Neural Networks

Lecture 5 讲的是 Course Note 9 里面的内容,建议先听 Lecture 6和7,然后Lecture 5和9一起听。Lecture 5 链接

2018-06-26 11:25:10 178

原创 cs231n'18:Lecture 4 | Introduction to Neural Networks

第四节课前半部分讲Course Note 4的backprop,这一部分是这门课的重点,后面要写许多与此相关的代码,到时会一个一个的详细说。具体见Course Note 4笔记以及里面的作业。后面半部分讲与brain相关的一些知识,听听就行了。Lecture 4 链接...

2018-06-26 11:23:42 213

原创 cs231n'18:Lecture 3 | Loss Functions and Optimization

Lecture 3讲Course Note 2和Course Note 3里面的内容.前一部分讲SVM和Softmax loss function的计算。要点请参考Course Note 2的笔记。 听完这一节部分可以去做SVM和Softmax里面有关loss的作业,后一部分讲了一些optimization和svm grads的计算,参考Course Note 3的笔记。作业要做完svm和soft...

2018-06-26 11:21:02 218

原创 cs231n'18:Lecture 2 | Image Classification Pipeline

Lecture 2的前半部分讲Course Note 1里面的内容,包括KNN和Validation。要点请参考Course Note 1的笔记。后半部分给Course Note 2里面的Linear Classification开个头。作业可以做knn。Lecture 2 链接...

2018-06-26 11:18:02 338

原创 cs231n'18:Lecture 1 | Introduction to Convolutional Neural Networks for Visual Recognition

一如既往,第一节课都是侃侃大山,没什么好说的。Lecture 1

2018-06-26 11:13:32 425

空空如也

空空如也

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

TA关注的人

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