Sunday, 15 September 2019

neural network 3

flattened input 28x28 = 784 neurons
hidden layer size between 15% and 50% of input
output layer 10 categories

#pycharm

import tensorflow as tf
from tensorflow import keras
import numpy as np
import matplotlib.pyplot as plt

data = keras.datasets.fashion_mnist

(train_images, train_labels), (test_images, test_labels) = data.load_data()

class_names = ['T-shirt/top', 'Trouser', 'Pullover', 'Dress', 'Coat', 'Sandal', 'Shirt', 'Sneaker', 'Bag', 'Ankle boot']

train_images = train_images/255.0
test_images = test_images/255.0

#print(train_labels)
#print(train_images[7])

#plt.imshow(train_images[7], cmap=plt.cm.binary)
#plt.show()

#setup input, hidden, output layer
model = keras.Sequential([
    keras.layers.Flatten(input_shape=(28,28)),
    keras.layers.Dense(128, activation='relu'),
    keras.layers.Dense(10,activation='softmax')
])

#setup activation, loss function
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])

#play with epochs to get best accuracy, high epochs = long computation time != better accuracy
model.fit(train_images, train_labels, epochs=10)

test_loss, test_acc = model.evaluate(test_images, test_labels)

print('Tested ACC:', test_acc)

-------------------------------------
#logs
#epoch = 7 balance accuracy and calculation speed
#dataset has 60000 wears, as more training data feed in the model, accuracy increase (prediction of which category the wear belongs to)
#use 10% to 20% of the entire dataset to train model is enough to reach decent level of accuracy 

Epoch 1/10

   32/60000 [..............................] - ETA: 1:44 - loss: 2.4317 - acc: 0.2500
 1664/60000 [..............................] - ETA: 3s - loss: 1.1238 - acc: 0.6106 
 3360/60000 [>.............................] - ETA: 2s - loss: 0.9534 - acc: 0.6664
 4864/60000 [=>............................] - ETA: 2s - loss: 0.8573 - acc: 0.7011
 6368/60000 [==>...........................] - ETA: 2s - loss: 0.7978 - acc: 0.7206
 7968/60000 [==>...........................] - ETA: 2s - loss: 0.7463 - acc: 0.7398
10016/60000 [====>.........................] - ETA: 1s - loss: 0.7150 - acc: 0.7511
12096/60000 [=====>........................] - ETA: 1s - loss: 0.6830 - acc: 0.7626
14208/60000 [======>.......................] - ETA: 1s - loss: 0.6564 - acc: 0.7722
16064/60000 [=======>......................] - ETA: 1s - loss: 0.6445 - acc: 0.7763
17664/60000 [=======>......................] - ETA: 1s - loss: 0.6272 - acc: 0.7830
19360/60000 [========>.....................] - ETA: 1s - loss: 0.6179 - acc: 0.7861
21120/60000 [=========>....................] - ETA: 1s - loss: 0.6053 - acc: 0.7901
22976/60000 [==========>...................] - ETA: 1s - loss: 0.5925 - acc: 0.7938
24864/60000 [===========>..................] - ETA: 1s - loss: 0.5824 - acc: 0.7963
26688/60000 [============>.................] - ETA: 1s - loss: 0.5738 - acc: 0.7998
28832/60000 [=============>................] - ETA: 0s - loss: 0.5652 - acc: 0.8033
30944/60000 [==============>...............] - ETA: 0s - loss: 0.5595 - acc: 0.8060
32832/60000 [===============>..............] - ETA: 0s - loss: 0.5532 - acc: 0.8080
34848/60000 [================>.............] - ETA: 0s - loss: 0.5467 - acc: 0.8102
36928/60000 [=================>............] - ETA: 0s - loss: 0.5414 - acc: 0.8119
38912/60000 [==================>...........] - ETA: 0s - loss: 0.5379 - acc: 0.8126
40864/60000 [===================>..........] - ETA: 0s - loss: 0.5322 - acc: 0.8145
42752/60000 [====================>.........] - ETA: 0s - loss: 0.5283 - acc: 0.8156
44704/60000 [=====================>........] - ETA: 0s - loss: 0.5229 - acc: 0.8171
46656/60000 [======================>.......] - ETA: 0s - loss: 0.5193 - acc: 0.8185
48672/60000 [=======================>......] - ETA: 0s - loss: 0.5162 - acc: 0.8198
50432/60000 [========================>.....] - ETA: 0s - loss: 0.5121 - acc: 0.8213
52480/60000 [=========================>....] - ETA: 0s - loss: 0.5091 - acc: 0.8221
54592/60000 [==========================>...] - ETA: 0s - loss: 0.5072 - acc: 0.8224
56736/60000 [===========================>..] - ETA: 0s - loss: 0.5042 - acc: 0.8236
58688/60000 [============================>.] - ETA: 0s - loss: 0.5019 - acc: 0.8240
60000/60000 [==============================] - 2s 28us/sample - loss: 0.4994 - acc: 0.8247
Epoch 2/10

   32/60000 [..............................] - ETA: 5s - loss: 0.2400 - acc: 0.9062
 2112/60000 [>.............................] - ETA: 1s - loss: 0.4230 - acc: 0.8390
 4224/60000 [=>............................] - ETA: 1s - loss: 0.4127 - acc: 0.8475
 6144/60000 [==>...........................] - ETA: 1s - loss: 0.4039 - acc: 0.8507
 8032/60000 [===>..........................] - ETA: 1s - loss: 0.3948 - acc: 0.8537
10048/60000 [====>.........................] - ETA: 1s - loss: 0.3933 - acc: 0.8553
12160/60000 [=====>........................] - ETA: 1s - loss: 0.3907 - acc: 0.8575
14240/60000 [======>.......................] - ETA: 1s - loss: 0.3922 - acc: 0.8578
16224/60000 [=======>......................] - ETA: 1s - loss: 0.3884 - acc: 0.8585
18240/60000 [========>.....................] - ETA: 1s - loss: 0.3882 - acc: 0.8593
20352/60000 [=========>....................] - ETA: 0s - loss: 0.3888 - acc: 0.8585
22464/60000 [==========>...................] - ETA: 0s - loss: 0.3862 - acc: 0.8601
24576/60000 [===========>..................] - ETA: 0s - loss: 0.3863 - acc: 0.8599
26528/60000 [============>.................] - ETA: 0s - loss: 0.3855 - acc: 0.8597
28512/60000 [=============>................] - ETA: 0s - loss: 0.3839 - acc: 0.8603
30624/60000 [==============>...............] - ETA: 0s - loss: 0.3842 - acc: 0.8597
32768/60000 [===============>..............] - ETA: 0s - loss: 0.3831 - acc: 0.8598
34880/60000 [================>.............] - ETA: 0s - loss: 0.3838 - acc: 0.8602
36928/60000 [=================>............] - ETA: 0s - loss: 0.3837 - acc: 0.8605
38912/60000 [==================>...........] - ETA: 0s - loss: 0.3830 - acc: 0.8607
41024/60000 [===================>..........] - ETA: 0s - loss: 0.3819 - acc: 0.8611
43136/60000 [====================>.........] - ETA: 0s - loss: 0.3809 - acc: 0.8614
45184/60000 [=====================>........] - ETA: 0s - loss: 0.3794 - acc: 0.8619
47264/60000 [======================>.......] - ETA: 0s - loss: 0.3784 - acc: 0.8624
49376/60000 [=======================>......] - ETA: 0s - loss: 0.3769 - acc: 0.8633
51488/60000 [========================>.....] - ETA: 0s - loss: 0.3770 - acc: 0.8632
53376/60000 [=========================>....] - ETA: 0s - loss: 0.3760 - acc: 0.8637
55392/60000 [==========================>...] - ETA: 0s - loss: 0.3766 - acc: 0.8634
57536/60000 [===========================>..] - ETA: 0s - loss: 0.3759 - acc: 0.8635
59648/60000 [============================>.] - ETA: 0s - loss: 0.3753 - acc: 0.8639
60000/60000 [==============================] - 1s 25us/sample - loss: 0.3752 - acc: 0.8640
Epoch 3/10

   32/60000 [..............................] - ETA: 5s - loss: 0.2660 - acc: 0.9062
 1952/60000 [..............................] - ETA: 1s - loss: 0.3728 - acc: 0.8627
 3168/60000 [>.............................] - ETA: 1s - loss: 0.3643 - acc: 0.8643
 4384/60000 [=>............................] - ETA: 1s - loss: 0.3411 - acc: 0.8734
 6240/60000 [==>...........................] - ETA: 1s - loss: 0.3500 - acc: 0.8708
 8352/60000 [===>..........................] - ETA: 1s - loss: 0.3458 - acc: 0.8727
10272/60000 [====>.........................] - ETA: 1s - loss: 0.3442 - acc: 0.8729
12320/60000 [=====>........................] - ETA: 1s - loss: 0.3437 - acc: 0.8738
14432/60000 [======>.......................] - ETA: 1s - loss: 0.3445 - acc: 0.8736
16480/60000 [=======>......................] - ETA: 1s - loss: 0.3403 - acc: 0.8746
18560/60000 [========>.....................] - ETA: 1s - loss: 0.3412 - acc: 0.8732
20544/60000 [=========>....................] - ETA: 1s - loss: 0.3405 - acc: 0.8736
22464/60000 [==========>...................] - ETA: 1s - loss: 0.3376 - acc: 0.8748
24608/60000 [===========>..................] - ETA: 0s - loss: 0.3390 - acc: 0.8750
26720/60000 [============>.................] - ETA: 0s - loss: 0.3374 - acc: 0.8756
28736/60000 [=============>................] - ETA: 0s - loss: 0.3377 - acc: 0.8752
30752/60000 [==============>...............] - ETA: 0s - loss: 0.3376 - acc: 0.8756
32864/60000 [===============>..............] - ETA: 0s - loss: 0.3377 - acc: 0.8756
34976/60000 [================>.............] - ETA: 0s - loss: 0.3401 - acc: 0.8749
36864/60000 [=================>............] - ETA: 0s - loss: 0.3397 - acc: 0.8749
38848/60000 [==================>...........] - ETA: 0s - loss: 0.3388 - acc: 0.8753
40928/60000 [===================>..........] - ETA: 0s - loss: 0.3374 - acc: 0.8759
43040/60000 [====================>.........] - ETA: 0s - loss: 0.3376 - acc: 0.8764
45120/60000 [=====================>........] - ETA: 0s - loss: 0.3379 - acc: 0.8768
46976/60000 [======================>.......] - ETA: 0s - loss: 0.3384 - acc: 0.8764
48992/60000 [=======================>......] - ETA: 0s - loss: 0.3383 - acc: 0.8767
51104/60000 [========================>.....] - ETA: 0s - loss: 0.3383 - acc: 0.8767
53216/60000 [=========================>....] - ETA: 0s - loss: 0.3379 - acc: 0.8768
55296/60000 [==========================>...] - ETA: 0s - loss: 0.3375 - acc: 0.8770
57312/60000 [===========================>..] - ETA: 0s - loss: 0.3374 - acc: 0.8768
59360/60000 [============================>.] - ETA: 0s - loss: 0.3380 - acc: 0.8769
60000/60000 [==============================] - 2s 26us/sample - loss: 0.3377 - acc: 0.8771
Epoch 4/10

   32/60000 [..............................] - ETA: 5s - loss: 0.3729 - acc: 0.8125
 2144/60000 [>.............................] - ETA: 1s - loss: 0.3109 - acc: 0.8899
 4160/60000 [=>............................] - ETA: 1s - loss: 0.2959 - acc: 0.8925
 6080/60000 [==>...........................] - ETA: 1s - loss: 0.2988 - acc: 0.8896
 8032/60000 [===>..........................] - ETA: 1s - loss: 0.3011 - acc: 0.8888
