더북(TheBook)

이때 Y는 원-핫 인코딩(one-hot encoding)을 통해 위와 같이 변환된 점을 참고한다. 위의 자료는 모두 numpyarray 형태로 나타난다. 다음 코드로 지금까지의 내용을 실습해보자.

>>> import tensorflow as tf
>>> import numpy as np

>>> x_data = np.array([[0, 0], [1, 0], [1, 1], [0, 0], [0, 0], [0, 1]])
>>> y_data = np.array([[1, 0, 0], [0, 1, 0], [0, 0, 1], [1, 0, 0], [1, 0, 0], [0, 0, 1]])

이제 앞의 XY에 대해서 인공 신경망을 구성하여 학습을 진행해보자. 텐서플로의 학습 과정에서 중요한 것은 XY를 연결하는 신경망의 구조이며, 이 신경망은 여러 개의 가중치로 구성이 된다. 이때 필요한 가중치의 차원(dimension)은 주어진 변수 X의 차원과 은닉층 노드의 수로 결정되는 점을 다시 복기해보자.

▲ 그림 8-19 인공 신경망 구성

>>> model = tf.keras.Sequential([
>>>     tf.keras.layers.Dense(5, activation='relu'),
>>>     tf.keras.layers.Dense(3)
>>> ] )
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.