每天进步一点点-深度学习入门-基于Python的理论与实现 (2)
今天要补上两天的
不补了,新手,看的比较慢--
手写识别例子跳过先
思考如何实现数字5的识别
三种方法:


训练数据:学习,寻找最优解
测试数据:评价模型能力.
损失函数:以损失函数为线索寻找自由权重参数,讲解损失函数:https://blog.csdn.net/qq_24753293/article/details/78788844
mini-batch学习:机器学习就是是针对训练数据计算损失函数的值,找出使该值尽可能小的参数,所以如果训练数据有100 个的话,我们就要把这100 个损失函数的总和作为学习的指标。
为何要设定损失函数而不使用目标精度作为指标:关键在于导数不为0,如果以对精度求导,大多数地方导数为0,无法根据导数变化更新值
(具体为啥大多数地方对精度求导会得0我理解的不是很清楚..
书中说的是,值得细微变化并不会引起精度的变化
我理解就是值得变化对于精度不敏感,当值变化很多时,精度才会变化一点,此时需要一个敏感的损失函数,值的每一点变化都能时刻反应值的这一点增减对于损失函数的走向,由此再次细微调节值,两者相互敏感的变化。
好像就这样:损失函数是一个能表达精度又能对值变化敏感(导数敏感)的函数。
)
例1:损失函数为均方误差


import numpy as np
#均方误差会计算神经网络的输出和正确解监督数据的各个元素之差的平方,再求总和。
# 经过训练后,出现0-9的期望
y=[0.1,0.05,0.6,0.0,0.05,0.1,0.0,0.1,0.0,0.0]
# 训练后的期望与实际期望的差值进行一定运算,其值越小越准确
def mean_squared_error(y,t):
return 0.5*np.sum((y-t)**2)
# 测试数据,测试数据结果为2,即实际期望
t=[0,0,1,0,0,0,0,0,0,0]
print(mean_squared_error(np.array(y),np.array(t)))
# 测试数据,测试数据结果为7,即实际期望
t=[0,0,0,0,0,0,1,0,0,0]
print(mean_squared_error(np.array(y),np.array(t)))
每天进步一点点-深度学习入门-基于Python的理论与实现 (2)的更多相关文章
- 学习《深度学习入门:基于Python的理论与实现》高清中文版PDF+源代码
入门神经网络深度学习,推荐学习<深度学习入门:基于Python的理论与实现>,这本书不来虚的,一上来就是手把手教你一步步搭建出一个神经网络,还能把每一步的出处讲明白.理解神经网络,很容易就 ...
- 给深度学习入门者的Python快速教程 - 番外篇之Python-OpenCV
这次博客园的排版彻底残了..高清版请移步: https://zhuanlan.zhihu.com/p/24425116 本篇是前面两篇教程: 给深度学习入门者的Python快速教程 - 基础篇 给深度 ...
- 给深度学习入门者的Python快速教程 - numpy和Matplotlib篇
始终无法有效把word排版好的粘贴过来,排版更佳版本请见知乎文章: https://zhuanlan.zhihu.com/p/24309547 实在搞不定博客园的排版,排版更佳的版本在: 给深度学习入 ...
- 深度学习入门实战(二)-用TensorFlow训练线性回归
欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者 :董超 上一篇文章我们介绍了 MxNet 的安装,但 MxNet 有个缺点,那就是文档不太全,用起来可能 ...
- 给深度学习入门者的Python快速教程
给深度学习入门者的Python快速教程 基础篇 numpy和Matplotlib篇 本篇部分代码的下载地址: https://github.com/frombeijingwithlove/dlcv_f ...
- 深度学习入门者的Python快速教程 - 基础篇
5.1 Python简介 本章将介绍Python的最基本语法,以及一些和深度学习还有计算机视觉最相关的基本使用. 5.1.1 Python简史 Python是一门解释型的高级编程语言,特点是简单明 ...
- mnist手写数字识别——深度学习入门项目(tensorflow+keras+Sequential模型)
前言 今天记录一下深度学习的另外一个入门项目——<mnist数据集手写数字识别>,这是一个入门必备的学习案例,主要使用了tensorflow下的keras网络结构的Sequential模型 ...
- 深度学习基础-基于Numpy的卷积神经网络(CNN)实现
本文是深度学习入门: 基于Python的实现.神经网络与深度学习(NNDL)以及动手学深度学习的读书笔记.本文将介绍基于Numpy的卷积神经网络(Convolutional Networks,CNN) ...
- 深度学习基础-基于Numpy的多层前馈神经网络(FFN)的构建和反向传播训练
本文是深度学习入门: 基于Python的实现.神经网络与深度学习(NNDL)以及花书的读书笔记.本文将以多分类任务为例,介绍多层的前馈神经网络(Feed Forward Networks,FFN)加上 ...
随机推荐
- NFS服务的安装
NFS服务的安装 1.环境准备 2.安装服务 [root@localhost ~]# yum -y install nfs-utils因为centos7自带了rpcbind,所以不用安装rpc服务,r ...
- 杭电多校第六场-J-Ridiculous Netizens
Problem Description Mr. Bread has a tree T with n vertices, labeled by 1,2,…,n. Each vertex of the t ...
- 2019南昌邀请赛预选赛 I. Max answer (前缀和+单调栈)
题目:https://nanti.jisuanke.com/t/38228 这题题解参考网上大佬的. 程序的L[i],R[i]代表a[i]这个点的值在区间 [L[i],R[i]] 中最小的并且能拓展到 ...
- cd 切换
切换
- vue 使用Animate.css库
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- javascript onclick事件可以调用两个方法吗?
答案是:可以的,onclick事件可以调用多个方法,每个方法之间用分号(:)隔开即可. onclick后面其实是可以写任何代码的,但是一般不建议这么写!! 例:onclick="fun1() ...
- 「CTS2019 | CTSC2019」氪金手游 解题报告
「CTS2019 | CTSC2019」氪金手游 降 智 好 题 ... 考场上签到失败了,没想容斥就只打了20分暴力... 考虑一个事情,你抽中一个度为0的点,相当于把这个点删掉了(当然你也只能抽中 ...
- Android 读取<meta-data>元素的数据
在AndroidManifest.xml中,<meta-data>元素可以作为子元素,被包含在<activity>.<application> .<servi ...
- ASP.NET Core学习——2
Application Startup ASP.NET Core为应用程序提供了处理每个请求的完整控制.Startup类是应用程程的入口(entry point),这个类可以设置配置(configur ...
- 常用的HTTP请求头与响应头
HTTP消息头是指,在超文本传输协议( Hypertext Transfer Protocol ,HTTP)的请求和响应消息中,协议头部分的那些组件.HTTP消息头用来准确描述正在获取的资源.服务器或 ...