深度学习(神经网络)专题
文章平均质量分 53
本部分从最基本的传感器开始介绍整个深度学习的框架
CyrusMay
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
BERT网络的原理与实战
BERT(Bidirectional Encoder Representations from Transformers)是一种基于Transformer架构的预训练语言模型,由Google在2018年提出。BERT可以在大规模的未标注文本上进行预训练,然后在各种下游NLP任务上进行微调,取得了很好的效果。BERT的主要贡献在于将双向预训练引入了Transformer架构中,使得模型能够更好地理解上下文信息,从而在下游任务中表现更加出色。本文将介绍BERT网络的原理与实战,包括预训练和微调两个部分。原创 2023-05-24 21:50:14 · 2383 阅读 · 2 评论 -
强化学习—— Twin delay deep deterministic policy gradient(TD3算法)
所以动作价值的估计函数学习的目标是累计回报与TD error之差的期望。-------- 从replay buffer中随机采样一个batch。使用了两个动作价值网络和一个策略网络,对应于三个Target 网络。---------------- 更新Target network。--------将transition。初始化replay buffer。初始化Target网络中的参数。--------更新价值网络。,并随机初始化其中的参数。--------得到奖励。,并得到下一时刻的状态。原创 2022-08-23 21:57:00 · 1646 阅读 · 0 评论 -
Pytorch —— 分布式模型训练
在每个节点上都执行一次。原创 2022-07-29 21:43:28 · 945 阅读 · 0 评论 -
Pytorch(六) —— 模型调优tricks
Pytorch原创 2022-07-03 20:51:14 · 763 阅读 · 2 评论 -
Pytorch(四)——数据加载及预处理
pytorch原创 2022-06-30 17:13:48 · 882 阅读 · 1 评论 -
Pytorch(四) —— 可视化工具 Visdom
pytorch原创 2022-06-29 15:47:46 · 549 阅读 · 0 评论 -
Pytorch(三) —— 函数优化
pytorch原创 2022-06-29 13:52:10 · 436 阅读 · 0 评论 -
Pytorch(二) —— 激活函数、损失函数及其梯度
δ(x)=11+e−xδ′(x)=δ(1−δ)\delta(x)=\frac{1}{1+e^{-x}}\\\delta'(x)=\delta(1-\delta)δ(x)=1+e−x1δ′(x)=δ(1−δ)tanh(x)=ex−e−xex+e−x∂tanh(x)∂x=1−tanh2(x)tanh(x)=\frac{e^x-e^{-x}}{e^x+e^{-x}}\\\frac{\partial tanh(x)}{\partial x}=1-tanh^2(x)tanh(x)=ex+e−xex−e−x∂x∂原创 2022-06-28 17:14:55 · 897 阅读 · 0 评论 -
Pytorch(一) —— 基本语法
pytorch的基本语法和常用方法原创 2022-06-25 17:55:21 · 1650 阅读 · 0 评论 -
Tensorflow(三十四) —— GRU
Tensorflow(三十四) —— GRUimport tensorflow as tf from tensorflow import kerasimport numpy as nptf.compat.v1.disable_eager_execution()# 加载数据集total_words = 10000(x_train,y_train),(x_test,y_test) = keras.datasets.imdb.load_data(num_words=total_words)p原创 2022-04-18 11:33:46 · 1278 阅读 · 1 评论 -
Tensorflow(三十三) —— LSTM
Tensorflow(三十三) —— LSTMLSTM(Long Short-Term Memory)LSTM(Long Short-Term Memory)import tensorflow as tffrom tensorflow import kerasimport matplotlib.pyplot as pltimport pandas as pdfrom tensorflow.keras.preprocessing.sequence import pad_sequences原创 2022-04-18 11:33:31 · 1675 阅读 · 0 评论 -
Tensorflow(三十二) —— 梯度爆炸
Tensorflow(三十二) —— 梯度爆炸解决方案解决方案import tensorflow as tffrom tensorflow import keras# solve gradient explodingwith tf.GradientTape() as tape: logits = model(x) loss = tf.losses.categorical_crossentropy(y,logits,from_logits=True)grads = tape.原创 2022-04-18 11:33:19 · 373 阅读 · 0 评论 -
Tensorflow(三十一) —— RNN
Tensorflow(三十一) —— RNNimport tensorflow as tffrom tensorflow import keras# ***************** 1、input dim & hidden dimcell = keras.layers.SimpleRNNCell(64) # 4为隐含层神经元数量cell.build(input_shape = [None,6])print(cell.trainable_variables[0].shape,\原创 2022-04-18 11:33:00 · 455 阅读 · 0 评论 -
Tensorflow(三十) —— ResNet
Tensorflow(三十) —— ResNetimport tensorflow as tffrom tensorflow import keras# 定义一个basic blockclass BasicBlock(keras.layers.Layer): def __init__(self,input_filters,filters,stride = 1): super(BasicBlock,self).__init__() self.conv1 =原创 2022-04-18 11:32:19 · 997 阅读 · 2 评论 -
Tensorflow(二十九) —— 卷积神经网络(CNN)
Tensorflow(二十九) —— 卷积神经网络(CNN)1. layers.BatchNormalization2. 实战1. layers.BatchNormalizationimport tensorflow as tffrom tensorflow.keras import layers,optimizersimport matplotlib.pyplot as plt# ************************ layers.BatchNormalizationx = t原创 2022-04-18 11:32:04 · 1100 阅读 · 0 评论 -
Tensorflow(二十八) —— 卷积神经网络(CNN)
Tensorflow(二十八) —— 卷积神经网络(CNN)1. layers.Conv2D2. weight & bias3. nn.conv2d (需要自己维护)4 池化与采样5 CIFAR100实战(13层网络结构)1. layers.Conv2D# ************************* layers.Conv2Dx = tf.random.normal([1,32,32,3])layer = keras.layers.Conv2D(4,kernel_size = 5原创 2022-04-18 11:31:49 · 937 阅读 · 0 评论 -
Tensorflow(二十七) —— 过拟合与欠拟合
Tensorflow(二十七) —— 过拟合与欠拟合1. 过拟合检测2. k折交叉验证3. 过拟合的解决方案3.1 正则化3.2 动量与学习率3.3 early stopping / Dropout / stochastic gradient descent1. 过拟合检测# ************************* 1、how to detect overfitting# 1.1 splitting(x,y),(x_test,y_test) = keras.datasets.mnis原创 2022-04-18 11:31:33 · 659 阅读 · 0 评论 -
Tensorflow(二十六) —— 模型加载与保存
Tensorflow(二十六) —— 模型加载与保存1. 训练测试模型2. save the weights3. 保存整个模型状态4. 工业环境布置1. 训练测试模型import tensorflow as tffrom tensorflow.keras import Sequential,optimizers,layers,datasets# 训练测试模型gpus = tf.config.experimental.list_physical_devices('GPU')tf.config.原创 2022-04-18 11:31:19 · 1003 阅读 · 0 评论 -
Tensorflow(二十五) —— 自定义层与网络结构
Tensorflow(二十五) —— 自定义层与网络结构1. 自定义Dense案例2. 自定义model实例1. 自定义Dense案例# 自定义Dense案例class MyDense(keras.layers.Layer): def __init__(self,inp_dim,outp_dim): super(MyDense,self).__init__() self.kernel = self.add_weight("w",[inp_dim,outp_d原创 2022-04-17 13:23:38 · 952 阅读 · 0 评论 -
Tensorflow(二十四) —— keras实用API
Tensorflow(二十四) —— keras实用API1. Metrics2. compile & fit3. evaluate4. predict & predict_classes1. Metricsimport tensorflow as tffrom tensorflow.keras import optimizers,layers,Sequential,metrics,datasets# ************** Metrics1、build a meter原创 2022-04-17 13:23:25 · 1007 阅读 · 0 评论 -
Tensorflow(二十三) —— TensorBoard
Tensorflow(二十三) —— TensorBoard1. install2. 使用步骤3. 实战1. installpip install tensorboard2. 使用步骤# ************** step1、cmd ==> tensorboard --logdir logs(文件夹名)2、open url ==> http://localhost:60063、build summary: current_time = datetime.datet原创 2022-04-17 13:23:12 · 360 阅读 · 0 评论 -
Tensorflow(二十二) —— 函数优化
Tensorflow(二十二) —— 函数优化import tensorflow as tfimport numpy as npimport matplotlib.pyplot as plt from matplotlib import cmdef my_func(x): return (x[0]**2 + x[1]-11)**2 + (x[0] + x[1]**2 - 7)**2x = np.linspace(-6,6,500)y = np.linspace(-6,6,500)原创 2022-04-17 13:22:52 · 299 阅读 · 0 评论 -
Tensorflow(二十一) —— 单输出和多输出感知机及其梯度
Tensorflow(二十一) —— 单输出和多输出感知机及其梯度1. 单输出感知机2. 多输出感知机1. 单输出感知机# ***************** 单输出感知机x = tf.random.normal([1,3])y = tf.convert_to_tensor([1])w = tf.ones([3,1])b = tf.ones(1)with tf.GradientTape() as tape: tape.watch([w,b]) logits = tf.nn原创 2022-04-17 13:22:32 · 405 阅读 · 0 评论 -
Tensorflow(二十) —— 激活函数及其梯度
Tensorflow(二十) —— 激活函数及其梯度1. sigmoid / logistic2. Tanh 在RNN中用得多3. relu函数1. sigmoid / logistic"""该函数的致命缺陷:梯度长时间得不到更新"""x = tf.Variable(tf.linspace(-10.,10.,100))with tf.GradientTape() as tape: y = tf.nn.sigmoid(x)[dy_dx] = tape.gradient(y,[x])原创 2022-04-17 13:22:08 · 413 阅读 · 0 评论 -
Tensorflow(十九) —— 梯度下降简介
Tensorflow(十九) —— 梯度下降简介1. Auoto Grad2. 一阶导数3. GradientTape(persistent = True)4. 计算二阶导数1. Auoto Grad# ****************** Auoto Gradwith tf.GradientTape() as tape: build computation graph loss = f(x)[w_grad] = tape.gradient(loss,[w])2. 一阶导数原创 2022-04-17 13:21:53 · 418 阅读 · 0 评论 -
Tensorflow(十八) —— 误差计算
Tensorflow(十八) —— 误差计算1. 主要方式2. MSE3. cross entropy loss4. MSE的缺点5. 直接对logits计算交叉熵损失函数1. 主要方式1、MSE2、cross entropy loss3、Hinge lossΣmax(0,1-y*h(x))2. MSE# ******************* MSEy = tf.constant([0,1,3,2,1])y = tf.cast(tf.one_hot(y,depth = 4),dtyp原创 2022-04-17 13:21:38 · 405 阅读 · 0 评论 -
Tensorflow(十七) —— 网络的输出方式
Tensorflow(十七) —— 网络的输出方式1. 主要方式2. y∈[0,1] sigmod3. y∈[0,1] Σy = 1 softmax4. y∈[-1,1] tanh1. 主要方式1、y∈R2、y∈[0,1]3、y∈[0,1] Σy = 14、y∈[-1,1]2. y∈[0,1] sigmod# ************ y∈[0,1] sigmoda = tf.linspace(-6.,6.,10)b = tf.sigmoid(a)print("a:",a.nump原创 2022-04-17 13:21:09 · 685 阅读 · 0 评论 -
Tensorflow(十六) —— 全连接层
Tensorflow(十六) —— 全连接层1. 全连接层2. Multi Layers1. 全连接层import tensorflow as tffrom tensorflow import keras# **************** fully connected layersx = tf.random.normal([1000,784])net = keras.layers.Dense(512)out = net(x)print("out:",out.shape)prin原创 2022-04-16 14:10:46 · 2341 阅读 · 0 评论 -
Tensorflow(十五) —— Tensor数据加载实战
Tensorflow(十五) —— Tensor数据加载实战1. 解决tensorflow输出无关信息问题2. 加载数据并转换类型3. 数据分割成不同batch4. 定义权值和偏置为:Tensor类型的Variable5. 参数训练1. 解决tensorflow输出无关信息问题import tensorflow as tfimport os from tensorflow.keras import datasetsfrom tensorflow import keras# 解决tensorf原创 2022-04-16 14:08:25 · 673 阅读 · 2 评论 -
Tensorflow(十四) —— 数据集加载
Tensorflow(十四) —— 数据集加载1. 主要方法2. keras.datasets3. mnist4. cifar10/1005. imdb6. tf.data.Dataset.from_tensor_slice7. db.shuffle8. db.map9. db.batch10. db.repeat11. 实例1. 主要方法1、keras.datasets2、tf.data.Dataset.from_tensor_slicesshufflemapbatchrepeat2.原创 2022-04-16 14:05:01 · 1073 阅读 · 0 评论 -
Tensorflow(十三) —— Tensor的进阶操作方法
Tensorflow(十三) —— Tensor的进阶操作方法1. 主要方法2. tf.where(tensor)3. tf.where(condition,A,B)4. tf.scatter_nd5. meshgrid方法6. 绘制等高线图1. 主要方法1、where 取出元素为True的坐标2、scatter_nd3、meshgrid2. tf.where(tensor)# ************** tf.where(tensor)"""可结合gather_nd操作"""a原创 2022-04-16 13:59:14 · 549 阅读 · 0 评论 -
Tensorflow(十二) —— Tensor的限幅
Tensorflow(十二) —— Tensor的限幅1. 主要方法2. clip_by_value方法3. relu函数4. clip_by_norm方法5. Gradient Clipping方法6. Gradient Clipping 实战 (不设置梯度限幅)7. Gradient Clipping 实战 (设置梯度限幅)1. 主要方法1、clip_by_value2、relu3、clip_by_norm4、gradient clipping2. clip_by_value方法# *原创 2022-04-16 13:55:32 · 401 阅读 · 0 评论 -
Tensorflow(十一) —— Tensor的填充与复制
Tensorflow(十一) —— Tensor的填充与复制1. 主要方法2. pad方法3. tile方法4. tilt 与 broadcast_to的区别1. 主要方法1、pad2、tile3、broadcast_to2. pad方法import numpy as npimport pandas as pdimport tensorflow as tf"""tf.pad(a,[[a11,a12],[a21,a22],...)指定每个轴的前面填充a11条数据,后面填充a12条数据原创 2022-04-16 13:50:02 · 1954 阅读 · 0 评论 -
Tensorflow(十) —— Tensor的排序
Tensorflow(十) —— Tensor的排序1. 主要方法2. sort与argsort3. top_k4. Top_k用于Accuracy5. top_k 用于accuracy 的完整案例1. 主要方法1、sort / argsort2、top_k :tf.math.top_k3、top5 用于ACC2. sort与argsortimport numpy as npimport pandas as pdimport tensorflow as tf# **********原创 2022-04-16 13:47:18 · 1873 阅读 · 0 评论 -
Tensorflow(九) —— 数据统计的方式
Tensorflow(九) —— 数据统计的方式1. 主要方法2. 向量的范数3. reduce_min、reduce_max、reduce_mean4. argmax、argmin5. tf.equal6. tf.unique1. 主要方法1、tf.norm(范数)2、tf.reduce_min tf.reduce_max3、tf.argmax tf.argmin4、tf.equal Tensor的比较(元素比较)5、tf.unique Tensor的独特值2. 向量的原创 2022-04-16 13:42:51 · 666 阅读 · 0 评论 -
Tensorflow(八) —— Tensor的合并与切割
Tensorflow(八) —— Tensor的合并与切割1. 主要操作方式2. concat操作3. stack操作4. concat 与 stack 的区别5. unstack & stack 为可逆操作6. split操作1. 主要操作方式1、tf.concat # 常用2、tf.split # 常用3、tf.stack # 常用4、tf.unstack2. concat操作指定axis则沿该轴进行拼接# ********************* conca原创 2022-04-16 13:37:41 · 1916 阅读 · 0 评论 -
Tensorflow(七) —— 前向传播的实战
Tensorflow(七) —— 前向传播的实战1. 解决tensorflow输出无关信息问题2. 加载数据并转换类型3. 数据分割成不同batch4. 定义权值和偏置为:Tensor类型的Variable5. 定义学习率6. 权值训练1. 解决tensorflow输出无关信息问题import tensorflow as tfimport os from tensorflow.keras import datasetsfrom tensorflow import keras# 解决tens原创 2022-04-16 13:29:25 · 488 阅读 · 0 评论 -
Tensorflow(六) —— Tensor如何进行数学运算
Tensorflow(六) —— 数学运算1 operation type1.1 element wise (元素级运算)1.2 matrix wise1.3 dim wise2 + - * / // %3 tf.math.log 、 tf.exp4 pow、sqrt5 @ 、 matmul1 operation type1.1 element wise (元素级运算)+ - * /1.2 matrix wise矩阵相乘并行计算,一次完成多个矩阵相乘[b,3,4]@[b,4,5]相当于原创 2022-04-06 13:17:40 · 577 阅读 · 0 评论 -
Tensorflow(五) —— Tensor的broadcast_to操作
Tensorflow(五) —— broadcast_to1 broadcast_to介绍1.1 key idea1.2how to understand1.3 why broadcasting1.4 broadcastable2 隐式3 显式4 tf.broadcast_to VS tf.tile1 broadcast_to介绍1.1 key ideainsert into 1 dim ahead if neededexpand dims with size 1 to same size即原创 2022-04-06 13:12:25 · 935 阅读 · 0 评论 -
Tensorflow(四) —— Tensor的维度变换
Tensorflow(四) —— 维度变换1 维度变化主要方式2 reshape3 reshape is flexible4 tf.transpose(转置)5 pytorch 和 tensorflow数据互通实例6 expand_dims 增加维度7 squeeze 删除某个位数为1的轴1 维度变化主要方式1、shape ndim2、reshape3、expand_dims squeeze4、transpose5、broadcast_to2 reshapea = tf.rando原创 2022-04-06 13:04:46 · 1708 阅读 · 0 评论
分享