深度学习编程笔记
还好江南
这个作者很懒,什么都没留下…
展开
-
深度学习编程笔记:kears基础4:过拟合
一.数据集划分一般的划分,训练集,验证集加测试集每一次epoch都对训练集和验证集进行重新划分下面的这个程序可以替代上面这个db_train_val是总的数据集,validation_split=0.1表示以训练集0.9,验证集0.1的比例对数据集进行动态切割二.正则化这里的θi代表的是各层的参数如w和b。这里的0.001就是λ,是正则项的权值。...原创 2020-05-05 21:13:23 · 194 阅读 · 1 评论 -
深度学习编程笔记:kears基础3:CIFAR10自定义网络实战
111原创 2020-05-05 18:18:14 · 141 阅读 · 0 评论 -
深度学习编程笔记:kears基础3:模型保存与加载
模型保存与加载model有管理参数的功能,所以里面参数的数量它都是知道的,我们可以直接提供save_weights功能后,可以直接将中间的每一个参数都保存在后面路径中。加载过程就直接先创建一个网络,这里把步骤缩写了,创建网络的过程必须和原来网络创建过程一样,然后将保存的数据重载。实验代码import tensorflow as tffrom tensorflow.keras...原创 2020-05-02 11:43:15 · 229 阅读 · 0 评论 -
深度学习编程笔记:kears基础2:自定义网络
1.自定义层inherit from keras.layers.Layer keras.Model__ init __和call都继承自keras.layers.LayerSequntial和compile等等就继承自Model一般来说,整个网络是一个类继承自Model,里面有很多标准层,其中可以定义自己的层,这个自定义层就继承自keras.layers.Layer。自定义层代码...原创 2020-05-01 21:45:25 · 193 阅读 · 0 评论 -
深度学习编程笔记:kears基础:手写数字识别
1.这里是用的层的方法写的神经网络,没有用keras里面的封装函数baseline代码理解点在代码中开始前向传播的标志是modle(x),其实这是调用了python中的一个这样的东西modle.__ call__(x),然后会自动实现call(),使x在Sequential中一层一层往下传代码import tensorflow as tffrom tensorflow imp...原创 2020-05-01 20:41:38 · 265 阅读 · 0 评论 -
深度学习编程笔记:Tensorflow2.1基础知识---神经网络八股功能扩展
本篇文章的主要目的是对上一篇文章已经搭建好的网络进一步丰富其内容,具体体现在6个方面:回顾:tf.keras搭建神经网络八股——六步法import——导入所需的各种库和包x_train, y_train——导入数据集、自制数据集、数据增强model=tf.keras.models.Sequential/class MyModel(Model) model=MyModel——定义模型m...原创 2020-04-07 15:47:46 · 424 阅读 · 0 评论 -
深度学习编程笔记:Tensorflow2.1基础知识---搭建神经网络八股以及小案例实战
利用Tensorflow API tf.keras搭建网络八股(六步法)六步法:导入相关的模块,也就是 import加载训练集和测试集,也就是加载train(x_train数据、y_train标签)、test(x_test数据、y_test标签)数据前向传播(搭建神经网络结构,逐层描述每层网络),也就是model = tf.keras.models.Sequential配置训练时所用的...原创 2020-04-07 15:17:49 · 329 阅读 · 0 评论 -
深度学习编程笔记:Tensorflow2.1基础知识---神经网络参数优化器
什么是优化器?优化器,就是神经网络进行反向传播的时候,用于更新参数的策略,也就是梯度下降的算法。优化器更新参数的步骤(4步):a. 计算t时刻损失函数关于当前参数的梯度:g_t= ∆loss= ∂loss/(∂(w_t))b. 计算t时刻一阶动量m_t 和二阶动量V_t (一阶动量:与梯度相关的函数 二阶动量:与梯度平方相关的函数)c. 计算t时刻下降梯度:μ_t=lr∗ m_t...原创 2020-04-07 15:09:47 · 241 阅读 · 0 评论 -
深度学习编程笔记:Tensorflow2.1基础知识---缓解过拟合
欠拟合和过拟合过拟合和欠拟合是导致模型泛化能力不高的两种原因,都是模型学习能力与数据复杂度之间失配的 结果。欠拟合:是在模型学习能力较弱,而数据复杂度较高的情况出现,此时模型由于学习能力不足,无 法学习到数据集中的“一般规律”,因而导致泛化能力弱。过拟合:是在模型学习能力过强的情况中出现,此时的模型学习能力太强,以至于将训练单个样本 自身的特定都能捕捉到,并将其认为是“一般规律”,因而...原创 2020-04-07 15:06:13 · 155 阅读 · 2 评论 -
深度学习编程笔记:Tensorflow2.1基础知识---复杂度、学习率、激活函数、损失函数
文章目录复杂度学习率激活函数损失函数复杂度空间复杂度(用层数和待优化的参数个数表示)层数 = 隐藏层的层数+1个输出层(输入层不算)总参数 = 总w + 总b时间复杂度:乘加运算次数学习率学习率是一个超参数,根据经验来设定,学习速率调得太低,训练速度会很慢,学习速率调的过高,每次迭代波动会很大,再反向传播的过程中会更新权值w指数衰减学习率:可以先用较大的学习率,快速得到...原创 2020-04-07 15:01:55 · 383 阅读 · 0 评论 -
深度学习编程笔记:tensorflow2.1基础知识---张量
张量(Tensor):多维数组(列表) 阶:张量的维数张量可以表示0阶到n阶数组(列表)基本的数据类型tf.int,tf.floattf.booltf.string生成一个张量如何创建一个张量用法:tf.constant(张量内容,dtype=数据类型(可选))例子: import tensorflow as tf #创建一个张量 a = tf.constant([1,...原创 2020-04-07 14:34:58 · 164 阅读 · 0 评论 -
深度学习编程笔记1:Python中文件的读取与写入以及read(),readline(),readlines()区别
目录一、读取整个文件1. with方式2. open方式3. open()函数和with open()的异同点4. 文件路径5. 读取文件常用的三种方法的区别二、文件的写入一、读取整个文件读取文件主要用到两个方式,即:1. with方式 with open('文件名') as file_object: contents = file_object.read() ...转载 2020-04-06 22:16:45 · 663 阅读 · 0 评论