L2正则化—tensorflow实现
来源:互联网 发布:网络畅销书排行榜 编辑:程序博客网 时间:2024/06/06 06:37
L2正则化是一种减少过拟合的方法,在损失函数中加入刻画模型复杂程度的指标。假设损失函数是J(θ) ,则优化的是J(θ)+λR(w) ,R(w)=∑ni=0|w2i| 。
在tensorflow中的具体实现过程如下:
#coding:utf-8import tensorflow as tfdef get_weight(shape,lambda): var = tf.Variable(tf.random_normal(shape),dtype=tf.float32) tf.add_to_collection("losses",tf.contrib.layers.l2_regularizer(lambda)(var))#把正则化加入集合losses里面 return varx = tf.placeholder(tf.float32,shape=(None,2))y_ = tf.placeholder(tf.float32,shape=(none,1))#真值batcg_size = 8layer_dimension = [2,10,10,10,1]#神经网络层节点的个数n_layers = len(layer_dimension)#神经网络的层数cur_layer = xin_dimension = layer_dimension[0]for i in range (1,n_layers): out_dimension = layer_dimension[i] weight = get_weight([in_dimension,out_dimension],0.001) bias = tf.Variable(tf.constant(0.1,shape(out_dimension))) cur_layer = tf.nn.relu(tf.matmul(x,weight)) + bias) in_dimension = layer_dimension[i]ses_loss = tf.reduce_mean(tf.square(y_ - cur_layer))#计算最终输出与标准之间的losstf.add_to_collenction("losses",ses_loss)#把均方误差也加入到集合里loss = tf.add_n(tf.get_collection("losses"))#tf.get_collection返回一个列表,内容是这个集合的所有元素#add_n()把输入按照元素相加
阅读全文
3 0
- L2正则化—tensorflow实现
- tensorflow:3.1)add_to_collection和L2正则化
- 【tensorflow 学习】给LSTM加上L2正则化
- [Tensorflow]L2正则化和collection【tf.GraphKeys】
- TensorFlow学习笔记4——正则化方法:L1和L2 regularization、数据集扩增、dropout
- L2正则化方法
- L2 正则化
- L1、L2正则化
- L1 L2正则化
- L1,L2正则化
- L1、L2正则化
- L1、L2正则化
- L1和L2正则化
- L1和L2正则化
- L1以及L2正则化
- tensorflow 实现神经网络带正则化
- 机器学习——正则化 (L1与L2范数)
- 《Deep Learning》学习3——L2、L1正则化
- java基础(4)集合框架(二)
- Codeforces Vasya and Socks
- 3分钟看懂Activity启动流程
- Android 自定义RecyclerView 实现真正的Gallery效果
- Android 实现Edittext 不可编辑形态
- L2正则化—tensorflow实现
- Windows环境中编译opencv3.0同时加入OPENCV_contrib库及解决遇到相关问题
- HttpWebRequest获取网页内容
- theano-xnor-net代码注释4 bnn_utils.py
- 从字符串中找数字 string 中找digits
- 最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器
- React 认知 四 Props 属性
- linux中增加swap分区文件的步骤方法
- spark存储,缓存,断点模块