所有代码数据可在百度云下载:
链接:
https://pan.baidu.com/s/1c31hKLM
密码: 4tpm
所有涉及tensorflow API用法的,均可查看
https://tensorflow.google.cn/api_docs/
下面的代码实现了一个单层感知机(Single Layer Perceptron) y=softmax(wx+b),来处理MNIST手写数字识别问题。
import tensorflow as tf
from input_data import read_data_sets
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '1'
所有代码数据可在百度云下载:链接: https://pan.baidu.com/s/1c31hKLM 密码: 4tpm所有涉及tensorflow API用法的,均可查看https://tensorflow.google.cn/api_docs/下面的代码实现了一个单层感知机(Single Layer Perceptron) y=softmax(wx+b),来处理MNIST手写数字识别
全连接网络,实质上是多层感知器,作为
分类
器出现在应用中。
单层
感知器是一个简单的线性
分类
器,能够处理线性二
分类
问题。
多层感知器由
单层
感知器组合而成,能够处理非线性多
分类
问题。
1.2.1
单层
感知器
结构如下:
计算过程的理解:
求和:s=w1∗x1+w2∗x2+...+w3∗x3s = w1*x1+w2*x2+...+w3*x3s=w1∗x1+w2∗x2+...+
MNIST
数据集
分为训练集,验证集和测试集。 这三个集合中的每一个都包含两个长度相等的向量:
一组数字,写为长度为784的向量。数据集中的数字形状为28x28像素,并表示为向量。 矩阵中的每个像素的值都在0到1之间,其中0表示白色,1表示黑色,而0到1之间的值是灰色阴影。
第一个向量中每个元素的标签:0到9之间的数字,表示图像中的数字。
单层
感知器
分类
算法基于10个感知器。 这10个感知器中的每一个都经过训练以对仅代表一位数字的图像进行
分类
。 例如,第一个感知器将被训练为输出数字0的值1和每隔一个数字的值0。
在成功地训练了每个感知器之后,输入将被馈送到每个感知器,并且班级将由净输入最大的感知器给出。
经过10次迭代,我在测试集上的准确性为87.69%,学习率为0.1。
前馈网络(多层感知器)
输入:784个神经元
隐藏:100个神经元
输出:10个神经元
from keras.datasets import
mnist
from keras.utils import np_utils
from keras.models import Sequential
from keras.layers import Dense
from keras.optimizers import SGD
#1、载入数据
(x_train,y_train),(x_test,y_test) =
mnist
.load_data()
#2、数据预处理
李航《统计学习方法》第三章——用Python
实现
KNN算法(
MNIST
数据集)
李航《统计学习方法》第四章——用Python
实现
朴素贝叶斯
分类
器(
MNIST
数据集)
最近在读NLP相关论文,发现最新的NLP基本都是利用机器学习的方法对自然语言进行处理,于是想要多了解了解机器学习的知识。看到很多人推荐李航博士的《统计学习方法》一书,于是打算以此书作为机器学习入门教