看图闪电入门Numpy,Numpy数据结构,David9的np.array日常

Numpy无疑是入门数据科学或深度学习几乎必学的工具,感谢网友和David一起翻译改编了这篇blog帮助大家对numpy闪电入门和整理:

使用numpy包的时候一般是从下面这句代码开始的:

import numpy as np

####创建数组
使用np.array()函数,这个函数的参数可以是列表,来创建一个nunpy数组

还可以通过其他的方式创建数组,并初始化。比如说ones(), zeros(), random.random()

一旦我们创建了数组,我们就可以对它们进行操作了。

####数组操作
首先创建两个数组,并将它们分别命名为data, ones:

将两个数组相加,它这个操作会对对应位置的数组元素进行相加并赋值到新的数组:
不仅仅可以进行加法操作,还可以进行其他的运算:我们还可以进行数组和标量之间的运算,这种形式叫做广播

如果要快速合并两个数组(或矩阵),vstackhstack是很好的工具,

vstack是以”行”的方式合并,hstack是以”列”的方式合并

还可以同时合并多个array或矩阵: 继续阅读看图闪电入门Numpy,Numpy数据结构,David9的np.array日常

定向Dropout和L0正则,for.ai与Hinton老爷子的神经网络蒸馏、剪枝与量化新研究,稀疏化神经网络,控制参数间互信息

“信息”技术的开垦只是刚刚开始,对于AI工作者也许更恰当的一个名称是“信息控制师” — David 9

人脑可以随时拿出一个模型处理周围信息,而不是等待别人告诉它怎么处理信息。现在所谓”深度学习”的风口,其实都只能归为信息科技。这种需要人工告诉模型如何处理信息的智能,David姑且称为“信息控制智能”。

cnn做了自动的信息解构提取,rnn时序间的信息收集提取,gan把模糊化的loss信息学习提取,包括今天要聊到的DropoutL0正则都是对网络学到的内部信息做了控制。

如果大家知道神经网络蒸馏、剪枝或者模型压缩和量化,大家愈发会感到:这些就是实实在在的“信息工具”而已。拿L0正则举例(其实L1, L2正则都类似),L0能做到的只是把所有的非0权重以同样的力量拉扯到0,使得网络学到的参数信息更稀疏,L1, L2不同之处只是对于不同大小的参数θ ,拉扯的力量不同而已

来自:https://arxiv.org/abs/1712.01312

同样,for.ai与Hinton老爷子提出的定向Dropout(targeted-dropout也可以用来压缩模型(但不丢失信息或少丢失信息)。“彩票假设”的提出者们认为,一个密集、随机初始化的前向神经网络都可以找到一个子网络(所谓的彩票),能够比较稀疏并且和原网络差别极小的性能。 继续阅读定向Dropout和L0正则,for.ai与Hinton老爷子的神经网络蒸馏、剪枝与量化新研究,稀疏化神经网络,控制参数间互信息