neural networks

神经网络的原理与使用

激活函数 - 非线性矫正

神经网络的参数设置

help(MLPClassifier)

class MLPClassifier(sklearn.base.ClassifierMixin, BaseMultilayerPerceptron) | MLPClassifier(hidden_layer_sizes=(100,), activation='relu', *, solver='adam', alpha=0.0001, batch_size='auto', learning_rate='constant', learning_rate_init=0.001, power_t=0.5, max_iter=200, shuffle=True, random_state=None, tol=0.0001, verbose=False, warm_start=False, momentum=0.9, nesterovs_momentum=True, early_stopping=False, validation_fraction=0.1, beta_1=0.9, beta_2=0.999, epsilon=1e-08, n_iter_no_change=10, max_fun=15000)

增加模型复杂度的4种方法

增加隐藏层node数

隐藏层增加到2层

激活函数 activation='tanh'

提高 alpha 值(默认 0.0001)

手写数字识别 8x8(泛化差)

MNIST 数据集手写体数字识别,就像入门程序猿写 Hello world 一样,是非常基础的必修课。

载入数据

预处理

训练 MLP 神经网络

测试

手写体识别 28x28

下载数据

预处理

训练

测试

还很很傻,人眼能是别的,该网络不一定能识别