10112/60000 [====>.........................] - ETA: 1s - loss: 0.3085 - acc: 0.8851
12224/60000 [=====>........................] - ETA: 1s - loss: 0.3060 - acc: 0.8875
14176/60000 [======>.......................] - ETA: 1s - loss: 0.3108 - acc: 0.8860
16192/60000 [=======>......................] - ETA: 1s - loss: 0.3094 - acc: 0.8864
18304/60000 [========>.....................] - ETA: 1s - loss: 0.3093 - acc: 0.8862
20384/60000 [=========>....................] - ETA: 0s - loss: 0.3092 - acc: 0.8863
22496/60000 [==========>...................] - ETA: 0s - loss: 0.3082 - acc: 0.8873
24448/60000 [===========>..................] - ETA: 0s - loss: 0.3077 - acc: 0.8883
26464/60000 [============>.................] - ETA: 0s - loss: 0.3123 - acc: 0.8864
28576/60000 [=============>................] - ETA: 0s - loss: 0.3132 - acc: 0.8860
30688/60000 [==============>...............] - ETA: 0s - loss: 0.3137 - acc: 0.8856
32768/60000 [===============>..............] - ETA: 0s - loss: 0.3149 - acc: 0.8853
34816/60000 [================>.............] - ETA: 0s - loss: 0.3165 - acc: 0.8849
36832/60000 [=================>............] - ETA: 0s - loss: 0.3164 - acc: 0.8850
38944/60000 [==================>...........] - ETA: 0s - loss: 0.3169 - acc: 0.8849
41024/60000 [===================>..........] - ETA: 0s - loss: 0.3150 - acc: 0.8857
43040/60000 [====================>.........] - ETA: 0s - loss: 0.3139 - acc: 0.8860
45088/60000 [=====================>........] - ETA: 0s - loss: 0.3134 - acc: 0.8864
47200/60000 [======================>.......] - ETA: 0s - loss: 0.3125 - acc: 0.8863
49312/60000 [=======================>......] - ETA: 0s - loss: 0.3135 - acc: 0.8859
51232/60000 [========================>.....] - ETA: 0s - loss: 0.3146 - acc: 0.8853
53248/60000 [=========================>....] - ETA: 0s - loss: 0.3139 - acc: 0.8854
55360/60000 [==========================>...] - ETA: 0s - loss: 0.3135 - acc: 0.8853
57472/60000 [===========================>..] - ETA: 0s - loss: 0.3134 - acc: 0.8854
59552/60000 [============================>.] - ETA: 0s - loss: 0.3127 - acc: 0.8858
60000/60000 [==============================] - 1s 25us/sample - loss: 0.3124 - acc: 0.8859
Epoch 5/10

   32/60000 [..............................] - ETA: 5s - loss: 0.2645 - acc: 0.8750
 2016/60000 [>.............................] - ETA: 1s - loss: 0.2938 - acc: 0.8919
 4064/60000 [=>............................] - ETA: 1s - loss: 0.2844 - acc: 0.8974
 6208/60000 [==>...........................] - ETA: 1s - loss: 0.2928 - acc: 0.8963
 8256/60000 [===>..........................] - ETA: 1s - loss: 0.2964 - acc: 0.8963
10208/60000 [====>.........................] - ETA: 1s - loss: 0.2975 - acc: 0.8957
12160/60000 [=====>........................] - ETA: 1s - loss: 0.2910 - acc: 0.8979
14240/60000 [======>.......................] - ETA: 1s - loss: 0.2908 - acc: 0.8976
16352/60000 [=======>......................] - ETA: 1s - loss: 0.2887 - acc: 0.8977
18336/60000 [========>.....................] - ETA: 1s - loss: 0.2886 - acc: 0.8978
20352/60000 [=========>....................] - ETA: 0s - loss: 0.2900 - acc: 0.8967
22464/60000 [==========>...................] - ETA: 0s - loss: 0.2900 - acc: 0.8964
24576/60000 [===========>..................] - ETA: 0s - loss: 0.2909 - acc: 0.8961
26528/60000 [============>.................] - ETA: 0s - loss: 0.2898 - acc: 0.8962
28544/60000 [=============>................] - ETA: 0s - loss: 0.2887 - acc: 0.8963
30624/60000 [==============>...............] - ETA: 0s - loss: 0.2875 - acc: 0.8966
32736/60000 [===============>..............] - ETA: 0s - loss: 0.2879 - acc: 0.8953
34816/60000 [================>.............] - ETA: 0s - loss: 0.2890 - acc: 0.8949
36864/60000 [=================>............] - ETA: 0s - loss: 0.2889 - acc: 0.8949
38688/60000 [==================>...........] - ETA: 0s - loss: 0.2897 - acc: 0.8947
40768/60000 [===================>..........] - ETA: 0s - loss: 0.2901 - acc: 0.8943
42880/60000 [====================>.........] - ETA: 0s - loss: 0.2917 - acc: 0.8936
44800/60000 [=====================>........] - ETA: 0s - loss: 0.2914 - acc: 0.8938
46880/60000 [======================>.......] - ETA: 0s - loss: 0.2930 - acc: 0.8930
48992/60000 [=======================>......] - ETA: 0s - loss: 0.2920 - acc: 0.8934
51104/60000 [========================>.....] - ETA: 0s - loss: 0.2925 - acc: 0.8934
53088/60000 [=========================>....] - ETA: 0s - loss: 0.2926 - acc: 0.8931
55136/60000 [==========================>...] - ETA: 0s - loss: 0.2931 - acc: 0.8929
57216/60000 [===========================>..] - ETA: 0s - loss: 0.2928 - acc: 0.8930
59328/60000 [============================>.] - ETA: 0s - loss: 0.2931 - acc: 0.8928
60000/60000 [==============================] - 1s 25us/sample - loss: 0.2931 - acc: 0.8928
Epoch 6/10

   32/60000 [..............................] - ETA: 5s - loss: 0.2724 - acc: 0.9062
 1984/60000 [..............................] - ETA: 1s - loss: 0.2534 - acc: 0.9057
 4032/60000 [=>............................] - ETA: 1s - loss: 0.2705 - acc: 0.8991
 6144/60000 [==>...........................] - ETA: 1s - loss: 0.2831 - acc: 0.8975
 8128/60000 [===>..........................] - ETA: 1s - loss: 0.2777 - acc: 0.8981
