Skip to content
/ mnist Public

Package provides a simple interface to parse and use the MNIST database

License

Notifications You must be signed in to change notification settings

r2dtools/mnist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MNIST Golang

The MNIST database is a dataset of handwritten digits. It has 60,000 training samples, and 10,000 test samples. Each image is represented by 28x28 pixels, each containing a value 0 - 255 with its grayscale value. For more information and to download the database, see .

Package provides a simple interface to parse and use the MNIST database. It can automatically download the database files (and cache) or you can download the database files manually to be easly loaded with the LoadData function. Also the package supports convertation of base data structures to [gonum](https://www.gonum.org/) matrices.

Automatically download and parse MNIST database files

import github.com/r2dtools/mnist/loader

train, test, err := loader.LoadData("")
if err != nil {
    panic(err)
}

trainSlice := train.Slice(0, 1000)

trainImages := train.Images
trainLabels := train.Labels

testImages := test.Images
testLabels := test.Labels

Use already downloaded database files

import github.com/r2dtools/mnist/loader

train, test, err := loader.LoadData("/working/directory")
if err != nil {
    panic(err)
}

....

Convert base data structures to gonum Matrix

import (
    github.com/r2dtools/mnist/dense
    github.com/r2dtools/mnist/loader
)

train, test, err := loader.LoadData("")
if err != nil {
    panic(err)
}

images := dense.NewImageDenses(train.Images, 1, loader.ImageWidth*loader.ImageHeight) // convert images data to a slice of gonum matrices with dimension 1x784
labels := dense.NewLabelVecDense(train.Labels)

normalizedImages := dense.NewNormalizedImageDenses(train.Images, 1, loader.ImageWidth*loader.ImageHeight, 255) // convert images data to a slice of gonum matrices with dimension 1x784. Devide all element by 255

....

About

Package provides a simple interface to parse and use the MNIST database

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages