基于tensorflow的神经网络实战:(cnn模型)一次kaggle上的手写数字(Digit Recognizer)提交

本文介绍了使用TensorFlow构建的卷积神经网络(CNN)模型,应用于Kaggle上的Digit Recognizer挑战。通过MNIST数据集进行训练,实现了约0.98的准确率。代码部分包含数据读取和模型构建,部分内容参考了其他博主的实践。
摘要由CSDN通过智能技术生成

初识神经网络,入门级别的mnist手写数据,然后在kaggle上提交了一下,tensorflow ,卷积神经网络的cnn模型,准确率大概是0.98的样子,其中的网络结构参考了一些博客上的其他的博主,数据读取也有参考和借鉴,希望对大家的学习之路有所帮助
在这里插入图片描述
代码如下:

import numpy as np
import tensorflow as tf
import pandas as pd

# 加载数据集
train = pd.read_csv('train.csv')
test = pd.read_csv('test.csv')

# 把图片数据取出来,进行处理
x_train = train.iloc[:,1:].values
x_train = x_train.astype(np.float)
x_test = test.iloc[:,:].values
x_test = x_test.astype(np.float)

# 给到的图片灰度值在0-255,这里将图片的信息控制在0~1之间
x_train = np.multiply(x_train, 1.0/255)
x_test = np.multiply(x_test, 1.0/255)

# 计算图片的长和高,下面会用到
image_size = x_train.shape[1]
image_width = image_height = np.ceil(np.sqrt(image_size)).astype(np.uint8)

# 把数据集的标签结果取出来
labels_train = train.iloc[:,0].values
label_count = np.unique(labels_train).shape[0]

#写一个对Label进行one-hot处理的函数
def dense_to_ont_hot(labels_dense,num_classes):
    num_labels = labels_dense.shape[0]
    index_offset = np.arange(num_labels) * num_classes
    labels_one_hot = np.zeros((num_labels,num_classes))
    labels_one_hot.flat[index_offset + labels_dense.ravel()] = 1
    return labels_one_hot
# 对Label进行one-hot处理
labels = dense_to_ont_hot(labels_train
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值