10016/60000 [====>.........................] - ETA: 1s - loss: 0.2782 - acc: 0.8972
11968/60000 [====>.........................] - ETA: 1s - loss: 0.2756 - acc: 0.8976
14016/60000 [======>.......................] - ETA: 1s - loss: 0.2713 - acc: 0.8987
16128/60000 [=======>......................] - ETA: 1s - loss: 0.2730 - acc: 0.8986
17888/60000 [=======>......................] - ETA: 1s - loss: 0.2708 - acc: 0.8995
19904/60000 [========>.....................] - ETA: 1s - loss: 0.2707 - acc: 0.8993
21952/60000 [=========>....................] - ETA: 0s - loss: 0.2710 - acc: 0.8995
24064/60000 [===========>..................] - ETA: 0s - loss: 0.2722 - acc: 0.8996
26144/60000 [============>.................] - ETA: 0s - loss: 0.2719 - acc: 0.8994
28128/60000 [=============>................] - ETA: 0s - loss: 0.2724 - acc: 0.8983
30112/60000 [==============>...............] - ETA: 0s - loss: 0.2715 - acc: 0.8986
32160/60000 [===============>..............] - ETA: 0s - loss: 0.2713 - acc: 0.8985
34272/60000 [================>.............] - ETA: 0s - loss: 0.2715 - acc: 0.8982
36224/60000 [=================>............] - ETA: 0s - loss: 0.2725 - acc: 0.8982
38272/60000 [==================>...........] - ETA: 0s - loss: 0.2730 - acc: 0.8980
40352/60000 [===================>..........] - ETA: 0s - loss: 0.2730 - acc: 0.8979
42304/60000 [====================>.........] - ETA: 0s - loss: 0.2729 - acc: 0.8981
44160/60000 [=====================>........] - ETA: 0s - loss: 0.2735 - acc: 0.8979
46144/60000 [======================>.......] - ETA: 0s - loss: 0.2752 - acc: 0.8975
48096/60000 [=======================>......] - ETA: 0s - loss: 0.2749 - acc: 0.8977
50112/60000 [========================>.....] - ETA: 0s - loss: 0.2760 - acc: 0.8974
52064/60000 [=========================>....] - ETA: 0s - loss: 0.2773 - acc: 0.8968
53888/60000 [=========================>....] - ETA: 0s - loss: 0.2767 - acc: 0.8971
55904/60000 [==========================>...] - ETA: 0s - loss: 0.2778 - acc: 0.8967
57984/60000 [===========================>..] - ETA: 0s - loss: 0.2785 - acc: 0.8962
60000/60000 [==============================] - 2s 25us/sample - loss: 0.2780 - acc: 0.8963
Epoch 7/10

   32/60000 [..............................] - ETA: 5s - loss: 0.3386 - acc: 0.9062
 1984/60000 [..............................] - ETA: 1s - loss: 0.2755 - acc: 0.8936
 3904/60000 [>.............................] - ETA: 1s - loss: 0.2625 - acc: 0.9029
 5856/60000 [=>............................] - ETA: 1s - loss: 0.2671 - acc: 0.9015
 7872/60000 [==>...........................] - ETA: 1s - loss: 0.2625 - acc: 0.9026
 9856/60000 [===>..........................] - ETA: 1s - loss: 0.2607 - acc: 0.9021
