Kera之父Python深度学习笔记(二)神经网络的数学基础

一些说明:
机器学习中,分类问题中的某个类别叫作类(class),数据点叫作样本(sample),某个样本对应的类叫作标签(label)
在该学习过程中用到MINIST数据集。具体请参考https://www.jianshu.com/p/d282bce1a999

神经网络的数据表示

深度学习和机器学习中多用多维Numpy数组来存储数据,即张量(tensor)。
张量是一种数据容器(因为常常存储数据,所以也可以叫作 数值容器)。

标量(0D张量)

仅包含一个数字
维数为0

//导入numpy源
import numpy as np
>>x = np.array(12)
>>x

向量(1D张量)

包含一组数字,相当于一个行向量

>>x = np.array([12, 3, 4, 16])
>>x

矩阵(2D张量)

矩阵的行为张量的第一个轴,列为第二个轴。

>>x = np.array([[5, 3, 26, 0],
		[6, 8, 12, 7],
		[45, 7, 2, 1]])
>>x

3D张量以及更高维张量

将多个矩阵组成一个新的数组,即可得到3D张量,以此类推得到更高维的张量。
ps:深度学习通常处理的是0D到4D的张量,处理视频会用到5D。
下图帮助理解3D张量

在这里插入图片描述

>>x = np.array([[[1, 2, 3, 4],
		 [5, 6, 7, 8]],
		[[7, 8, 9, 0],
		 [12, 3, 6, 8]]])
>>x

下图帮助理解4D张量
在这里插入图片描述

关键属性

轴的个数(阶数):即张量的维数(Numpy库中叫ndim)
形状:是一个整数元组,表示张量每一个轴的元素个数(Numpy库中叫shape)
数据类型:张量中所包含数据的类型,如uint8(Numpy库中为dtype)·

在Numpy中操作张量

简单介绍一下张量切片
ex:选择train_images[*]中的第10—100个数字(不含第100个)装在形状为(90, 28, 28)形状的数组中。

>>>my_slice = train_images[10:100]
>>>print(my_slice.shape)
(90, 28, 28)

等效的算法还有

>>>my_slice = train_images[10:100, :, :]

以及

>>>my_slice = train_image[10:100, 0:28, 0:28]

一般而言,可以沿着张量的每个轴在任意两个索引之间选择
接上面28×28的例子
在所有图像的右下角选出14×14的像素区域
my_slice = train_images[:, 14:, 14:,]

数据批量的概念

深度学习通常将数据拆分成小批量来处理。
所有张量数据的第一个轴叫作批量轴(0轴),均为样本轴。
具体看minist的一个批量

batch = train_images[:128]
//批量大小为128
//下一个批量
batch = train_images[128:256]
//第n个批量 注:索引从0开始
batch = train_images[128*n:128*(n+1)]

现实世界中的数据张量

向量(2D):(samples,features)
时间序列数据或序列数据(3D):(samples, timesteps,features)
图像(4D):(samples,height,width,channels)或(samples,channels,height,width) 后文解释
视频(5D):(samples,frames,height,width,channels)或(samples,frames,channels,height,width)

向量数据

第一个轴样本轴
第二个轴特征轴
通常数据集的样本数即为第一个轴的量,每个样本所包含的值的个数就是特征轴的量。

时间序列数据和序列数据

时间轴始终是第二个轴

图像数据

3 dimensions:高度、宽度、颜色深度
下图为图像张量组成的4D张量
在这里插入图片描述

视频数据

帧:3D
一系列帧:4D
批量视频组:5D

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值