深度学习
文章平均质量分 81
ChuanjieZhu
这个作者很懒,什么都没留下…
展开
-
cs231n_lecture 1_计算机视觉发展史及课程概述
学期:2017 spring 老师:Fei-Fei Li & Justin Johnson & Serena Yeung声明:本系列文章资源主要来自斯坦福的cs231课堂内容,ppt,配套网站。加上本人的一些理解。第一节课主要是介绍计算机视觉发展史、课程内容以及考核方式。 我学习的课程是cs231n 2017 spring,这是斯坦福第三次开设这门课程。2016年春季的时候第一次开...原创 2018-02-26 16:12:01 · 1416 阅读 · 0 评论 -
cs231n_lecture_9_常见CNN的结构
上节回顾:深度学习框架——TensorFlow PyTorch Caffe LeNet-5 LeCun,1998Architecture: CONV-POOL-CONV-POOL-FC-FC Conv filters :5x5 stride=1 Subsampling (Pooling)layers :2x2 stride=1 AlexNet Krizhevsky ,2012 , ima...原创 2018-04-24 23:02:50 · 343 阅读 · 0 评论 -
cs231n_lecture_8_深度学习开发平台/框架
上节课回顾:最优化:SGD(黑色),SGD+momentum(蓝色),Nesterov,Rmsprop(红色),Adam(紫色)正则化:dropout,batch normalization迁移学习CPU vs GPUCPU擅长逻辑控制,串行的运算。和通用类型数据运算不同,GPU擅长的是大规模并发计算.CPU 和 GPU 的区别是什么? - 虫子君的回答 - 知乎 https://www.zhih...原创 2018-04-24 16:22:35 · 255 阅读 · 0 评论 -
cs231n_lecture_7_怎样训练神经网络-PART 2
回顾上一节,我们默认ReLU是首选的激活函数;权重初始化要合理;输入之前要对数据做预处理,一般做一下零均值/std和BN。这里再解释一下为什么规范化是重要的。可以看到,没有规范化之前,w的微小改变都有可能影响到loss,很难最优化。规范化之后loss对w不那么敏感了。监视学习过程,可视化loss和accuracy,随时做分析和调整。对于超参数,随机初始化一个范围,利用少的迭代次数和小的数据集进行初...原创 2018-04-19 10:32:56 · 308 阅读 · 0 评论 -
cs231n_lecture_6_怎样训练神经网络-PART 1
之前我们学习了怎样用计算图表示一个函数;神经网络——score function、loss function;CNN——用convolutional layer表达空间结构,conv layer的activation maps来自不同filter的卷积;通过最优化的方法得到参数值;更新的时候我们用的方法是mini-batch SGD.其方法是我们先=随机得到一组weights,在训练集上随机采样得...原创 2018-04-07 23:21:56 · 371 阅读 · 0 评论 -
cs231n_assignment1_two_layer_net
作业内容:实现一个两层的神经网络,包括FP和BP,在CIFAR-10上测试计算score,score function用的是ReLU:max(0,W*X):计算loss,用的是softmax+L2正则化:用BP计算梯度:利用SGD训练模型:先是挑选mini batch:更新:最后精度达到29%。很低,所以模型需要debug ,可以画出plot the loss function and the a...原创 2018-03-29 22:27:50 · 535 阅读 · 0 评论 -
cs231n_assignment1_SVM
作业内容:首先是加载数据库CIFAR-10,随机可视化一些图片:将数据分为train、val、test,然后将training set采样一个小的数据集成为development set,作为运行代码用,节省时间:利用range取数组:必须是numpy数组才可以-----------一些preprocessing--------1.将图像数据reshape成一行2.减去图像均值(各数据集减去训练集...原创 2018-03-06 12:12:45 · 615 阅读 · 0 评论 -
cs231n_lecture 3_损失函数和最优化
上一课讲到了图像识别面临的种种挑战:在计算机看到的数据和人眼理解的图像之间存在着一条鸿沟,提出了用data-driveen的方法进行识别,学习了kNN。在学习神经网络之前,我们要先学习线性分类器作为基础(building block)。接上节课的线性分类器,假设一张图片x是32*32*3的,先reshape成一行,与各类的权重W(一个参数矩阵)相乘,在加上一个bias,得到判决为各类的分数,分值越...原创 2018-03-05 11:40:50 · 1360 阅读 · 0 评论 -
cs231n_lecture_4_CNN-卷积神经网络
前景提要:1. linear score function2.2-layer neural networkA bit of history1957,Frank Rosenblatt:perceptron 权重靠自己手动调试,没有BP1960,Widrow and Hoff:Adaline and Madaline 多层感知器网络,没有BP,就是说没有合适的训练方法1986,Rumelhart...原创 2018-03-17 16:23:55 · 318 阅读 · 0 评论 -
cs231n_assignment1_配置作业环境+kNN
作业1:http://cs231n.github.io/assignments2017/assignment1/我是在win7电脑上做的。准备工作:下载anaconda:https://www.anaconda.com/download/打开前修改jupyter notebook启动目录:https://www.zhihu.com/question/31600197/answ...原创 2018-03-03 22:30:02 · 12531 阅读 · 18 评论 -
cs231n_Assignment1_softmax
作业内容:首先加载数据库,创建训练集,验证集,测试集用循环实现loss和grad的计算:-->这里在算e的次幂之前先整体移位,防止太大溢出,softmax loss梯度计算:f=X*W当j=yi时:当j != yi时:详细推倒链接:http://blog.csdn.net/u014313009/article/details/51045303用向量形式计算loss和grad,比较可知向量快很...原创 2018-03-09 22:14:58 · 416 阅读 · 0 评论 -
cs231n_lecture_4_BP算法和神经网络
上一节课我们学习了如何使用参数化的函数定义一个分类器,有了input dataX,权重W,打分,通过一个损失函数(SVM loss或者softmax loss等)计算loss。另外损失函数可以带上正则化项,表示我们希望如何简化模型以及简化的程度。接下来的事就是如何最小化loss,利用迭代朝着负梯度方向最小化我们的loss。关于如何计算梯度,提出了两种方法,一种是数值方法,近似、很慢,一般用来验证,...原创 2018-03-16 10:56:36 · 279 阅读 · 0 评论 -
python+numpy教程
参考资料:1.http://cs231n.github.io/python-numpy-tutorial/2.https://docs.python.org/3.5/library/stdtypes.html#sequence-types-list-tuple-range3.https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449...原创 2018-02-28 16:19:50 · 434 阅读 · 2 评论 -
cs231n_lecture 2_图像分类
学习本学期的第一个算法——KNN。课后完成作业1:作业使用python+numpy和google cloud。教程地址:http://cs231n.github.io/python-numpy-tutorial/第一部分 KNN图像分类是计算机视觉的核心问题。一个给定的数据集,比如猫、狗、树等,对于人来说,很容易识别,但是要让机器准确识别出却是一项很难的任务。以猫为例,计算机只看到一堆[0,255...原创 2018-02-27 20:11:34 · 319 阅读 · 0 评论 -
Windows本地快速搭建cs231n作业环境
之前写过一个关于斯坦福cs321n课程的作业环境搭建教程,cs231n_assignment1_配置作业环境+kNN,不过好像很多人还是在搭建过程中遇到一些问题,导致做不了作业。自己动手实践是学习最快的方法,看公开课独立完成作业非常重要。在邮件中不好详细回复,今天回忆了一下当时的搭建步骤在这里另开一文做一个作业环境搭建的图文详细版,希望能帮助到更多的人。说明:本文适用于希望在Window...原创 2019-04-27 21:16:31 · 4526 阅读 · 10 评论