10976/60000 [====>.........................] - ETA: 1s - loss: 0.2599 - acc: 0.9022
12064/60000 [=====>........................] - ETA: 1s - loss: 0.2603 - acc: 0.9034
13568/60000 [=====>........................] - ETA: 1s - loss: 0.2618 - acc: 0.9037
15296/60000 [======>.......................] - ETA: 1s - loss: 0.2656 - acc: 0.9025
16928/60000 [=======>......................] - ETA: 1s - loss: 0.2618 - acc: 0.9039
18336/60000 [========>.....................] - ETA: 1s - loss: 0.2629 - acc: 0.9031
19936/60000 [========>.....................] - ETA: 1s - loss: 0.2619 - acc: 0.9033
22016/60000 [==========>...................] - ETA: 1s - loss: 0.2638 - acc: 0.9023
24096/60000 [===========>..................] - ETA: 1s - loss: 0.2641 - acc: 0.9019
26144/60000 [============>.................] - ETA: 0s - loss: 0.2633 - acc: 0.9025
28128/60000 [=============>................] - ETA: 0s - loss: 0.2640 - acc: 0.9026
30112/60000 [==============>...............] - ETA: 0s - loss: 0.2642 - acc: 0.9021
32192/60000 [===============>..............] - ETA: 0s - loss: 0.2637 - acc: 0.9019
34240/60000 [================>.............] - ETA: 0s - loss: 0.2624 - acc: 0.9023
36288/60000 [=================>............] - ETA: 0s - loss: 0.2632 - acc: 0.9021
38272/60000 [==================>...........] - ETA: 0s - loss: 0.2629 - acc: 0.9023
40288/60000 [===================>..........] - ETA: 0s - loss: 0.2623 - acc: 0.9027
42368/60000 [====================>.........] - ETA: 0s - loss: 0.2635 - acc: 0.9021
44448/60000 [=====================>........] - ETA: 0s - loss: 0.2637 - acc: 0.9022
46464/60000 [======================>.......] - ETA: 0s - loss: 0.2628 - acc: 0.9028
48448/60000 [=======================>......] - ETA: 0s - loss: 0.2625 - acc: 0.9027
50560/60000 [========================>.....] - ETA: 0s - loss: 0.2615 - acc: 0.9030
52608/60000 [=========================>....] - ETA: 0s - loss: 0.2629 - acc: 0.9026
54624/60000 [==========================>...] - ETA: 0s - loss: 0.2636 - acc: 0.9023
56608/60000 [===========================>..] - ETA: 0s - loss: 0.2638 - acc: 0.9022
58720/60000 [============================>.] - ETA: 0s - loss: 0.2646 - acc: 0.9018
60000/60000 [==============================] - 2s 27us/sample - loss: 0.2646 - acc: 0.9018
Epoch 8/10

   32/60000 [..............................] - ETA: 5s - loss: 0.2609 - acc: 0.9062
 2016/60000 [>.............................] - ETA: 1s - loss: 0.2475 - acc: 0.9023
 3936/60000 [>.............................] - ETA: 1s - loss: 0.2380 - acc: 0.9057
 5920/60000 [=>............................] - ETA: 1s - loss: 0.2368 - acc: 0.9086
 8032/60000 [===>..........................] - ETA: 1s - loss: 0.2446 - acc: 0.9071
10112/60000 [====>.........................] - ETA: 1s - loss: 0.2491 - acc: 0.9056
12160/60000 [=====>........................] - ETA: 1s - loss: 0.2440 - acc: 0.9072
14176/60000 [======>.......................] - ETA: 1s - loss: 0.2497 - acc: 0.9045
16288/60000 [=======>......................] - ETA: 1s - loss: 0.2462 - acc: 0.9061
18432/60000 [========>.....................] - ETA: 1s - loss: 0.2470 - acc: 0.9071
20448/60000 [=========>....................] - ETA: 0s - loss: 0.2485 - acc: 0.9069
22528/60000 [==========>...................] - ETA: 0s - loss: 0.2495 - acc: 0.9062
24608/60000 [===========>..................] - ETA: 0s - loss: 0.2525 - acc: 0.9057
26720/60000 [============>.................] - ETA: 0s - loss: 0.2519 - acc: 0.9057
28736/60000 [=============>................] - ETA: 0s - loss: 0.2511 - acc: 0.9059
30752/60000 [==============>...............] - ETA: 0s - loss: 0.2520 - acc: 0.9062
32832/60000 [===============>..............] - ETA: 0s - loss: 0.2529 - acc: 0.9060
34912/60000 [================>.............] - ETA: 0s - loss: 0.2533 - acc: 0.9057
36864/60000 [=================>............] - ETA: 0s - loss: 0.2534 - acc: 0.9058
38912/60000 [==================>...........] - ETA: 0s - loss: 0.2535 - acc: 0.9056
40992/60000 [===================>..........] - ETA: 0s - loss: 0.2527 - acc: 0.9058
43104/60000 [====================>.........] - ETA: 0s - loss: 0.2531 - acc: 0.9055
45152/60000 [=====================>........] - ETA: 0s - loss: 0.2530 - acc: 0.9057
47200/60000 [======================>.......] - ETA: 0s - loss: 0.2532 - acc: 0.9055
49280/60000 [=======================>......] - ETA: 0s - loss: 0.2552 - acc: 0.9045
51392/60000 [========================>.....] - ETA: 0s - loss: 0.2552 - acc: 0.9043
53504/60000 [=========================>....] - ETA: 0s - loss: 0.2542 - acc: 0.9048
55552/60000 [==========================>...] - ETA: 0s - loss: 0.2539 - acc: 0.9046
57600/60000 [===========================>..] - ETA: 0s - loss: 0.2551 - acc: 0.9041
59712/60000 [============================>.] - ETA: 0s - loss: 0.2546 - acc: 0.9043
60000/60000 [==============================] - 1s 25us/sample - loss: 0.2545 - acc: 0.9043
Epoch 9/10

   32/60000 [..............................] - ETA: 3s - loss: 0.1808 - acc: 0.9375
 2048/60000 [>.............................] - ETA: 1s - loss: 0.2337 - acc: 0.9146
 3936/60000 [>.............................] - ETA: 1s - loss: 0.2338 - acc: 0.9129
 5920/60000 [=>............................] - ETA: 1s - loss: 0.2364 - acc: 0.9110
 8032/60000 [===>..........................] - ETA: 1s - loss: 0.2341 - acc: 0.9126
