自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 20161127 ffmpeg常用指令

1.分离视频音频流ffmpeg -i input_file -vcodec copy -an output_file_video  //分离视频流 ffmpeg -i input_file -acodec copy -vn output_file_audio  //分离音频流 2.视频解复用ffmpeg –i test.mp4 –vcodec copy –an –f m4v test.264

2016-11-27 12:31:11 655

原创 Faster RCNN generate_anchors.py

Reference: [1]https://github.com/rbgirshick/py-faster-rcnn/blob/master/lib/rpn/generate_anchors.py事实上,在generate anchors的时候有两个步骤 步骤一:保持anchor的面积不变,但是改变长宽的比例。 步骤二:保持长宽的比例不变,但是进行scale的缩放,从而改变比例。 不论哪一步

2016-10-07 15:54:44 2595 3

原创 Why does the method of Lagrange multipliers work for optimization in multivariable calculus?

Ref: [1]https://www.quora.com/Why-does-the-method-of-Lagrange-multipliers-work-for-optimization-in-multivariable-calculus今天看到拉格朗日乘子,kkt算法的时候,突然想起来,为什么拉格朗日算法可以呢?直观上怎么理解呢?发现还是quora上面的答案比较清晰直观。拉格朗日算法其实相当

2016-09-18 20:20:09 897

原创 A Review on Multi-Label Learning Algorithms - KNN

在多标签分类中,有一种方法就是按照KNN的类似算法去求出每一个维度的结果。也是看周志华老师的review突然就想实现以下,然后实现了一个相当简单的。首先我们需要进行计算的是在近邻数目为k的情况下的贝叶斯分布的可能。也就是,首先对于每一个样本求其近邻,然后按照近邻在这一维度上的分类进行朴素贝叶斯的统计,遇到一个新样本,首先按照最近邻来计算近邻的集合,然后在每一个维度上根据其朴素贝叶斯的统计来进行计算。

2016-08-29 20:52:04 1216

原创 CS231n Putting it together: Minimal Neural Network Case Study —— nn with softmax loss

