深度学习之点滴
文章平均质量分 71
这是深度学习入门的过程总结,从门外汉一步步深窥AI的魅力,从浅入深须有时,直到工作去AI!
Li_GaoGao
这个作者很懒,什么都没留下…
展开
-
ubuntu16.04(x64)下安装Matlab 2015b破解版(含安装包)
从师兄那里拷来的matlab软件包2015b 一个安装文件足够,更新的似乎需要两个。下载安装包 Matlab R2015b_glnxa64.iso and Crack files 百度网盘, password: 4gj3我不知道ubuntu下怎么直接下一个很大的文件,百度云应该没有ubuntu的版本,所以我是先下好之后用zip压缩烤到ubuntu下的。 这样就多了一个步骤,解压,用...原创 2018-09-01 11:11:30 · 2371 阅读 · 0 评论 -
caffe训练自己的图片(分类)
这个基本上按照大神的笔记来的。学习参考 大神不仅提供了训练图片,还有详细的训练过程,包括转换源码,非常感谢。总的来说用caffe来训练分类,可以分为几个步骤。下载图片,生成.txt,这个txt用于转换图片格式的参数用到了 把训练图片转换成lmdb格式 计算图片均值修...原创 2018-09-01 09:12:50 · 3061 阅读 · 0 评论 -
卷积后尺寸计算公式
在计算卷积后的参数及map大小时经常要用。1.卷积后尺寸计算out_height=(in_height+2pad-filter_height)/strides[1]+1out_width=(in_width+2pad-filter_width)/strides[2] +1原创 2018-08-28 23:17:04 · 4174 阅读 · 0 评论 -
Lenet,Alexnet,GoogLenet,VGG,DRL等经典CNN模型详解
最近一直在使用caffe,对于网络模型有了初步的认识,于是对几个经典的模型做一些更深层的调研。 Lenet,诞生于1986年,常用语银行的数字识别 Alexnet,2012年 GoogLenet,2014年 VGG,2014年 DRL(Deep,Residual learning )2015年。...原创 2018-08-28 22:58:55 · 447 阅读 · 0 评论 -
心血来潮装了torch
发现,安装好GPU的驱动和cuda之后,安装toch很简单。 秩序按照官网里的几条命令行就行,官网地址: 官网git clone https://github.com/torch/distro.git ~/torch --recursivecd ~/torch; bash install-deps;./install.sh发现会遇到问题,很常见, lib/THC/CMa...原创 2018-08-28 22:16:58 · 329 阅读 · 0 评论 -
Mnist手写字库的图片转换及lenet网络模型测试
已经训练了mnist的网络和配置了caffe的matlab接口, 训练和测试 caffe的python接口 接下来就是学会怎么用这个训练好的模型和python接口。很自然的想法就是直接输入一个手写数字的图片,通过训练好的模型之后,给反馈一个分类的结果。这样就手写需要把手写数字的.gz格式转换成统一的.bmp格式,或者也可以用自己制作的图片,但是得满足一定的要求,比如:必须是黑白...原创 2018-08-27 08:25:34 · 650 阅读 · 0 评论 -
jupyter notebook初体验
安装jupyter notebook很简单,如果用的是anaconda,则不需要自己手动安装,anaconda已经装好了。 如果没有,在终端输入:sudo pip install jupyter即可安装。 接下来在终端输入:jupyter notebook会跳出一个交互页面,直接在上面输入python代码即可,交互体验不错,比idle要好。之前编译好了pycaffe...原创 2018-08-26 13:08:44 · 206 阅读 · 0 评论 -
Caffe的Python接口
死在了python接口上一周时间了。sudo make pychaffe 老是有各种问题。比如: error while loading shared libraries: libcudnn.so.7网上所谓的配置软连接,我试了好几次,感觉不靠谱。 用的是anaconda,比较方便,但是还没体验到诶。...原创 2018-08-24 22:56:30 · 878 阅读 · 0 评论 -
在caffe代码里学习shell脚本
通用格式:# /usr/bin/env sh如果运行不是0,则退出set -e表示所有参数的内容$@表示参数的个数$#原创 2018-08-18 09:20:35 · 260 阅读 · 0 评论 -
Caffe之mnist数据集初体验
参考官网:caffe|Lenet 和一个很早的博客:mnist 开始自己的caffe初体验Training LeNet on MNIST with Caffe首先,我们配置好了caffe的环境,下载依赖项并且编译通过,有gpu没有gpu均可。Prepare Datasts 准备数据集第一步是下载数据集,并做转换,官网里给出两个命令,直接输入即可。cd $CAFFE_RO...原创 2018-08-15 08:48:27 · 259 阅读 · 0 评论 -
Caffe安装及编译
自把环境配置好之后,马上就下载了caffe开始体验。 caffe官网caffe的麻烦之处就在于有很多的依赖,因为我的ubuntu版本是16.04,官网所示如下。sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compile...原创 2018-08-14 21:42:41 · 196 阅读 · 0 评论 -
Ubuntu常用命令总结
ssh命令,用来登陆,测试ssh -T git@github.comssh name@ip //登陆服务器scp命令,用来服务器和本地拷贝文件scp local file name@ip remote file文件相关显示:lsls-all删除:rm 文件rm -r 文件夹rmdir 文件夹创建:mkdir...原创 2018-08-10 09:02:10 · 201 阅读 · 0 评论 -
Ubuntu16.04+GPU980M~Caffe环境配置
主要内容:caffe依赖环境配置caffe编译常见问题总结 使用ubuntu环境16.04,显卡GTX980M具体包含 * nvidia环境配置:nvidia显卡驱动安装与使用 * cuda环境配置:cuda安装 * caffe的环境配置,参数选择和编译nvidia驱动:首先从官网下载驱动:英伟达驱动官网 找到与笔记本相适应的显卡驱动 另外也可以尝试命令...原创 2018-08-12 11:15:49 · 469 阅读 · 0 评论 -
安装ubuntu成功后不能重启(nomodeset)
已经到restart界面了,重启了半天没有反应。 于是开始想办法,主要有三个步骤。第一步: Ubuntu选择安装界面,在按e键进入编辑界面。 找到”Boot Options ed boot=… initrd=/casper/initrd.lz quiet splash —” 修改红色部分(删去“—”并添加“nomodeset”)如下 “Boot Options ed boot=… ...原创 2018-08-06 09:30:03 · 37691 阅读 · 16 评论 -
机器学习之异或模拟(XOR)
线性回归和逻辑回归我们可以看成是单个神经元的神经网络。现在我们来尝试让神经网络学习异或的逻辑,也就是输入(0,1)和(1,0)时输出1,其他情况时输出0。这个神经网络有一个隐藏层和一个输出层,一共有三个神经元,每个神经元都是带有sigmoid的激活函数。m1=ω1Tx+b1m_1 = \omega_1^{T}x + b_1m1=ω1Tx+b1n1=sigmoid(m1)n_1 = sig...原创 2018-08-03 20:21:14 · 5787 阅读 · 0 评论 -
常见的损失函数之MSE\Binary_crossentropy\categorical_crossentropy
损失函数是机器学习最重要的概念之一。通过计算损失函数的大小,是学习过程中的主要依据也是学习后判断算法优劣的重要判据。常用的损失函数有均方误差:MSEloss=∑i=1n(yi−y^i)2loss=∑i=1n(yi−y^i)2loss = \sum_{i=1}^n(y_i - \hat y_i)^2∂loss∂y=2∑i=1n(yi−y^i)∂loss∂y=2∑i=1n(yi−y^i)\fra...原创 2018-08-04 12:12:31 · 58174 阅读 · 13 评论 -
逻辑回归之sigmoid/tanh/relu激活函数
z=ωTx+bz=ωTx+bz = \omega^Tx + b y=y=y =原创 2018-08-02 21:05:53 · 10877 阅读 · 0 评论 -
线性回归之动量梯度下降(momentum)
如果嫌随机梯度下降的方法还不够快,没事,总会有大神跳出来说还有动量梯度下降。 随机下降在这里普通梯度下降,每次调整权重的方法就是梯度乘以学习速率:ω=ω−η∗gω=ω−η∗g\omega = \omega - \eta * g 而动量梯度下降,不仅考虑了当前的梯度,还用到了之前的梯度:lg=lg∗discount+glg=lg∗discount+glg = lg * discount ...原创 2018-08-01 19:46:13 · 1612 阅读 · 0 评论 -
线性回归之Nesterov梯度下降(nesterov)
对于梯度下降,只能说:没有最可怕,只有更可怕。 当动量梯度下降出来之后不久,就有大神再次提出nesterov梯度下降的方法,也是继承了动量梯度的思修,但是它认为,即使当前的梯度为0,由于动量的存在,更新梯度依然会存在并继续更新w。而继续当前点w的梯度是不太有意义的,有意义的是,假设下一个点w(仅靠动量滚到下一个点的w)的梯度方向才是决定当前梯度的重要因素。举个通俗的例子就是,你在下坡时,...原创 2018-08-01 21:49:22 · 18561 阅读 · 1 评论 -
线性回归之梯度下降(bgd)
线性模型: y=ωT∗x+b y=ωT∗x+b\ y = \omega ^T * x + b 线性回归是假设数据满足以上的线性假设,其中w和x是一个向量,y和b是一个实数。  y=ω1x1+ω2x2+ω2x2+⋯+ω3x3+ωnxn+b y=ω1x1+ω2x2+ω2x原创 2018-07-30 14:36:49 · 671 阅读 · 0 评论 -
线性回归之随机梯度下降(sgd)
梯度下降的原理:梯度下降 普通梯度下降bgd的方法简单暴力,但是调整速度比较慢。 如果不想等所有数据都计算完了才开始调整w,而是计算完数据的一部分(batch_size)后就立即调整w,说白了就是在训练过程中进行权重的更新。 这样就成了随机梯度下降 主要优点有: * 收敛速度更快, * 而且避免过拟合的问题。 代码更新如下:'''随机全梯度下降方法改进:进行到一部分的时候即更...原创 2018-08-01 13:15:43 · 4529 阅读 · 0 评论 -
机器学习初体验之sklearn聚合类算法整理
初步体验了使用py的sklearn库,实现机器学习的训练和测试过程。 主要有随机深林,自助聚合,正向激励算法等等。 因为这几个方法的训练和测试都机器类似,因此用类的形式将几种算法集中在一起便于理解和翻看。运行main代码:'''试一试不同的方法'''from RandomForest import RandomForestfrom Bagging import Bagging...原创 2018-06-06 22:16:44 · 1311 阅读 · 0 评论 -
机器学习之sklearn官网初探
今天才开始细啃sklearn。感觉官网会比任何人的博客都要系统性,甚至很多人的博客也就是来源于官网的翻译吧,自觉英文还可以,那何必要放弃自己的长处呢。于是决定每天啃一点官网,并做好总结。官网首页即给出了几个大的模块,简直为学习各个模块也就做了基本的规划。首先还是从较为熟悉的分类开始看起。...原创 2018-06-13 14:53:15 · 819 阅读 · 0 评论 -
深度学习之生成对抗网络(Gan)
概念: 生成对抗网络(GAN,Generative Adversatial Networks)是一种深度学习模型,近年来无监督学习上最具前景的方法之一。 模型主要通用框架有(至少)两个模块:生成模型(generative)和判别模型(Discriminative)的互相博弈学习产生的相当好的输出。 原始GAN理论中,并不要求G和D都是神经网络,但使用中一般均使用深度神经网络作为G和D。...原创 2018-07-14 13:33:54 · 11694 阅读 · 1 评论 -
深度学习综述-入门必读
1概述深度学习入门概述2神经网络2.1结构: 神经网络是这样的一个结构:输入层有多个输入神经元,然后将输入沿着边传播到隐含层中,每条边有附属的权值,隐含层神经元有自己的偏置。在某个隐含层的神经元中,该神经元的输出为输入神经元的加权乘积和与隐含层偏置的总和。隐含层的神经元输出到输出层中,以此类推,输出层的输出依然为隐含层神经元的的加权乘积和与输出层偏置的总和。在...原创 2018-07-29 00:06:52 · 4377 阅读 · 1 评论 -
机器学习之使用 scikit-learn 识别手写数字
机器学习案例分析一:识别手写数字: scikit-learn 提供了一些标准数据集,例如 用于分类的 iris 和 digits 数据集 和 波士顿房价回归数据集 . 在下文中,我们从我们的 shell 启动一个 Python 解释器IDLE,然后加载 iris 和 digits 数据集。 数据集是一个类似字典的对象,它保存有关数据的所有数据和一些元数据。 该数据存储在...原创 2018-06-05 15:44:34 · 3084 阅读 · 0 评论 -
Tensorflow入门初体验
昨天开始接触机器学习,首先是疯狂的从网上下载教学视频,发现这类的入门视频特别的多,看完两集之后,就忍不住要去买书了。真的很久没有体验过接受新知识的快感,昨晚一直学习到深夜,下好新的的python3.x,安装好tensorflow之后稍稍体验了一把,感觉还可以.不过自己的tensor的基本概念都忘光了,依旧没有阻止我学习机器学习的劲头。主要目标是完全掌握机器学习的基本概念和基本使用,希望以后能从事这方原创 2017-11-23 15:22:51 · 560 阅读 · 0 评论 -
Tensorflow实现第一个简单的机器学习demo
昨天写了Tensorflow的初体验,感觉不错,再接再励,就把官方教程上的机器学习demo码出来自己看看,总结总结。原创 2017-11-25 16:40:01 · 2009 阅读 · 0 评论 -
机器学习第一个算法决策树(DecisionTree)
开始认真学习机器学习相关的内容,看到了一个非常好的教学视频(麦子学院,彭亮老师讲的课),基本上是一节一节视频跟着来学习的。机器学习主要目标是根据已有的属性,得到未知的结论,或者说预测,而能预测的前提是已经积累了很多的经验,等等类似的说法。从基本的监督学习,非监督学习,半监督学习,训练集,测试集等概念讲起,视频非常棒。第一个介绍的算法是DecisionTree:通过将数据模型转化原创 2017-11-26 16:30:37 · 1224 阅读 · 0 评论 -
机器学习第二个算法KNN(最邻近规则分类KNN算法)
最近邻规则分类(K-NearestNeighbors)KNN 算法,是由Cover和Hart在1968年提出的算法,叫做instance-based -learning,是一种分类算法,也叫(lazy learning)。因为它没有建立具体的模型,而是对未知的对象直接归类,看他属于哪个类即可。先看一个简单的例子: 对于电影的分类,我们先粗略的把电影分成两类,而且主要是根据电影中出现的打斗、接吻情节原创 2017-12-01 20:59:07 · 438 阅读 · 0 评论 -
机器学习第三个算法SVM上(支持向量机)
突然发现看彭亮老师视频的人很多,而且看完写博客的人也很多,见到一个哥们基本上把彭良老师的视频内容完整的搬抄到博客上,代码什么的也基本没改动,这就可以让我先看博客再看视频,最后自己写博客这样一种思路来学习。然后看博客的过程中发现了好多大神。 那哥们博客SVM 全名support vector Machine ,翻译成中文是支持向量机,据说是机器学习中近十几年来最好的算法之一,最早是由Vladimir原创 2017-12-03 11:37:41 · 421 阅读 · 0 评论 -
机器学习第四个算法ANN(人工神经网络)
我是在14年9月刚读研的时候听到一个说法叫“类人脑算法”很火热,之后搞了很长一段时间相关的蓄水池算法等,但大都没有摸到门路而中途放弃了。现今看来,还是缺少一些知识背景,也不善于在网络上学习,随时间推移,也逐渐明白这是机器学习的一小部分,并且逐渐发展的名称叫做人工神经网络的算法,如果网络层较多,又会有个别名,叫做深度学习。其中个用到的最著名的算法是背向传输算法(backpropagation),而这个原创 2017-12-11 21:33:31 · 17852 阅读 · 2 评论 -
机器学习基础
1、课程介绍学习前提学习过高等数学,例如微积分,线性代数,概率论等,对数学要求较高,但入门时勉强知道基本知识就可以。有一定的编程基础,接触过python最佳。学习目标理解机器学习的基本概念学会对原始数据进行抽象处理会使用python的机器学习相关库对常见的算法有个基本认识课程内容机器学习基本概念监督学习(分类、回归)非监督学习2、机器学习概念 多领域交叉学科,涉及概率论,极限,原创 2017-12-19 11:08:31 · 1106 阅读 · 0 评论