10112/60000 [====>.........................] - ETA: 1s - loss: 0.2348 - acc: 0.9124
12064/60000 [=====>........................] - ETA: 1s - loss: 0.2363 - acc: 0.9117
14080/60000 [======>.......................] - ETA: 1s - loss: 0.2390 - acc: 0.9114
16160/60000 [=======>......................] - ETA: 1s - loss: 0.2404 - acc: 0.9108
18272/60000 [========>.....................] - ETA: 1s - loss: 0.2412 - acc: 0.9105
20384/60000 [=========>....................] - ETA: 0s - loss: 0.2413 - acc: 0.9099
22400/60000 [==========>...................] - ETA: 0s - loss: 0.2417 - acc: 0.9100
24448/60000 [===========>..................] - ETA: 0s - loss: 0.2416 - acc: 0.9104
26496/60000 [============>.................] - ETA: 0s - loss: 0.2418 - acc: 0.9101
28608/60000 [=============>................] - ETA: 0s - loss: 0.2438 - acc: 0.9097
30688/60000 [==============>...............] - ETA: 0s - loss: 0.2437 - acc: 0.9094
32736/60000 [===============>..............] - ETA: 0s - loss: 0.2437 - acc: 0.9091
34752/60000 [================>.............] - ETA: 0s - loss: 0.2441 - acc: 0.9094
36864/60000 [=================>............] - ETA: 0s - loss: 0.2454 - acc: 0.9088
38944/60000 [==================>...........] - ETA: 0s - loss: 0.2465 - acc: 0.9086
40896/60000 [===================>..........] - ETA: 0s - loss: 0.2466 - acc: 0.9087
42912/60000 [====================>.........] - ETA: 0s - loss: 0.2467 - acc: 0.9085
45024/60000 [=====================>........] - ETA: 0s - loss: 0.2455 - acc: 0.9091
47136/60000 [======================>.......] - ETA: 0s - loss: 0.2446 - acc: 0.9091
49088/60000 [=======================>......] - ETA: 0s - loss: 0.2440 - acc: 0.9092
51072/60000 [========================>.....] - ETA: 0s - loss: 0.2437 - acc: 0.9094
53152/60000 [=========================>....] - ETA: 0s - loss: 0.2441 - acc: 0.9092
55232/60000 [==========================>...] - ETA: 0s - loss: 0.2446 - acc: 0.9088
57344/60000 [===========================>..] - ETA: 0s - loss: 0.2453 - acc: 0.9085
59168/60000 [============================>.] - ETA: 0s - loss: 0.2455 - acc: 0.9084
60000/60000 [==============================] - 1s 25us/sample - loss: 0.2460 - acc: 0.9083
Epoch 10/10

   32/60000 [..............................] - ETA: 5s - loss: 0.4228 - acc: 0.8750
 2080/60000 [>.............................] - ETA: 1s - loss: 0.2519 - acc: 0.9096
 4192/60000 [=>............................] - ETA: 1s - loss: 0.2454 - acc: 0.9089
 6272/60000 [==>...........................] - ETA: 1s - loss: 0.2445 - acc: 0.9080
 8224/60000 [===>..........................] - ETA: 1s - loss: 0.2446 - acc: 0.9071
10144/60000 [====>.........................] - ETA: 1s - loss: 0.2436 - acc: 0.9081
12128/60000 [=====>........................] - ETA: 1s - loss: 0.2437 - acc: 0.9084
14208/60000 [======>.......................] - ETA: 1s - loss: 0.2413 - acc: 0.9093
16256/60000 [=======>......................] - ETA: 1s - loss: 0.2410 - acc: 0.9097
18272/60000 [========>.....................] - ETA: 1s - loss: 0.2410 - acc: 0.9093
20288/60000 [=========>....................] - ETA: 1s - loss: 0.2390 - acc: 0.9099
22368/60000 [==========>...................] - ETA: 0s - loss: 0.2389 - acc: 0.9101
24480/60000 [===========>..................] - ETA: 0s - loss: 0.2388 - acc: 0.9099
26464/60000 [============>.................] - ETA: 0s - loss: 0.2376 - acc: 0.9107
28512/60000 [=============>................] - ETA: 0s - loss: 0.2363 - acc: 0.9110
30624/60000 [==============>...............] - ETA: 0s - loss: 0.2357 - acc: 0.9116
32672/60000 [===============>..............] - ETA: 0s - loss: 0.2354 - acc: 0.9113
34624/60000 [================>.............] - ETA: 0s - loss: 0.2348 - acc: 0.9111
36640/60000 [=================>............] - ETA: 0s - loss: 0.2345 - acc: 0.9111
38688/60000 [==================>...........] - ETA: 0s - loss: 0.2353 - acc: 0.9110
40800/60000 [===================>..........] - ETA: 0s - loss: 0.2348 - acc: 0.9111
42912/60000 [====================>.........] - ETA: 0s - loss: 0.2346 - acc: 0.9110
44864/60000 [=====================>........] - ETA: 0s - loss: 0.2340 - acc: 0.9113
46880/60000 [======================>.......] - ETA: 0s - loss: 0.2349 - acc: 0.9109
48960/60000 [=======================>......] - ETA: 0s - loss: 0.2355 - acc: 0.9106
51072/60000 [========================>.....] - ETA: 0s - loss: 0.2351 - acc: 0.9108
53120/60000 [=========================>....] - ETA: 0s - loss: 0.2348 - acc: 0.9107
55136/60000 [==========================>...] - ETA: 0s - loss: 0.2350 - acc: 0.9109
57152/60000 [===========================>..] - ETA: 0s - loss: 0.2355 - acc: 0.9110
59264/60000 [============================>.] - ETA: 0s - loss: 0.2358 - acc: 0.9110
60000/60000 [==============================] - 1s 25us/sample - loss: 0.2358 - acc: 0.9110

   32/10000 [..............................] - ETA: 4s - loss: 0.4458 - acc: 0.8750
 3520/10000 [=========>....................] - ETA: 0s - loss: 0.3168 - acc: 0.8878
 6944/10000 [===================>..........] - ETA: 0s - loss: 0.3341 - acc: 0.8835
