
深度学习
Echo-z
这个作者很懒,什么都没留下…
展开
-
神经网络中怎么解决梯度消失问题
在深度网络中,网络参数的学习是通过反向传播的链式求导法则来求 Loss 对某个参数 的偏导数,然后进行参数更新的。因此造成梯度消失的原因主要有两个:1.当网络层 数很深,而当前的参数所在层又靠近网络的输入时,求导链就会非常长;2.如果其中的某些中间结果的值很小,并经过链式的累成作用,最终求得的梯度值就会接近于零,而导致参数得不到更新。可通过以下方法解决梯度消失的问题:1. 选用合适的激活函数。比如 ReLU 或者 Leaky ReLU。因为像 Sigmoid 和 Tanh 这样的激活函数,会.原创 2021-07-14 22:29:47 · 8916 阅读 · 0 评论 -
Sigmoid与Softmax的应用与不同
一、Sigmoid1、函数公式:公式中,z是单个原始输出值,如原始输出值为[-0.5,0.3, 1.5, -2.0],则z1=-0.5,z2=0.3,z3=1.5,z4=-2.0;sigmoid函数连续,光滑,严格单调,以(0,0.5)中心对称,是一个非常良好的阈值函数。sigmoid函数把一个实数压缩到(0,1),当z无穷大时,函数值趋于1,反之趋于0;我们知道(0,1)与概率值的范围是相对应的,这样sigmoid函数就能与一个概率分布联系起来了。我们经常说的...原创 2021-06-14 11:13:23 · 921 阅读 · 0 评论 -
DeepFM:用预训练权重去初始化embedding weights和frozen embedding weights
Usetf.initializers.identity()to set theembeddings_initializerofSparseFeat,and settrainable=Falseto frozen embedding weights.import numpy as npimport tensorflow as tffrom deepctr.models import DeepFMfrom deepctr.feature_column import SparseFeat...原创 2021-03-12 11:14:38 · 920 阅读 · 1 评论 -
DeepFM保存、加载模型和权重
# To save/load weights,you can write codes just like any other keras modelsmodel = DeepFM()model.save_weights('DeepFM_w.h5')model.load_weights('DeepFM_w.h5')# To save/load models,just a little differentfrom tensorflow.python.keras.models import sa.原创 2021-03-12 11:02:58 · 808 阅读 · 0 评论 -
提取DeepFM的embedding vectors
feature_columns = [SparseFeat('user_id',120,),SparseFeat('item_id',60,),SparseFeat('cate_id',60,)]def get_embedding_weights(dnn_feature_columns,model): embedding_dict = {} for fc in dnn_feature_columns: if hasattr(fc,'embedding_name'): .原创 2021-03-12 10:56:30 · 502 阅读 · 1 评论 -
神经网络常用的sigmoid和softmax激活函数
sigmoid函数(也叫逻辑斯谛函数): 引用wiki百科的定义: A logistic function or logistic curve is a common “S” shape (sigmoid curve). 其实逻辑斯谛函数也就是经常说的sigmoid函数,它的几何形状也就是一条sigmoid曲线。sigmoid激活函数(也叫logistic_activate...原创 2020-03-24 14:35:38 · 2466 阅读 · 0 评论