즐거운프로그래밍

[딥러닝] 딥러닝 활용하기(임의 흑백, 컬러 이미지 데이터 셋 학습)

수수께끼 고양이 2023. 10. 30. 17:27
728x90
반응형

 

임의 흑백 이미지 데이터 셋 생성하기

import tensorflow as tf
import numpy as np

X=np.random.randint(0,256,(60000,28,28))
YT=np.random.randint(0,10,(60000,))
x=np.random.randint(0,256,(10000,28,28))
yt=np.random.randint(0,10,(10000,))

print(X.shape, YT.shape, x.shape, yt.shape)

import matplotlib.pyplot as plt

plt.imshow(X[0])
plt.show()

print(YT[0])

 

 

 


임의 흑백 이미지 데이터 셋 학습하기

import tensorflow as tf
import numpy as np

X=np.random.randint(0,256,(60000,28,28))
YT=np.random.randint(0,10,(60000,))
x=np.random.randint(0,256,(10000,28,28))
yt=np.random.randint(0,10,(10000,))

X,x=X/255, x/255 # 60000x28x28, 10000x28x28
X,x=X.reshape((60000,784)), x.reshape((10000,784))

model=tf.keras.Sequential([
    tf.keras.Input(shape=(784,)),
    tf.keras.layers.Dense(128,activation='relu'),
    tf.keras.layers.Dense(10,activation='softmax')
])

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

model.fit(X,YT,epochs=5)
model.evaluate(x,yt)

 

 


임의 컬러 이미지 데이터 셋 생성하기

import tensorflow as tf
import numpy as np

X=np.random.randint(0,256,(50000,32,32,3))
YT=np.random.randint(0,10,(50000,))
x=np.random.randint(0,256,(10000,32,32,3))
yt=np.random.randint(0,10,(10000,))

print(X.shape, YT.shape, x.shape, yt.shape)

import matplotlib.pyplot as plt

plt.imshow(X[0])
plt.show()

print(YT[0])

 

 

 


임의 컬러 이미지 데이터 셋 학습하기

import tensorflow as tf
import numpy as np

X=np.random.randint(0,256,(50000,32,32,3))
YT=np.random.randint(0,10,(50000,))
x=np.random.randint(0,256,(10000,32,32,3))
yt=np.random.randint(0,10,(10000,))

X=X.reshape(50000,32*32*3)/255
x=x.reshape(10000,32*32*3)/255

model=tf.keras.Sequential([
    tf.keras.Input(shape=(32*32*3,)),
    tf.keras.layers.Dense(128,activation='relu'),
    tf.keras.layers.Dense(10,activation='softmax')
])

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

model.fit(X,YT,epochs=20)
model.evaluate(x,yt)

 

 

 


연습문제 1.

import tensorflow as tf
import numpy as np

X=np.random.randint(0,256,(1,3,3,3))
X2=np.array(
    [
    [[[0,0,255],[0,255,255]],
     [[255,0,255],[0,0,255],]]
    ])

print(X2.shape, X2)

import matplotlib.pyplot as plt

plt.imshow(X[0])
plt.show()

 

 

 


연습문제 2.

import tensorflow as tf
import numpy as np

X=np.random.randint(0,256,(10,300,300,3)) # 10장, 300*300px, 3층
X2=np.array(
    [
    [[[0,0,255],[0,255,255]],
     [[255,0,255],[0,0,255],]]
    ])

print(X2.shape, X2)

import matplotlib.pyplot as plt

plt.imshow(X[0])
plt.show()

 

 

 

 

728x90
반응형