10000/10000 [==============================] - 0s 16us/sample - loss: 0.3246 - acc: 0.8852
Tested ACC: 0.8852

中秋晚会2019






《卷珠帘》
镌刻好每道眉间心上
画间透过思量
沾染了墨色淌
千家文都泛黄
夜静谧窗纱微微亮
拂袖起舞于梦中徘徊
相思漫上心扉
她眷恋梨花泪
静画红妆等谁归
空留伊人徐徐憔悴
啊胭脂香味
卷珠帘是为谁
啊高轩雾褪
夜月明袖掩暗垂泪
啊啦·
卷珠帘是为谁
细雨酥润见烟外绿杨
倦起愁对春伤
残烛化晓风凉
归雁过处留声怅
天水间谁抚琴断肠
啊胭脂香味
卷珠帘是为谁
啊高轩雾褪
夜月明袖掩暗垂泪

Saturday, 14 September 2019

python neural networks 2

has lots of wears of different categories

------------------
#pycharm

import tensorflow as tf
from tensorflow import keras
import numpy as np
import matplotlib.pyplot as plt

data = keras.datasets.fashion_mnist

(train_images, train_labels), (test_images, test_labels) = data.load_data()

print(train_labels)

--------------------------
#logs
[9 0 0 ... 3 0 5]

------------------------------
#pycharm
#classify categories

class_names = ['T-shirt/top', 'Trouser', 'Pullover', 'Dress', 'Coat', 'Sandal', 'Shirt', 'Sneaker', 'Bag', 'Ankle boot']

#print image data
print(train_images[7])

---------------------------------
#logs
#image is consist of 28 x 28 pixels

[[  0   0   0   0   0   1   1   0   0   0   0  63  28   0   0   0  33  85
    0   0   0   0   0   0   0   0   0   0]
 [  0   0   0   0   0   2   0   0  28 126 241 255 255 255 255 255 255 252
  248 111   0   0   0   2   0   0   0   0]
 [  0   0   0   0   2   0   0 206 244 251 241 230 238 221 205 230 240 230
  239 251 233 165   0   0   2   0   0   0]
 [  0   0   0   1   0   0 199 251 228 234 233 236 235 245 247 237 234 239
  230 230 235 255 176   0   0   1   0   0]
 [  0   0   0   0   0  81 254 226 228 239 237 236 234 232 233 235 235 236
  239 237 233 225 246  73   0   0   0   0]
 [  0   0   3   0   0 255 235 239 223 234 238 236 237 236 235 235 235 235
  236 235 234 230 231 255  24   0   4   0]
 [  0   0   0   0 177 239 223 254 223 232 234 234 236 236 235 235 235 235
  235 234 231 233 222 246  88   0   1   0]
 [  0   0   0   0 234 239 229 255 220 232 233 232 234 235 235 235 235 235
  234 233 232 230 228 254 140   0   0   0]
 [  0   0   0   0 225 240 226 255 221 227 232 228 231 230 228 229 231 230
  228 228 232 223 229 244 231   0   0   0]
 [  0   0   0  47 245 231 234 249 229 221 229 225 229 227 226 227 228 227
  228 229 228 224 246 240 227   0   0   0]
 [  0   0   0  51 248 230 245 246 230 226 230 227 230 229 228 229 230 228
  228 231 225 227 242 237 255   0   0   0]
 [  0   0   0 101 253 229 247 241 221 233 228 227 229 228 227 228 230 227
  230 234 225 229 251 229 243  55   0   0]
 [  0   0   0 102 255 227 242 241 221 234 223 230 228 231 229 231 231 227
  229 241 219 236 254 225 250 167   0   0]
 [  0   0   0  90 255 229 236 231 222 236 223 231 229 231 229 231 231 228
  224 245 218 243 239 227 244 175   0   0]
 [  0   0   0 212 250 225 236 249 229 237 223 231 229 231 229 231 231 230
  221 243 225 248 230 236 234 255   1   0]
 [  0   0   0 245 243 232 243 218 228 238 222 231 229 231 229 231 231 230
  222 237 237 252 229 239 240 223   0   0]
 [  0   0  27 255 235 242 237 216 230 236 224 229 227 233 233 233 230 228
  224 230 245 247 221 243 239 252   0   0]
 [  0   0  88 255 232 248 236 208 234 231 223 227 226 233 232 232 230 228
  224 224 235 233 234 247 235 255   0   0]
 [  0   0  83 255 225 250 237 224 236 229 225 225 227 235 229 231 230 230
  227 221 227 221 239 250 231 255   0   0]
 [  0   0  20 255 224 248 234 226 232 222 225 224 231 238 226 230 228 230
  230 221 229 225 244 246 230 255   0   0]
 [  0   0  95 255 218 242 255 232 226 224 229 228 228 232 228 229 231 233
  232 226 221 224 247 244 228 255   0   0]
 [  0   0 167 255 213 235 255  81 245 251 238 236 230 229 230 229 230 231
  238 240 255 192 255 239 228 255  23   0]
 [  0   0 173 242 224 233 255   0 136 226 239 255 229 236 236 234 233 228
  251 248 200  81 255 237 225 255 101   0]
 [  0   0 172 255 226 233 255   0   0   0   0   0   8  21  22  21  20  14
    0   0   0   0 255 238 229 246 178   0]
 [  0   0  16 255 236 238 252   0   0   0   0   0   0   0   0   0   0   0
    0   0   0   0 222 244 222 254 119   0]
 [  0   0   0  30 228 242 163   0   0   0   0   2   4   6   5   5   4   4
    2   0   1   0 151 251 235 180   0   0]
 [  0   0   0   0 234 255 191   0  11   0   0   0   0   0   0   0   0   0
    0   0   4   0 103 246 247  72   0   0]
 [  0   0   0   1  95  77  52   0   4   0   0   0   0   0   0   0   0   0
    0   0   3   0  82 237 231  70   0   0]]

