パイソン:MNIST画像表示

1  インポートSYS、OS
 2  sys.path.append(os.pardir)
 3  インポートNPとしてnumpyの
 4  から dataset.mnist インポートload_mnist
 5  から PILのインポートイメージ
 6  
7  DEF (IMG)img_show:
 8      pil_img = Image.fromarray(NPします。 UINT8(IMG))
 9      pil_img.show()
 10  
11(x_train、t_train)、(x_test、t_test)= load_mnist(平ら= 真、
 12正規= 偽)
 13 IMG = x_train [0]
 14ラベル=t_train [0]
 15  印刷(ラベル)5 
16  
17  プリント(img.shape)          (784)
18である IMG = img.reshape(28、28) 元のサイズに画像の形状
。19  プリント(IMG。形状)           (28、28)、
20は 
21である img_show(IMG)

Mnistは、コードが実行され、トレーニング画像が最初に表示され、画像を表示します。sys.path.append親ディレクトリをインポートする(os.pardir)、最初の呼び出しのload_mnist機能、あなたはMNISTデータセットをダウンロードしたいので、私たちは、ネットワークに接続する必要があります。目以降の呼び出しはでき、したがって、処理時間が非常に短いローカル(漬物ファイル)に格納されたファイルを読み込むだけです。

 

load_mnist機能に「(トレーニング画像、トレーニングラベル)、(テスト画像は、テスト・ラベル)」が読み取られたデータのMNSTとして返されます。あなたも好きなことができます

load_mnist(=真、one_hot_label = Falseのフラット化、=真の正規化)

このように、三つのパラメータを提供します。最初のパラメータは、正規化入力画像を設定するには0.0〜1.0の値に正規化されるかどうか。このパラメータに設定されている場合はFalseを、入力画像の画素255に元の0のままです。第2のパラメータは、平坦(一次元データへの)入力画像を開始するかどうかを設定します。このパラメータに設定されている場合はFalseを、入力画像である1×28×28 3次元配列;に設定されている場合はTrue、入力画像は、784個の素子のアレイによって格納されます。第三のパラメータラベルを保存するか否かを設定one_hot_label ワンホットは、(示してワンホット表現)。ワンホット表現は、正解であるように、配列の残りの部分は、全て0であり、ラベルである[0,0,1,0,0,0,0,0,0,0]そう。ときone_hot_labelがあるFalseのとき;、知識が正解7,2とてもシンプルなラベルを保存したいone_hot_labelが、ラベルとして保存されているワンホット表現。

Pythonは、この便利な機能を酸洗ています。この機能を使用すると、オブジェクト・ファイルに実行中のプログラムを保存することができます。あなたが保存したピクルスファイルをロードする場合は、プログラムを実行する前に、オブジェクトがすぐに復元することができます。データを読み出すためMNISTはセット 内部の機能はまた、(リード第二以降の回で)ピックル関数を使用します。ピクルスの機能を使用して、あなたが効率的に準備作業のMNISTデータを完了することができます。 load_mnist()

 ことに留意すべきでflatten=True 読み取られた画像は、1つの(一次元)numpyの配列の形で記憶されている場合。このように、画像が表示され、それは28画素×元の形状画素に28する必要があります。あなたができ 方式、形状変化numpyのアレイの所望の形状パラメータを指定します。さらに、また、PIL numpyのアレイを用いて画像データに変換されたデータオブジェクトを保存する必要があり、この変換は、によって処理され 完成しました。 reshape() Image.fromarray()

 

 

= IMG [x_train 0 ]            [0]データ784の最初の列を示しx_trainので、マトリクスの728行#x_train形状である(6000,784)、すなわち、6000

= t_trainラベル[ 0 ]        #t_train形状、すなわち、行またはデータ6000のカラム、(6000)であり、[0]の値が5である第一データであるのでt_train

 

おすすめ

転載: www.cnblogs.com/taoyuxin/p/11440162.html