"llm/starcoder.go" did not exist on "1852755154a8f82cc2dcb01c37159340a55347ca"
README.md 2.06 KB
Newer Older
1
2
3
4
# MNIST in TensorFlow

This directory builds a convolutional neural net to classify the [MNIST
dataset](http://yann.lecun.com/exdb/mnist/) using the
Neal Wu's avatar
Neal Wu committed
5
[tf.data](https://www.tensorflow.org/api_docs/python/tf/data),
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[tf.estimator.Estimator](https://www.tensorflow.org/api_docs/python/tf/estimator/Estimator),
and
[tf.layers](https://www.tensorflow.org/api_docs/python/tf/layers)
APIs.


## Setup

To begin, you'll simply need the latest version of TensorFlow installed.
Then to train the model, run the following:

```
python mnist.py
```

The model will begin training and will automatically evaluate itself on the
validation data.
23

Asim Shankar's avatar
Asim Shankar committed
24
Illustrative unit tests and benchmarks can be run with:
Asim Shankar's avatar
Asim Shankar committed
25
26
27
28
29
30

```
python mnist_test.py
python mnist_test.py --benchmarks=.
```

31
32
33
34
35
## Exporting the model

You can export the model into Tensorflow [SavedModel](https://www.tensorflow.org/programmers_guide/saved_model) format by using the argument `--export_dir`:

```
36
python mnist.py --export_dir /tmp/mnist_saved_model
37
38
39
40
41
42
43
44
```

The SavedModel will be saved in a timestamped directory under `/tmp/mnist_saved_model/` (e.g. `/tmp/mnist_saved_model/1513630966/`).

**Getting predictions with SavedModel**
Use [`saved_model_cli`](https://www.tensorflow.org/programmers_guide/saved_model#cli_to_inspect_and_execute_savedmodel) to inspect and execute the SavedModel.

```
45
saved_model_cli run --dir /tmp/mnist_saved_model/TIMESTAMP --tag_set serve --signature_def classify --inputs image=examples.npy
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
```

`examples.npy` contains the data from `example5.png` and `example3.png` in a numpy array, in that order. The array values are normalized to values between 0 and 1.

The output should look similar to below:
```
Result for output key classes:
[5 3]
Result for output key probabilities:
[[  1.53558474e-07   1.95694142e-13   1.31193523e-09   5.47467265e-03
    5.85711526e-22   9.94520664e-01   3.48423509e-06   2.65365645e-17
    9.78631419e-07   3.15522470e-08]
 [  1.22413359e-04   5.87615965e-08   1.72251271e-06   9.39960718e-01
    3.30306928e-11   2.87386645e-02   2.82353517e-02   8.21146413e-18
    2.52568233e-03   4.15460236e-04]]
```