加一层非线性,相比于单纯的softmax,效果立马就好了啊。import numpy as npimport matplotlib.pyplot as pltN = 100;D = 2;K = 3;X = np.zeros((N*K,D))y = np.zeros(N*K,dtype = 'uint8')for j in xrange(K): ix = range(N*j,N*(j+

2016-08-23 23:39:29 916

原创 CS231n Putting it together: Minimal Neural Network Case Study —— softmax

模型不够复杂在这个例子中,首先先来看一下比较简单的线性softmax。 首先按照原来的数据进行测试,基本上是50%的正确率左右,但是稍微动一动数据有以下的变化,关键在于点集合的生成。首先点集合的生成是由r和t来控制的,X的生成是控制三角函数的位置,如果r调整合适的话,其实X是可以成为一个很规矩的圆的。r则是半径。对于最后的结果由集中不同的调整方式,后面的softmax的bp过程自己推一下差不多了。

2016-08-23 20:37:39 696

原创 CS231n Neural Networks Part 3: Learning and Evaluation Babysitting the learning process

1.Loss function 如果是mini-batch,那么loss一般是抖动下降的,对于不同的lr有着不同的loss下降的曲线。2.Train/Val accuracy 不同的acc曲线对应着不同的含义,比如说一般来说epoch上升,acc也会上升,但是如果过拟合了,acc在val会下降。3.Ratio of weights:updates 如果将grad和weights变成向量,那么两

2016-08-22 23:41:22 785

原创 CS231n Neural Networks Part 3: Learning and Evaluation sanity checks Tips/Tricks

1.loss without regularization 首先一个样本输入网络,最开始基本上概率或者激活是平均分的,我们可以预测loss,那么就根据loss来判断是否网络在不加上正则化的时候是正常的2.loss with regularization 增加regularization,我们也可以根据网络的参数的多少和均值等估计出来正则化项的大小。3.subset of data 使用一个小数

2016-08-22 17:03:22 512

原创 CS231n Neural Networks Part 3: Learning and Evaluation Gradient Checks

本来我觉得Gradient Check应该没什么内容,但是后来发现其实还是有些东西的。首先先来看看CS229的梯度检查,对于梯度检查其实有这么几点是需要注意的,首先就是精度问题,最好使用double来进行计算,而且其实有很多坑。1.参数数量太多 比如说,计算梯度的时候,参数数量太大,之前有一次计算梯度的时候,首先向量化所有的梯度,然后单独计算,但是这样的计算方式效率太低,比如说一个参数矩阵中,可能

2016-08-22 16:48:15 624

原创 CS231n Neural Networks Part 2: Setting up the Data and the Loss

Data preprocessingPCA的前几个主要成分是低频的,全局性的。 pitfall:在subtraction mean的时候,是要计算training data的mean,而不是所有数据的mean PCA可能的一个问题,是在wighten的过程中,可能会放大其noise,比如说某一个维度本来就很小,而且std也很小,那么wighten之后,其实就会扩大这一维度的scale。Weigh

2016-08-21 23:35:54 601

原创 ConvNetJs

发现一个很神奇的网站:http://cs.stanford.edu/people/karpathy/convnetjs/index.html使用浏览器的js来直接训练网络,excited! 代码在:https://github.com/karpathy/convnetjs1.intro页intro页的几个实验都很有意思,发现几个神奇的地方比如说在1d的回归上,有时候添加一个点,那么分界线就有可能有

2016-08-21 22:15:55 2346

原创 CS231n Neural Networks Part 1: Setting up the Architecture

有这么几个有意思的知识1.sigmoid,tanh,relu,prelu以及maxout,不同的激活函数2.the deeper the better? 更深层次意味着更好的抽象。假设这个世界是可以用参数刻画的,我们能够做的是需要从数据中提取出来参数是什么,但是参数的数量和层级我们是不清楚的,就好象我们不能假设存在一组参数能够一次性的产生所有数据,还是参数也产生参数,所以从这个角度出发,我们估计的

2016-08-19 21:39:08 506

原创 贝叶斯估计 极大似然

这两者的差别我认为最核心的在于先验概率上。真实的世界有客观规律,我们可以用θ\theta们来进行刻画,在这个规律指导之下有着种种现象,就好象F = ma通过这个公式能够衍生出种种物理现象,所谓”一生二,二生三,三生万物“,但是我们并不知道真实的规律,所以通过现象来估计背后的公式和参数。极大似然就是所有的规律都是根据所观察到的现象来进行推断的。贝叶斯估计,就是根据有一些先验假设。有一种类似于加权的感

2016-08-19 13:38:52 364

原创 CS231n Optimization: Stochastic Gradient Descent

loss functionloss function是优化的源泉,不同的loss function会有不同的效果,比如说svm的loss和softmax,svm相当于就是点到为止,经过映射之后,只要两者的差距要比delta大,那么其实就满足了,而softmax永不满足,一个概率分布,只要错误的概率有一点概率的话,其实都是有可能的。optimization第一个是在所有的参数空间随机搜索,俗话说,女人

2016-08-19 13:30:16 445

原创 python linecache pachage

linecache就是读取文件,然后将其存储在linecache.cache这个字典中。函数:def getline(filename, lineno, module_globals=None);主要就是获取某个文件的第lineno行的内容,调用getlinesdef clearcache();清理Linecache.cachedef getlines(filename, module_global

2016-08-16 23:53:17 711

原创 CS231n A Few Useful Things to Know about Machine Learning

CS231n的第一个module的第一个further reading是这篇文章,这篇文章写了一些机器学习中容易被忽视的点或者说是“妖术“(black art)。1.LEARNING = REPRESENTATION + EVALUATION + OPTIMIZATION 要明白如何去表示,如何去评价,如何去优化。 作者列举了一些不同的Representation Evaluation Opti

2016-08-13 11:51:53 837

原创 CS231n Image Classification: Data-driven Approach, k-Nearest Neighbor, train/val/test splits

知识性的内容主要的增加: 1.对于knn算法有FLANN - Fast Library for Approximate Nearest Neighbors 等开源的高效函数库可以使用。可以读读源代码,应该很有意思。 http://www.cs.ubc.ca/research/flann/ 2.对于高维数据的可视化t-SNE,能够将高维图片根据L2距离在二维平面上进行展示。 http://l

2016-08-12 23:42:49 565

原创 UFLDL stl-10

Reference: [1]http://cs.stanford.edu/~acoates/stl10/ [2]https://github.com/mttk/STL10/blob/master/stl10_input.pystl10是一个受到cifar-10启发的数据库。其中包含包含主要有三部分数据,unlabeled data , train data,test data 。主要步骤是首先用

2016-08-12 19:47:00 1011

原创 UFLDL selfTaughtLearning[待更]

There are two common unsupervised feature learning settings, depending on what type of unlabeled data you have. The more general and powerful setting is the self-taught learning setting, which does not

2016-08-12 14:06:17 380

原创 UFLDL sparse coding ICA RICA[待更]

Reference: 目前先不打算看sparse coding,所以留待以后再看

2016-08-11 23:40:16 523

原创 UFLDL PCA

Reference: [1]http://blog.csdn.net/richard2357/article/details/18145631 [2]http://ufldl.stanford.edu/wiki/index.php/Exercise:PCA_and_Whitening [3]http://ufldl.stanford.edu/tutorial/unsupervised/PCAW

2016-08-11 19:45:32 1303

原创 UFLDL Sparse Autoencoder

Reference: [1]http://www.stanford.edu/class/cs294a/cs294a_2011-assignment.pdf [2]http://nlp.stanford.edu/~socherr/sparseAutoencoder_2011new.pdf [3]http://www.cnblogs.com/tornadomeet/archive/2013/03/

2016-08-11 15:55:18 563

转载 [学科前沿] 关于数学学习,推荐一篇好文(博士生必读)

Reference: [1]http://bbs.pinggu.org/thread-589533-1-1.html最近一直有师弟师妹和朋友问我数学和研究的关系,研一要去学什么数学课。毕竟在清华,衡量一个研究生最重要的指标之一就是paper,而没有数学,是肯定上不了世界顶级的期刊和会议的,这在计算机学界尤其重要!你会发现,不论哪个领域有价值的东西,都一定离不开数学!在这样一个信息时代,当googl

2016-08-10 23:02:28 664

原创 IPython notebook

Reference: [1]http://cs231n.github.io/ipython-tutorial/IPython其实是一个比较方便的编辑器,当然可以用记事本来编写python程序,但是调试和运行何其麻烦,IPython其实就是一个比较方便的编辑器,同时可以编写python、cmd等指令执行。其实和matlab神似。Python之前用IDLE逐行编辑和运行,或者整个文件进行执行,很难一段

2016-08-10 22:13:11 904

原创 Array Broadcasting in numpy

Reference: [1]http://scipy.github.io/old-wiki/pages/EricsBroadcastingDoc [2]http://docs.scipy.org/doc/numpy-1.10.1/user/basics.broadcasting.htmlbroudcasting主要是在计算不同维度的数组的时候自动进行broadcasting操作,从而能够加速计算

2016-08-10 21:54:22 362

原创 探索百度产品

今天中午闲来无事,看了看百度的一篮子产品中的一部分,觉得还相当有趣。1.百度广播开放平台:将文字转换成语音,可以保存。遗憾的就是,居然在开头插播baidu的产品介绍,难道就不能放在最后么。。很有趣的一个小应用,不过为什么不和百度翻译合二为一呢,翻译的文字也能够直接发声然后保存不更好,技术上有有啥区别么?2.百度VR社区:感觉确实就是个社区。3.百度商桥:了解了一下,似乎就是在线客服系统,就比如说进入

2016-08-10 13:45:54 444

原创 Momentum和lr关系

Reference: [1]https://zhuanlan.zhihu.com/p/21475880其是主要的因素我认为其实是历史因素综合对于现在的因素产生影响,那么可能有这样的优点: 如ref[1],就是由于在某个方向波动过大,因此可以通过这样的方式来综合历史因素,然后使得其相对平稳。那么对于当前的梯度来说,就受其影响相当小。可以说是之前的训练样本阴魂不散。或者可以说是batch GD的一个

2016-08-09 23:05:16 1295

原创 UFLDL minFuncSGD.m

本函数首先需要进行的操作相当简单,其是就是对于velocity的更新迭代,原来的theta = theta - grad变成了theta = thedeta - velocity而velocity则是累计更新,其中参数mom则是对于velocity的本次相对于上一次的残留的大小。注意另一点就是velocity = mom * velocity + alpha * grad也就是说,我们假设alpha

2016-08-09 22:34:06 739

原创 UFLDL cnnInitParams.m cnnParamsToStack.m computeNumericalGradient.m

cnnInitParams : Xavier方式的初始化。 cnnParamsToStack : 列向量的参数进行划分 computeNumericalGradient : 数值计算梯度function theta = cnnInitParams(imageDim,filterDim,numFilters,... poolDim,n

2016-08-09 17:42:30 977

原创 UFLDL cnnCost.m

cnnCost这个函数有一个bug,最开始怎么也调整不对。。。是在conv的bp的时候需要进行一个sigmoid的求导的操作,但是一直就是conv2函数之后就没了,所以。。。很尴尬。。。时刻注意在bp的时候遇到非线性要进行求导一集后续操作。代码相当简洁,没有正则化项。function [cost, grad, preds] = cnnCost(theta,images,labels,numClass

2016-08-09 17:39:39 546

原创 UFLDL cnnExercise.m

主要就是检查conv 和 pool 两个函数的实现情况。我认为最有价值的是isequal函数,知道了能够直接比较数组。%% Convolution and Pooling Exercise% Instructions% ------------% % This file contains code that helps you get started on the% convolut

2016-08-09 00:23:54 769

原创 UFLDL cnnPool.m

虽然pool也能通过比较naive的方法来实现,但是效率相对来说比较低,因此我通过conv2来实现,然后间隔取样,效率较高。function pooledFeatures = cnnPool(poolDim, convolvedFeatures)%cnnPool Pools the given convolved features%% Parameters:% poolDim - dime

2016-08-09 00:05:19 545

原创 UFLDL cnnConvolve.m

主要功能为对于图片进行卷积运算,这个并不难。其中卖了一个小关子,就是为什么要filter = rot90(squeeze(filter),2);% 180 degree。这个会discuss later。function convolvedFeatures = cnnConvolve(filterDim, numFilters, images, W, b)%cnnConvolve Returns

2016-08-08 22:55:35 756

原创 UFLDL run_train.m

原来的函数调用minFunc进行全局最优解的求解,后来稍作修改,使得其能够通过手动的随机梯度下降,比较简单,有效果。。。按照原来的训练方式进行训练:10000数据 minFunc 92.55%60000数据 minFunc 96.41%Step Size below progToltest accuracy: 0.964100train accuracy: 1.000000% runs tr

2016-08-08 21:55:48 553

原创 UFLDL supervised_dnn_cost.m

本函数在实现的时候犯了几个非常傻逼的错误,最开始导致不能收敛,甚至有的时候还会增长。第一个就是在实现forward的时候,最开始的for循环,我将最后一个softmax层的结果也进行了sigmoid然后再求概率分布等,这个就非常蠢了。。。。所以最后将其单独拿出来。第二个是bp的时候,最后一层的delta没有加负号。。。然后就是在sparse的时候,要用一个list而不是一个数,比如说: spa

2016-08-08 21:52:50 798

原创 UFLDL params2stack.m

主要有两个参数,所有参数的列向量params和网络的参数ei。 params保存着所有的参数值,而ei保存着每一层的大小,也就是参数reshape的矩阵维度。 最后返回的stack保存着网络层间的参数矩阵。function stack = params2stack(params, ei)% Converts a flattened parameter vector into a nice "st

2016-08-08 15:45:12 840

原创 UFLDL stack2params.m

传入的是stack,stack中存储着不同层的W和b。params是向量化之后的所有的参数,存储为一列。function [params] = stack2params(stack)% Converts a "stack" structure into a flattened parameter vector and also% stores the network configuration.

2016-08-08 15:39:44 514

原创 UFLDL initialize_weights.m

终于知道Xavier初始化是什么东西了。。。 Glorot X, Bengio Y. Understanding the difficulty of training deep feedforward neural networks[C]//Aistats. 2010, 9: 249-256.其实就是按照均值为0,随机方差为 6√(prevsize+cursize)√ \sqrt6 \over \

2016-08-08 15:24:29 792

原创 UFLDL softmax_regression.m

在计算loss损失的时候,只需要对于需要预测的类别进行loss的计算,而bp的时候则需要考虑到错误的类别。function [f,g] = softmax_regression(theta, X,y) % % Arguments: % theta - A vector containing the parameter values to optimize. % In

2016-08-08 14:55:42 485

原创 UFLDL ex1c_softmax.m

Reference: [1]http://blog.csdn.net/songrotek/article/details/41310861 [2]http://ufldl.stanford.edu/tutorial/supervised/SoftmaxRegression/主要工作第一个就是读取数据集合, 第二个就是通过minFunc进行训练,找到全局最优, 之后就是在训练和测试集合上分别计

2016-08-08 13:49:24 881

NTUSD台湾大学情感词典

数据标题:台湾大学NTUSD - 简体中文情感极性词典 数据网址:http://www.datatang.com/datares/go.aspx?dataid=601972 negative:8325 positive:2846

2016-07-12

空空如也

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

TA关注的人

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