Pytorch 0.4 Minist 从零开始构建Logistic模型:
本文将使用普通的矩阵运算实现一个简单的逻辑回归网络,本质上就是单神经元网络 对Minist数据集进行分类,
接着手动实现梯度下降代码,更新网络参数,
然后再从上至下,一步一步用Pytorch 模块重构网络, 逐步添加更多PyTorch功能
便于更深刻的理解 Pytorch模块的背后实现.
1.MNIST data setup
1).路径与数据集
from pathlib import Path
DATA_PATH = Path('data')
PATH = DATA_PATH/'mnist'
PATH.mkdir(parents=True, exist_ok=True)
2).下载数据集至路径mnist文件夹,若已手动下载,可跳过这一步
import requests
URL='http://deeplearning.net/data/mnist/'
FILENAME='mnist.pkl.gz'
if not (PATH/FILENAME).exists():
content = requests.get(URL+FILENAME).content
(PATH/FILENAME).open('wb').write(content)
3).解析数据集
import pickle,gzip
with gzip.o