- 博客(17)
- 资源 (18)
- 问答 (4)
- 收藏
- 关注
原创 Matlab随机生成元素和为K的向量
随机生成一个1×n1\times n的向量,且所有元素和为1。a = rand(1,10)0.2362 0.1194 0.6073 0.4501 0.4587 0.6619 0.7703 0.3502 0.6620 0.4162b = a./sum(a)0.0499 0.0252 0.1283 0.0951 0.096
2017-09-30 16:26:54 2051
原创 拉格朗日乘数法(Lagrange multiplier)
先摆公式,再说推导。求二元函数z=f(x,y)z=f(x,y)在条件φ(x,y)=0下的极值。\varphi(x,y)=0下的极值。(1)作Lagrange函数F(x,y,λ)=f(x,y)+λφ(x,y);F(x,y,\lambda)=f(x,y)+\lambda\varphi(x,y);(2)求F(x,y,λ)F(x,y,\lambda)的驻点(x0,y0,λ0)(x_0,y_0,\lambda
2017-09-29 19:25:11 36775 5
原创 一元隐函数及其求导
在说到隐函数(Implicit function)之前,先回想一下显函数(Explicit function).0.显函数(Explicit function)解析式中明显地用一个变量的代数式表示另一个变量时,称为显函数。即总能写成y=f(x)y=f(x)的形式。 1.隐函数(Implicit function)如果方程F(x,y)=0F(x,y)=0能确定yy是xx的函数,那么称这种方式表示的函数
2017-09-29 10:55:12 11409
原创 K-Means算法(实例)
K-Means算法实例:本文的是上一篇的实例部分以下代码均是在Matlab中实现。1.初始化中心点function centroids = kMeansInitCentroids(X, K)centroids = zeros(K, size(X, 2));% 初始化centroids为一个K by n 的矩阵m = size(X,1);rands = randperm(m,K);% 从1到m中随
2017-09-28 10:37:36 3206
原创 K-Means算法(思想)
K-Means算法的思想:第一步:寻找最近的中心点在给定的数据集上随机选取K(K已知)个点(向量)作为数据集上的K个中心(也就代表K个类别),然后依次遍历每一条数据,分别计算其与K个中心的距离,选择与之距离最近的点作为该数据所属的类别。这样一次遍历完之后,数据集中的所有点都被划入了其应该所属的类别里面(尽管有划错的)。第二步:重新计算中心对于每一个类别来说,里面都有若干个点。由于之前的中心点事随机选
2017-09-28 10:05:03 2615
原创 神经网络训练实例(手写体识别)
本例子参考的Andrew Ng机器学习第五周的课后作业,只是在原来的基础上自己从新梳理了整个训练过程的关键部分。源码,戳此处我们照着上一篇文章中的步骤,一步步来做。先对该网络做一个说明:网络一共有三层,其中S1=400,S2=25,S3=10S_1=400,S_2=25,S_3=10;参数维度为Θ125×401,Θ210×26\Theta^1_{25\times401},\Theta^2_{10\t
2017-09-24 13:45:18 1173
原创 norm(范数)、bsxfun()用法
1.norm(X)如果x是一个向量,那么norm(x)就等于x的模长。||X||=x21+x22+⋯+x2n−−−−−−−−−−−−−−√;X={x1,x2⋯xn}||X||=\sqrt{x_1^2+x^2_2+\cdots+x^2_n};X=\{x_1,x_2\cdots x_n\}>> x = [3,4]>> norm(x)>> ans = 52.bsxfunC = bsx
2017-09-24 08:20:38 1894
原创 Matlab中如何使函数作为参数传递
在此之前,先看看如何调用函数:1.函数的调用下面的例子将在call.m脚本中,调用写在fun.m中的函数fun(a,b,c);实现a,b,c三个数相加,然后返回;%%fun.mfunction [ output ] = fun(a,b,c )output = a + b + c;end下面进行调用 % call.ms = 0;a = 1;b = 2;c = 3;s = fun(a,
2017-09-23 18:54:33 36720 3
原创 斯坦福机器学习第五周(如何训练神经网络)
上一周Andrew Ng 介绍如何应用神经网络来识别手写体时,其网络已经是训练好的。也就是说整个网络的参数Θ(i)\Theta^{(i)}是已知的,而这一周的主要内容就是如何来训练一个神经网络,换句话说就是如何找到参数Θ\Theta.当然,采用的方法依旧是梯度下降或者fminunc等方法。但是使用这些方法的前提是给出代价函数J(Θ),以及代价函数关于每参数θ的梯度,即∂∂θlijJ(Θ)J(\The
2017-09-23 16:03:32 2273
原创 关于反向传播算法中几个公式的推导
参考自资料,戳此处J(W,b;x,y)=12||hW,b(x)−y||2J(W,b;x,y)=\frac{1}{2}||h_{W,b}(x)-y||^2符号说明:lSlL=神经网络的某一层=第l层神经元的数目=神经网络的总层数\begin{align*}l&=神经网络的某一层\newlineS_l&=第l层神经元的数目\newlineL&=神经网络的总层数\end{align*} 如下图中
2017-09-19 21:16:13 1135 2
原创 微分与可微
一、微分的定义什么是微分? 先来看一个例子设有一个半径为r的金属圆片受热后其半径增加了Δr\Delta_r,求面积A的增量ΔA\Delta A A(r)ΔA=πr2=π(r+Δr)2−πr2=π[2rΔr+(Δr)2]=2rπΔr+π(Δr)2\begin{align*}A(r) &=\pi r^2\newline\\ \Delta A &=\pi(r+\Delta r)^2-\pi r^2
2017-09-16 16:34:05 2795
原创 怎么把数据集的输出值转换成只含有0,1的标签向量
举个例子:某神经网络有5个输出值,分别对应1-5每个数字的输出概率,先有数据集x(i)x^{(i)},其输出值为,y=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢1223444⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥y=\begin{bmatrix}1\\2\\2\\3\\4\\4\\4\\\end{bmatrix}。但是我们在神经网络中计算代价函数的时候需要将其转换成对应的标签值(即,若x(i)的预期输出值为3,则y3=⎡⎣⎢⎢
2017-09-15 19:29:32 4439 4
原创 神经网络的代价函数到底怎么在算
下面是就是神经网络中代价函数J(Θ)J(\Theta)的表达式,看起来还是稍微有点复杂。这个表达式到底在计算什么?下面我们先用一个简单的例子来分开一步步计算一下。J(Θ)=−1m∑i=1m∑k=1K[y(i)klog((hΘ(x(i)))k)+(1−y(i)k)log(1−(hΘ(x(i)))k)]+λ2m∑l=1L−1∑i=1sl∑j=1sl+1(Θ(l)j,i)2 J(\Theta) = - \
2017-09-14 13:59:21 5261 12
翻译 图解微积分:反向传播
原文链接戳此处 Introduction Backpropagation is the key algorithm that makes training deep models computationally tractable. For modern neural networks, it can make training with gradient descent as...
2017-09-11 10:02:33 2060
翻译 利用反向传播训练多层神经网络的原理
原文链接戳此处Principles of training multi-layer neural network using backpropagation The project describes teaching process of multi-layer neural network employing backpropagation algorithm. To illu...
2017-09-09 20:09:43 1472
原创 梯度(Gradient vectors)
梯度(Gradient vectors)我们知道方向导数讨论的是曲面上任意一点沿着任一方向变化的速率,即方向导数是一个值;而梯度讨论的是其速率变化最快的方向,即梯度是一个向量。∂f∂l⃗ ={∂f∂x,∂f∂y}⋅{cosα,cosβ}=gradf⋅l0→=|gradf|⋅|l0→|⋅cosθ=|gradf|⋅1⋅cosθ=|gradf|⋅cosθ\begin{align*}\frac{\part
2017-09-08 21:21:59 4580
原创 方向导数(Directional derivatives)
方向导数(Directional Derivatives)提到方向导数,我们先来回顾一下导数(Derivative)和偏导数(Partial Derivative)的几何意义。导数是二维平面中,曲线上某一点沿着x轴方向变化的速率,即函数f(x)f(x)在该点的斜率;偏导数是在三维空间中,曲面上某一点沿着x轴方向或y轴方向变化的速率,即∂f∂x是函数f(x,y)\frac{\partial f}{
2017-09-08 20:31:51 51259
神经网络与深度学习
2017-09-24
deeplearning
2017-09-10
Dell inspiron 15r 5537安装Ubuntu 开机提示低显卡模式?
2015-06-05
Linux 中,普通用户获得临时root 之后,是否和超级用户一样?
2015-06-04
C语言关于char分配内存的问题
2015-06-04
C++中,定义的数组怎么由输入来确定维度
2014-12-03
TA创建的收藏夹 TA关注的收藏夹
TA关注的人