自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 训练自己的数据

1.Generate lists for images and labels 2.Make an input queue 生成一个队列 3.Need one Tensorflow reader 需要一个读取器去读取数据 4.Need one Tensorlfow decoder 需要一个解码器去把数据解码 5.Generate batch 生成相同大

2017-07-29 01:59:39 223

原创 MNIST数据集处理

MNIST数据集是NIST数据集的一个子集,它包括60000张图片作为训练数据,10000张图片作为测试数据。在MNIST数据集的每一张图片都代表了0-9中的其中一个数字。图片大小为28×28,且数字都会出现在图片的正中间。下图就是MNIST的一张数字图片和它对应的像素矩阵: 虽然MNIST数据集只提供了训练和测试数据,但是为了验证模型训练的效果,一般会从训练数据划分除一部分作为验证(valida

2017-07-23 19:07:44 1059

原创 深层神经网络——总结

设计神经网络的两个总体原则:非线性结构和多层结构 设计损失函数,神经网络是一个优化问题,而损失函数就是刻画了神经网络需要优化的目标。分类问题和回归问题的常用损失函数。 优化神经网络最常用反向传播算法和梯度下降算法。 指数衰减方法设置学习率,加快训练速度,训练后期又不会出现损失函数在极小值周围徘徊往返情况。 正则化解决过拟合问题。

2017-07-20 18:25:34 298

原创 深层神经网络——滑动平均模型

在采用随机梯度下降算法训练神经网络时,使用滑动平均模型在很多应用中都可以在一定程度上提高最终模型在测试数据上的表笑。 在Tensorflow中提供了tf.train.ExponentialMovingAverage来实现滑动平均模型。在初始化ExponentialMovingAverage 时,需要提供一个衰减率(decay)。这个衰减率会用于控制模型的更新速度。ExponentialMovin

2017-07-20 17:33:20 5976 4

原创 深层神经网络——过拟合问题

损失函数是用于优化训练数据。然而真实的应用中想要的并不是让模型尽量模拟训练数据的行为,而是希望通过训练出来的模型对未知的数据给予判断。模型在训练数据上的表现并不一定代表了它在未知数据上的表现。 过拟合就是导致这个差距的重要因素,所谓过拟合就是当一个模型郭伟复杂之后,它可以很好的“记忆”每一个训练数据中随机噪音的部分而忘记了要去“学习”训练数据中的通用趋势。 比较极端的例子就是,当模型中的参数比训

2017-07-20 16:49:11 18467 1

翻译 C++小技巧汇总

// “d:\录取i.txt”改成”d:\录取‘’+i +“.txt” string filename = “d:\录取”; char index = i + ‘0’;//数字i转换成字符i filename = filename + index + “.txt”; ofile.open(filename.c_str());int转string int n = 0; std::strin

2017-07-19 22:07:04 292

原创 神经网络优化——学习率

训练神经网络的时候需要设置学习率(learning rate)控制参数更新速度。学习率决定了参数每次更新的幅度。如果幅度过大,可能导致参数在最优值的两侧来回移动。 从上图可知,无论进行多少次迭代,参数将在5和-5之间摇摆,而不会收敛到一个极小值。相反学习率过小时,虽然能保证收敛性,但是会大大降低优化速度。 Tensorflow提供了一种灵活的学习率设置方法——指数衰减法。 tf.train

2017-07-19 14:54:31 1112

原创 神经网络优化算法

反向传播算法(backpropagation)和梯度下降算法(gradient decent)调整神经网络中参数的取值。梯度下贱算法主要用于优化单个参数的取值,而反向传播算法给出了一个高效的方式在所有参数上使用梯度下降算法,从而使神经网络模型在训练数据上的损失函数尽可能的小。反向传播算法是训练神经网络的核心算法,它可以根据定义好的损失函数优化神经网络中的参数的取值,从而使神经网络模型在训练数据集上的

2017-07-18 20:39:19 3613

原创 深层神经网络——分类、回归的损失函数

神经网络模型的效果以及优化目标是通过损失函数(loss function)来定义的。分类问题和回归问题有很多经典的损失函数。 分类问题和回归问题是监督学习的两大种类。 分类问题希望解决的是将不同的样本分到事先定义好的类别中。再这种问题下,需要将样本二分类(多分类)。手写字体识别就是一个十分类的问题。 再判断二分类问题的时候,可以定义一个有单个输出节点的神经网络,当这个节点输出越接近1(或者设定

2017-07-18 14:02:57 25395 1

原创 深层神经网络——多层网络解决异或运算

异或(xor)是一个数学运算符。它应用于逻辑运算。异或的数学符号为“⊕”,计算机符号为“xor”。其运算法则为: a⊕b = (¬a ∧ b) ∨ (a ∧¬b) 如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。 异或也叫半加运算,其运算法则相当于不带进位的二进制加法:二进制下用1表示真,0表示假,则异或的运算法则为:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(

2017-07-18 11:32:06 2675

原创 深层神经网络——激活函数去线性化

当神经元结构的输出为所有输入的加权和,那么神经网络是一个线性模型。如果将每一个神经元(神经网络节点),的输出通过一个非线性函数,那么整个神经网络的模型也就不再是线性的了。这个非线性函数就是激活函数。 下图为加入了激活函数和偏置项后的神经元结构: 神经网络结构加上激活函数和偏置项后的前向传播算法的数学定义为: 相比于传统的神经网络主要有两个改变: 第一是增加了偏置项(bias),偏置项

2017-07-17 22:17:46 3513 1

原创 深层神经网络——线性模型的局限性

深度学习精确定义: 一类通过多层非线性变换对高复杂数据建模算法的集合。 深层神经网络是实现多层非线性变换最常用的一种方法,实际中基本可以认为深度学习就是深层神经网络的代名词。 深度学习特性:多层和非线性线性模型的局限性: 再线性模型中,模型的输出为输入的加权和,假设一个模型的输出y和输入x满足以下关系,这个模型就是一个线性模型。 其中wi,b∈R为模型参数。被称之为线性模型是因为当模型

2017-07-17 21:56:26 4176

原创 神经网络基础

图像数据 图像是像素点组成的矩阵, [0-255]越小越暗越大越亮 RGB通道,彩色图。 32X32X3 彩色图 32X32X1 灰度图线性分类: 得分函数: 像素点做一个转换,拉长。矩阵变成一个列向量。 对每一个像素点来说都有权重参数。使用神经网络的时候,W的shape是多大的必须明确给出。分类——分几类。 b参数,影响很小,有几个分类有几个b。 损失函数:

2017-07-16 19:52:24 355

转载 matplotlib

plt.plot() 画的操作 plt.show() 显示的操作 plt.figure() 指定一个域 。add_subplot() add_subplot 添加子图 add_subplot(4,1,x) 布局(4,1, ) 4*1的矩阵 前两个参数是矩阵的行列 (2,2,1) 有四个子图 1 对第一个子图进行操作 http://blog.csdn.net/v

2017-07-16 17:01:31 228

原创 逻辑回归

线性回归 最小二乘法 最大自然估计

2017-07-15 21:15:02 183

转载 python 无法读取文件 找不到文件

还是我来吧、我在test.txt写了个0 f=open(“D:\test.txt”) a=f.read() print a 0 楼主少了个“\” f=open(“D:\test.txt”) Traceback (most recent call last):

2017-07-15 20:23:49 21160

转载 归一化处理

归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为标量。 在多种计算中都经常用到这种方法 http://www.cnblogs.com/chaosimple/archive/2013/07/31/3227271.html https://www.zhihu.com/question/20455227 http://blog.csdn.net/zbc1090549

2017-07-15 20:23:12 654

转载 pandas1

Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。 Series:一维数组,与N

2017-07-15 15:47:13 248

原创 Numpy常用函数

import numpy as np B=np.arange(3) print(B) print(np.exp(B)) print(np.sqrt(B))exp的意思 e的多少次幂 e^0=1 e^1=2.71828.. e^2=7.389…sqrt=开方[0 1 2] [ 1. 2.71828183 7.3890561 ] [ 0. 1.

2017-07-15 15:08:42 434

原创 Numpy数组

封装了很多矩阵运算 科学计算库 numpy.genfromtxt() http://blog.csdn.net/chang_yuan_2011/article/details/21300443 numpy.array() http://blog.csdn.net/sunny2038/article/details/9002531 http://blog.csdn.net/sunny203

2017-07-15 12:57:53 254

原创 Anaconda

方式一 conda insall 库名 安装库 方式二 anaconda search -t conda 名称http://blog.csdn.net/xidianliutingting/article/details/53580569shift+回车执行 notebook无法debug可视化展示很有利 anaconda show 版本(复制) update

2017-07-13 16:29:01 208

原创 计算机视觉

图像三维数组组成 [R、G、B]颜色通道 300*100*3 一张图像相当于是数值组成的,也就是像素点组成的。像素点【0-255】,像素点越大当前位置亮度越高。像素点的值越大,那么这个位置就比较亮。 深度学习任务: 套路 1.收集数据并给定标签 得出数据集,核心步骤 2.训练一个分类器 分类器可以做分类操作,二分类。训练分类器,分类器就是神经网络 3.测试,评估 测试集、评估方

2017-07-12 16:41:29 318

原创 Tensorlfow——变量

神经网络参数是神经网络实现分类或者回归问题中重要的部分。 在Tensorflow中,变量(tf.Variable)的作用就是保存和更新神经网络中的参数。和其他编程语言相似,Tensorflow中的变量也需要指定初始值。因为在神经网络中,给参数赋予随机初始值最为常见,所以一般也是用随机数给Tensorflow的变量初始化。 通过构造一个Variable类的实例在图中添加一个变量(variable)

2017-07-12 16:09:40 855

原创 Tensorflow——会话

Tensorflow中的会话是来执行定义好的运算的。会话拥有并管理Tensorflow程序运行时的所有资源。当计算完成之后需要关闭会话来帮助系统回收资源,否则可能出现资源泄露的问题。 Tensorflow中使用会话的模式一般有两种,第一种模式需要明确调用会话生成函数和关闭会话函数,流程如下: 使用这种模式时,所有计算完成后,需要明确调用Session.close()函数关闭会话并释放资源。然

2017-07-11 20:40:03 4493

原创 Tensorflow——张量

在Tensorflow中,所有数据都通过张量的形式来表示,从功能上看,张量可以简单的被理解为多维数组。其中零阶张量表示标量(scalar),也就是一个数;第一阶张量为向量(vector),也就是一个一维数组;同理第n阶张量就是n维数组。 但是张量在Tensorflow中的实现并不是采用数组的形式,他只是对Tensorflow中运算结果的引用。在张量中并没有真正的保存数字,它保存的是如何得到这些数字

2017-07-11 20:12:51 4041

原创 Tensorflow--图

Tensorflow最重要的两个概念——Tensor和Flow。 Tensor就是张量,在Tensorflow中Tensor可以被简单的理解为多维数组。Tensor是Tensorflow的数据结构,那么Flow是Tensorflow的计算模型。Flow的中文翻译成流,它表达了张量之间通过计算相互转化的过程。Tensorflow是一个通过计算图的形式来表述计算的编程系统。Tensorflow每一个计

2017-07-11 17:34:28 415

原创 前向传播算法

一个神经元有多个输入和一个输出,每个神经元的输入既可以是其他神经元的输出也可以是整个神经网络的输入。所谓神经网络的结构就是指的是不同的神经元之间的连接结构。 如图所示,一个最简单的神经元结构的输出就是所有输入的加权和,而不同的输入的权重就是神经元的参数。神经网络的优化过程就是优化神经元中参数的取值的过程。 如图 是一个简单的判断是否合格的三层全连接神经网络。全连接神经网络是指相邻两层之间的任意两

2017-07-10 20:01:59 5608

原创 Tensorflow--代码1

np.random.normal(mean,stdev,size)给出均值为mean,标准差为stdev的高斯随机数(场),当size赋值时,例如:size=100,表示返回100个高斯随机数。 tf.random_normal | tf.truncated_normal | tf.random_uniformtf.random_normal(shape,mean=0.0,stddev=1.0,d

2017-07-02 10:18:19 210

空空如也

空空如也

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

TA关注的人

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