随笔分类 - 4_深度学习(keras、tersorflow2、数据集、pytorch、深度学习花书等)
摘要:python虚拟环境-virtual environment 一、总结 一句话总结: python虚拟环境是一个隔离/独立的python开发环境,和系统python环境可以完全隔离,互不相关,相当于多了一个python开发环境。 1、python 可用于virtual environment的具体模
阅读全文
摘要:TensorFlow2_200729系列 18、手写数字识别(层方式) 一、总结 一句话总结: 之前是张量(tensor)的方式,体现细节和原理,现在是层方式,更加简便简洁 model = Sequential([ layers.Dense(256, activation=tf.nn.relu),
阅读全文
摘要:tensorFlow2.1下的tf.data.Dataset.from_tensor_slices()的用法 一、总结 一句话总结: 将输入的张量的第一个维度看做样本的个数,沿其第一个维度将tensor切片,得到的每个切片是一个样本数据。实现了输入张量的自动切片。 # from_tensor_sli
阅读全文
摘要:TensorFlow2_200729系列 17、函数用梯度下降法求最值实例 一、总结 一句话总结: 从不同的初始点梯度下降,找到的极值点不一样 import numpy as np from mpl_toolkits.mplot3d import Axes3D from matplotlib imp
阅读全文
摘要:TensorFlow2_200729系列 16、链式法则求多层感知器梯度实例 一、总结 一句话总结: A、y2对y1求导:w2:dy2_dy1 = tape.gradient(y2, [y1])[0] B、y1对w1求导:x:dy1_dw1 = tape.gradient(y1, [w1])[0]
阅读全文
摘要:TensorFlow2_200729系列 15、交叉熵求梯度实例 一、总结 一句话总结: loss = tf.reduce_mean(tf.losses.categorical_crossentropy(tf.one_hot(y,depth=2), logits, from_logits=True)
阅读全文
摘要:TensorFlow2_200729系列 14、MSE求梯度实例 一、总结 一句话总结: tf.losses.MSE:loss = tf.reduce_mean(tf.losses.MSE(y, logits)) 1、机器学习中的公式推导? 机器学习中,很多看似很复杂的公式的推导,就是非常普通的按照
阅读全文
摘要:TensorFlow2_200729系列 13、二阶梯度求解 一、总结 一句话总结: 梯度是放在with tf.GradientTape() as t1 语句之中,那二阶梯度就是这个语句的嵌套 import tensorflow as tf w = tf.Variable(1.0) b = tf.V
阅读全文
摘要:TensorFlow2_200729系列 12、全连接层 一、总结 一句话总结: tf.keras.layers.Dense(2, activation='relu') 1、为什么神经节点一般有多个w和一个b? A、h=relu(X@W)+b,这里的b表示bias,也就是误差, B、比如第一层3个节
阅读全文
摘要:TensorFlow2_200729系列 11、测试(张量)实例 一、总结 一句话总结: 就用算好的w和b,来计算测试集上面的正确率即可,非常简单 # test/evluation # [w1, b1, w2, b2, w3, b3] total_correct, total_num = 0, 0
阅读全文
摘要:TensorFlow2_200729系列 10、meshgrid操作实例 一、总结 一句话总结: point_x, point_y = tf.meshgrid(x, y) import tensorflow as tf import matplotlib.pyplot as plt def func
阅读全文
摘要:TensorFlow2_200729系列 9、前k项准确率实例 一、总结 一句话总结: 就是用tf.math.top_k可以得到概率前k的项的索引构成的数组,然后在普通计算即可,核心点就是矩阵的一些操作 def accuracy(output, target, topk=(1,)): maxk =
阅读全文
摘要:TensorFlow2_200729系列 8、前向传播(张量)实战 一、总结 一句话总结: A、就是手动(模拟原理)实现多层多节点的神经网络计算,784(输入)->256->128->10(输出) B、多节点的神经网络,用矩阵计算很方便,比代数计算方便多了 for epoch in range(10
阅读全文
摘要:神经网络中的代数运算和矩阵运算的关系 一、总结 一句话总结: 神经网络中矩阵运算和代数效果是一样的,只不过是代码转成矩阵了,矩阵计算更加方便 1、神经网络中的节点都是简单的感知器? 也就是 y=w*x+b,如果加上激活函数,比如relu,就是y=relu(w*x+b) 二、神经网络中的代数运算和矩阵
阅读全文
摘要:tf.random.truncated_normal()-截断正态分布 一、总结 一句话总结: sigmoid激活函数,用截断的正态分布更好,因为这样就不会有两侧的梯度消失的情况 二、tf.random.truncated 转自或参考:tf.random.truncatedhttps://blog.
阅读全文
摘要:TensorFlow2_200729系列 6、tensorflow2 数据类型 一、总结 一句话总结: list(python原生):python中灵活的数据存储方式,但是效率低 np.array(numpy):相同数据的n维数组,用于高性能计算,没有GPU加速和自动求导 tf.Tensor(ten
阅读全文
摘要:TensorFlow2_200729系列 7、广播 一、总结 一句话总结: a、手动或自动扩充维度进行运行,numpy也有类似的功能 b、比如x=tf.random.normal([4,32,32,3]); (x+tf.random.normal([3])).shape; TensorShape([
阅读全文
摘要:TensorFlow2_200729系列 5、手写数字识别实例 一、总结 一句话总结: 手写数字识别实例,神经网络的层是不断降维的过程。 model = keras.Sequential([ # 28*28=784 784到512的降维 # 相当于公式 h1 = relu(w1*x+b) layer
阅读全文
摘要:TensorFlow2_200729系列 4、手写数字识别理论 一、总结 一句话总结: 手写识别数字中,最开始由784(28*28)维降到最后输出的10(10类输出)维,每一层神经网络降一次维 1、p(y=1|x)=0.8表示什么意思:out:[0.1,0.8,0.02,0.08]? 在x的条件下,
阅读全文
摘要:TensorFlow2_200729系列 3、梯度下降求简单线性回归实例 一、总结 一句话总结: 梯度下降:梯度下降是对loss函数做的,对loss的w和b,比如w = w - learningRate*loss对w的梯度 画动态图:在动态图中更新y轴数据即可,如果需要更新text标注,那就也更新
阅读全文

浙公网安备 33010602011771号