1. 简单非线性关系数据集测试(XOR):

X—>y
00–>0
01–>1
10–>1
11–>0

调用上节课的神经网络程序,实现异或预测

from NeuralNetwork import NeuralNetwork
import numpy as npnn = NeuralNetwork([2,2,1],'tanh')
X = np.array([[0,0],[0,1],[1,0],[1,1]])
y = np.array([0,1,1,0])
nn.fit(X,y)
for i in [[0,0],[0,1],[1,0],[1,1]]:print(i,nn.predict(i))

预测结果

[0, 0] [-0.00189884]
[0, 1] [ 0.99843157]
[1, 0] [ 0.99831886]
[1, 1] [ 0.01177705]

2. 手写数字识别:

import numpy as np
from sklearn.datasets import load_digits
from sklearn.metrics import confusion_matrix,classification_report
from sklearn.preprocessing import LabelBinarizer
from sklearn.cross_validation import train_test_split
from NeuralNetwork import NeuralNetworkdigits = load_digits()
X = digits.data
y = digits.target
X -= X.min()
X /= X.max()nn = NeuralNetwork([64,100,10],'logistic')
X_train,X_test,y_train,y_test = train_test_split(X,y)
labels_train = LabelBinarizer().fit_transform(y_train)
labels_test = LabelBinarizer().fit_transform(y_test)
print("start fitting")
nn.fit(X_train,labels_train,epochs=3000)
predictions = []
for i in range(X_test.shape[0]):o = nn.predict(X_test[i])predictions.append(np.argmax(o))
print(confusion_matrix(y_test,predictions))
print(classification_report(y_test,predictions))

预测结果

start fitting
[[42  0  0  0  0  0  0  0  0  0][ 0 36  0  0  0  0  1  0  4  3][ 0  0 41  0  0  0  0  1  1  0][ 0  0  1 45  0  1  0  1  1  3][ 1  3  0  0 40  0  0  0  0  1][ 0  0  0  0  1 43  0  0  0  1][ 0  0  0  0  0  0 45  0  1  0][ 0  0  0  0  0  0  0 46  1  0][ 0  2  0  0  0  0  0  0 40  1][ 0  1  0  0  0  0  0  1  0 41]]precision    recall  f1-score   support0       0.98      1.00      0.99        421       0.86      0.82      0.84        442       0.98      0.95      0.96        433       1.00      0.87      0.93        524       0.98      0.89      0.93        455       0.98      0.96      0.97        456       0.98      0.98      0.98        467       0.94      0.98      0.96        478       0.83      0.93      0.88        439       0.82      0.95      0.88        43avg / total       0.94      0.93      0.93       450

第15节--神经网络应用--异或判断、手写数字识别相关推荐

  1. 深度学习-Pytorch:项目标准流程【构建、保存、加载神经网络模型;数据集构建器Dataset、数据加载器DataLoader(线性回归案例、手写数字识别案例)】

    1.拿到文本,分词,清晰数据(去掉停用词语): 2.建立word2index.index2word表 3.准备好预训练好的word embedding 4.做好DataSet / Dataloader ...

  2. 模式识别和机器学习实战-K近邻算法(KNN)- Python实现 - 约会网站配对效果判断和手写数字识别

    文章目录 前言 一. k-近邻算法(KNN) 1.算法介绍 2.举个例子--电影分类 3.步骤描述 4.来了--代码实现 二.实战之约会网站配对效果判断 1.导入数据 2.分析数据 3.数据归一化 4 ...

  3. 学习笔记CB009:人工神经网络模型、手写数字识别、多层卷积网络、词向量、word2vec...

    人工神经网络,借鉴生物神经网络工作原理数学模型. 由n个输入特征得出与输入特征几乎相同的n个结果,训练隐藏层得到意想不到信息.信息检索领域,模型训练合理排序模型,输入特征,文档质量.文档点击历史.文档 ...

  4. Neural Networks and Deep Learning读书笔记--神经网络应用:手写数字识别

    神经网络应用于MNIST数据手写数字识别 加载MNIST数据,用下面所描述的一小段辅助程序mnist_loader.py来完成.用于存储MNIST数据的数据结构在文档字符串中进行了描述-它是简单的内容 ...

  5. Tensorflow实现简单的手写数字神经网络模型

    1.全连接层直接实现手写数字神经网络 import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_dat ...

  6. 全站最详细的Python numpy 搭建全连接神经网络模型教程(理论计算+代码实现)(不止能预测手写数字数据,准确率93.21%)

    1.引言 本文构建的全连接神经网络模型结构图如上.其中中间隐藏层的数量以及各层(输入层.隐藏层.输出层)的神经单元数量均可 自由设置,本文构造的神经网络并不是专门为识别手写数字而写死的,而是可以根据 ...

  7. python正则表达式判断数字_Python机器学习之手写数字辨识及正则表达式

    学习与预测 在前面,我们已经将digits数据集中的图像读取出来,并且使用matplotlib库绘制出了一张数据图片.并且我们已经定义好了一个SVC估计器,估计器的学习步骤可以就此开始啦.我们有说过, ...

  8. Tensorflow学习教程------模型参数和网络结构保存且载入,输入一张手写数字图片判断是几...

    首先是模型参数和网络结构的保存 #coding:utf-8 import tensorflow as tf from tensorflow.examples.tutorials.mnist impor ...

  9. 用神经集认识手写数字

    人类的视觉系统是世界奇迹之一. 考虑下面的手写数字序列: [img]http://dl2.iteye.com/upload/attachment/0130/0307/278367c2-72b9-338 ...

最新文章

  1. 项目怎么放到服务器里,如何把项目放到服务器上
  2. 设计模式之_工厂系列_03
  3. linux问题排查常用命令详解
  4. 《概率论与数理统计习题全解指南》中的“计算机得”
  5. fpga中wire和reg的区别
  6. 第十届蓝桥杯 等差数列(Python)
  7. c 程序中的注释相当于空白字符_Python专题 | (三)注释、变量与输出
  8. c++ 使用nacos_想自学Maven?推荐Maven极简高速入门及常规使用
  9. Spark生态圈及安装
  10. 启动go服务_go微服务框架go-micro深度学习 rpc方法调用过程详解
  11. 汽车行业用户观点主题及情感分析,深度学习方案rank1
  12. 2019 互联网月饼哪家强?阿里走情怀;百度最土豪;浪潮最高冷;抖音最.........
  13. 短视频源码开发,短视频系统源码搭建,从短视频系统起播过程入手
  14. 对MC9S12XS128MAL中TIM、PIT、RTI的一点理解
  15. 从金山到小米,看雷军如何一步步成为“飞猪”
  16. 关于WIN10开机自动开启小键盘解决方案
  17. 第三章 隐藏通信隧道技术
  18. Spring RMI反序列化漏洞分析
  19. 漫画 | 到底是什么让IT人如此苦逼???
  20. vue+element-ui

热门文章

  1. 汽车使用总结(四)--汽车空调怎么开暖气,汽车暖风开关标志图解
  2. 测试需求分析与测试用例设计
  3. Java中Double和Long互相转换
  4. 极域电子教室2010版广播出现黑屏问题解决办法之一
  5. 我的渗透之路系列——(五)
  6. 计算机锁屏打不开,电脑锁屏打不开怎么办没反应
  7. oracle 删除po查询,Oracle EBS:PO 常用的查询及Tips
  8. 解密“CDO-首席数据官”的价值、挑战及发展
  9. visiting a friend意念传送点
  10. 1.16 be going to and will