-------------------------------------------------------
#pycharm 
#divide pixel array by max pixel intensity so that pixel range from 0 to 1

train_images = train_images/255.0
test_images = test_images/255.0

---------------------------------------
#pycharm
#show image

plt.imshow(train_images[7], cmap=plt.cm.binary)
plt.show()

------------------------------
#matplotlib



-----------------------------
reference

python neural networks 1

weight, bias, activation function, loss function, hidden layer, input layer, output layer

reference:
https://www.youtube.com/watch?v=OS0Ddkle0o4&list=PLzMcBGfZo4-lak7tiFDec5_ZMItiIIfmj&index=1


Monday, 9 September 2019

python machine learning 5 SVM

square vector machine method to predict which group the unknown belongs to
by finding a plane that has the furthest margin to both colony

if can't separate groups, transform to higher dimension 

2D -> 3D

import sklearn
from sklearn import datasets
from sklearn import svm
from sklearn import metrics
from sklearn.neighbors import KNeighborsClassifier

cancer = datasets.load_breast_cancer()

print(cancer.feature_names)
print(cancer.target_names)

x= cancer.data
y=cancer.target

x_train, x_test, y_train, y_test = sklearn.model_selection.train_test_split(x, y, test_size=0.2)

print(x_train, y_train)

classes = ['malignant', 'benign']

#kernel the math to create divisible plane, C = 2 -> softer margin, C = 0 -> tighter margin
clf = svm.SVC(kernel='linear', C=1)

#clf=KNeighborsClassifier(n_neighbors=9)

clf.fit(x_train, y_train)

y_pred = clf.predict(x_test)

acc = metrics.accuracy_score(y_test, y_pred)

print(acc)

----------------------------------------
#logs
#using SVN
#data header | sample data value | sample target value | accuracy

['mean radius' 'mean texture' 'mean perimeter' 'mean area'
 'mean smoothness' 'mean compactness' 'mean concavity'
 'mean concave points' 'mean symmetry' 'mean fractal dimension'
 'radius error' 'texture error' 'perimeter error' 'area error'
 'smoothness error' 'compactness error' 'concavity error'
 'concave points error' 'symmetry error' 'fractal dimension error'
 'worst radius' 'worst texture' 'worst perimeter' 'worst area'
 'worst smoothness' 'worst compactness' 'worst concavity'
 'worst concave points' 'worst symmetry' 'worst fractal dimension']
['malignant' 'benign']
[[1.082e+01 2.421e+01 6.889e+01 ... 3.264e-02 3.059e-01 7.626e-02]
 [1.881e+01 1.998e+01 1.209e+02 ... 1.294e-01 2.567e-01 5.737e-02]
 [1.900e+01 1.891e+01 1.234e+02 ... 1.218e-01 2.841e-01 6.541e-02]
 ...
 [1.522e+01 3.062e+01 1.034e+02 ... 2.356e-01 4.089e-01 1.409e-01]
 [1.427e+01 2.255e+01 9.377e+01 ... 1.362e-01 2.698e-01 8.351e-02]
 [1.537e+01 2.276e+01 1.002e+02 ... 1.476e-01 2.556e-01 6.828e-02]] [1 0 0 1 1 0 0 1 1 0 1 0 1 1 0 0 0 0 1 0 1 1 1 1 1 1 1 1 0 1 0 1 0 0 1 1 1
 0 1 1 0 0 1 0 0 0 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 0 0 0 1 1 1 0 0 0 1 1 0 0
 0 0 1 1 1 0 1 0 0 1 1 0 1 1 0 1 0 0 0 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 0
 1 1 0 1 1 0 1 1 1 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 0 0 1 1 0 1 1 0 1 1 1
 1 1 1 0 0 0 0 1 1 1 1 1 0 1 1 1 0 0 1 0 1 0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 1
 1 0 1 1 1 0 1 0 1 1 0 1 1 1 0 0 1 0 1 1 1 0 0 0 1 1 1 1 1 1 1 0 0 1 1 1 1
 1 0 0 1 1 0 1 0 0 1 0 0 0 0 1 1 0 0 0 1 0 0 0 1 1 1 0 1 1 1 0 1 1 0 1 1 1
 1 0 1 1 0 0 0 1 1 1 1 1 0 1 0 1 1 0 1 0 1 1 0 0 1 0 0 1 0 1 1 1 0 1 1 1 1
 1 1 0 1 0 0 1 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 0 1 0 1 0 1 1 0 0
 1 0 1 0 1 1 1 1 0 0 1 0 1 0 1 0 1 1 1 0 1 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 0
 1 1 1 0 0 1 1 1 0 0 1 1 1 1 1 0 0 1 1 0 1 1 0 0 0 0 0 0 1 0 0 1 1 0 1 1 0
 1 0 0 1 1 0 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1
 1 0 0 1 0 1 1 1 0 0 0]
0.9736842105263158

--------------------------------------
#using KNN
...
0.9210526315789473

for high dimension dataset, SVN usually better than KNN