常见函数
1. np.flatnonzero()
idxs = np.flatnonzero(y_train == y)
此处flatnonzero函数是输入一个矩阵,返回扁平化后非零函数的位置。举个例子:
k = np.array([[20,10,5],[1,2,3]])
temp = np.flatnonzero(k)
print(temp)
输出为
[0 1 2 3 4 5]
而对于作业1中的
idxs = np.flatnonzero(y_train == y)
则会返回y_train == y的元素位置。
2. matplotlib.pyplot.subplot(a,b,c)
意为要画一个a*b大小的图,现在要画第c个图了。这里需要注意c从1开始而非从0开始。
3.mask
在一个50000x32x32x3的矩阵中蒙上一个1000的mask,则得到一个1000x32x32x3的矩阵。比如在231n作业中X_train为一个50000x32x32x3的矩阵,但在进行操作
num_training = 5000
mask = range(num_training)
X_train = X_train[mask]
后,则变为一个5000x32x32x3的矩阵。
4.np.shape reshape
shape返回当前数组的大小
reshape拉伸数组操作
np.reshape(a,b)
把a数组水平拉到b长度
np.reshape(a,(b,-1))
把a拉伸到b*x的大小。
接上例中
X_train = np.reshape(X_train, (X_train.shape[0], -1))
则会得到5000*3072的矩阵。