当前位置:   article > 正文

python卷积神经网络库_GitHub - thesouther/cnn_with_numpy: 卷积神经网络(Convolutional Neural Networks, CNN),只使用pyth...

pcnn卷积需要的库

基于python基础库实现卷积神经网络LeNet5

卷积神经网络(Convolutional Neural Networks, CNN),只使用python基础库搭建。

本程序实现为ipynb和py脚本两种,ipynb文件更加易读,所以建议阅读CNNwithNumpy.ipynb文件

简介

本程序只基于Python的numpy库,实现cnn网络Lenet5,并用于在MNIST数据集上进行手写字符识别。

本程序实现了convolution、relu、max_pooling、fc、softmax等层级的前向和后向算法,并在mnist数据集的测试集上在3个epoch就可以实现98% 以上的的准确率。训练时间大概一个小时。

运行与查看

为了方便,本人整理了了notebook形式的文件,记录了运行过程中的中间结果,你可以查看完整版CNN.ipynb文件,或者直接从我的github方便地查看效果。

python文件。进行训练和测试,运行

python run.py

文件目录说明

文件目录树如下:

.

|-- data

| |-- t10k-images-idx3-ubyte.gz # mnist测试数据

| |-- t10k-labels-idx1-ubyte.gz # mnist测试标签

| |-- train-images-idx3-ubyte.gz # mnist训练数据

| `-- train-labels-idx1-ubyte.gz # mnist训练标签

|-- layer

| |-- Convolution.py # 卷积层

| |-- Relu.py # Relu激活函数

| |-- Softmax.py # softmax层

| |-- flatten.py # 将二维数据展开成一维

| |-- full_connection.py #全连接层

| `-- max_pool.py # 池化层

|-- data_helper.py # 载入数据

|-- CNN.py # CNN模型定义类

|-- run.py # 训练和测试代码

|-- 完整版CNN.ipynb # 完整的CNN代码,可以方便查看

|-- README.md

运行环境

python = 3.6.10

numpy = 1.16.0

Reference

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/261673
推荐阅读
相关标签
  

闽ICP备14008679号