tf.losses.mean_squared_error函数解读

  • 数据
  • tf.losses.mean_squared_error函数用于求MSE
  • 验证
  • 结论

数据

在实际情况中,假设我们训练得到的label是类似(a, b)的二维坐标点,这里我们用变量labels代表数据原有的标签,用pred代表训练得到的输出,数据用array,np.float32的格式表示。

import numpy as np#Original labels for data
labels = np.array([[-3.087136  ,  0.773723  ],[ 0.5237208 , -2.3611534 ],[ 0.12045471,  0.23965162],[ 2.037887  ,  2.9082034 ],[ 1.630416  ,  4.253656  ],[ 1.581672  , -0.90316653],[ 2.1582973 ,  5.3201227 ],[-0.6064952 , -0.3148525 ],[-3.6611197 ,  1.844364  ],[-2.095178  , -4.3820047 ]], dtype=np.float32)#Predicted result from the model
pred = np.array([[-3.6970375 ,  0.61645496],[ 0.5356902 , -2.699189  ],[ 0.53962135,  0.28041327],[ 2.0638177 ,  2.8185306 ],[ 1.5602324 ,  4.3334904 ],[ 1.8943653 , -1.141346  ],[ 2.102385  ,  5.4475656 ],[-0.88059306, -0.72823447],[-4.00045   ,  1.6507398 ],[-2.4099615 , -4.7156816 ]], dtype=np.float32)

tf.losses.mean_squared_error函数用于求MSE

我们用以下代码求MSE:

import tensorflow as tf#Definition
y = tf.placeholder("float32", [None, 2])
x = tf.placeholder("float32", [None, 2])
cost = tf.losses.mean_squared_error(labels=y , predictions=x, weights=1)#Initializer
init = tf.global_variables_initializer()#Session
with tf.Session() as sess:sess.run(init)loss = sess.run([cost], feed_dict={y: labels, x: pred})print(loss)

运行以上代码,我们得到了这样的输出:

[0.07457263]

接下来我们自己写一个函数来验证tf.losses.mean_squared_error()函数的功能。

验证

这里因为楼主知道数据是二维的,所以写得简单了一些,主要目的是为了让大家更直观理解函数性质。

def simulated_mean_squared_error(x, y): #For two dimensional datam=(x-y)**2error=0count=0for i in m:  #这里因为楼主提前知道数据是二维的,所以写了两个for loopfor j in i:error+=jcount=count+1error=error/countreturn error

然后根据我们的数据,得出模拟的结果:

loss = simulated_mean_squared_error(pred, labels)
print(loss)
0.07457262602765695

Exactly, 得到了相同的result。

结论

所以,根据比较我们可知,对于类似的像我们这里用的10*2维度的数据来说,tf.losses.mean_squared_error函数的功能就是先对于给定的两组数据做差,然后再进行elementwise的平方,最后进行elementwise相加并除以总element的个数(比如在此例中是除以20)。

tf.losses.mean_squared_error函数浅析相关推荐

  1. distance在函数 int_TensorFlow函数:tf.losses.cosine_distance

    tf.losses.cosine_distance函数tf.losses.cosine_distance( labels, predictions, axis=None, weights=1.0, s ...

  2. Tensorflow BatchNormalization详解:4_使用tf.nn.batch_normalization函数实现Batch Normalization操作...

    使用tf.nn.batch_normalization函数实现Batch Normalization操作 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 吴恩达deeplearnin ...

  3. tf.nn.embedding_lookup函数的用法

    tf.nn.embedding_lookup函数的用法主要是选取一个张量里面索引对应的元素.tf.nn.embedding_lookup(params, ids):params可以是张量也可以是数组等 ...

  4. Tensorflow利用函数修饰符@tf.custom_gradients自定义函数梯度

    Tensorflow学习笔记(1) 利用函数修饰符@tf.custom_gradients自定义函数梯度_寂乐居士的博客-CSDN博客_tf.custom_gradient python中的修饰符以及 ...

  5. tf.nn.moments( )函数的使用

    先来看个例子吧. 测试代码: x = np.arange(12,dtype=np.float32).reshape(3,4) a = tf.nn.moments(tf.constant(x),[0]) ...

  6. OpenCV学习笔记(5)_ ellipse绘制函数浅析

    OpenCV学习笔记(5)_ ellipse绘制函数浅析 文章目录 OpenCV学习笔记(5)_ ellipse绘制函数浅析 1. ellipse第一种重载--绘制椭圆弧 1.1 函数原型 1.2 参 ...

  7. python中divmod的意思是_python 中的divmod数字处理函数浅析

    divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: a,b可以为数字(包括复数) 版本: 在python2 ...

  8. 【TensorFlow】(四)tf.feature_column.embedding_column()函数

    1.作用 将sparse/categrical特征转化为dense 向量.one-hot产生的向量,易造成数据的稀疏化,对于推荐系统而言,大维度的稀疏数据对于结果的影响较大,因此我们考虑使用embed ...

  9. tf.image.sample_distorted_bounding_box函数

    此函数为图像生成单个随机变形的边界框.函数输出的是可用于裁剪原始图像的单个边框.返回值为3个张量:begin,size和 bboxes.前2个张量用于 tf.slice 剪裁图像.后者可以用于 tf. ...

最新文章

  1. Replication--使用MSlogreader_history查看日志读起的延迟和事务命令
  2. Django框架是什麼?
  3. opensource项目_最佳Opensource.com:开放组织
  4. 两个孤寡老人不领证同居在一起合适吗?
  5. 如何打造程序员专属聊天室?
  6. MyBatsi-Mapper映射文件
  7. axi dma 寄存器配置_「STM32」DMA采集单通道,简单数据分析
  8. PAT 1103 Integer Factorization[难]
  9. js中的extend
  10. html左边图片右边文字_有了这些网站,不用PS也可以做出文字云效果
  11. JavaScript之多小球非对心弹性碰撞
  12. PS 工具获取:Photoshop CS6超级免安装精简版来临!不到200M!
  13. vmware反复触发numlock问题
  14. php 取出最后一数组元素,PHP取出数组中最后一个元素的方法汇总
  15. Android Gmail 邮件签名客制化需求
  16. 人工智能实验报告 牧师与野人渡河 知识表示方法
  17. 对3800x初步超频总结
  18. 关于采样率位深码率无损的一些心得
  19. Rocket简介(1)
  20. android view设置按钮颜色_建议收藏!最全 Android 常用开源库总结!

热门文章

  1. ps html 优化,优化 Photoshop 的性能
  2. 微信小程序个人中心页面开发
  3. 关于python使用pandas导入dat数据文件的方法(可导入任意dat数据文件和csv数据文件)
  4. android倒影效果,Android 设置图片倒影效果
  5. wps html转换成pdf文件,wps怎么转换成pdf
  6. 美国航空发动机发展经验,给中国的启示!
  7. matlab系统稳态误差终值,Matlab求解给定系统稳态误差
  8. 路径的单线杠双斜杠区别
  9. 显卡算力排行_RTX3090 时代最新GPU选购指南:哪款显卡配得上我的炼丹炉?
  10. 纽约州立大学石溪分校计算机专业排名,纽约州立大学石溪分校排名怎么样?