-
Building a Neural Network | Advanced Learning AlgorithmMachine Learning/Stanford ML Specialization 2024. 2. 9. 16:59
Hidden layer가 1개 있는 뉴런 네트워크가 있다고 해보자. 여기서 TensorFlow를 쓰면, 이전의 예시처럼 하나하나 계산하지 않고, TensorFlow의 Sequential(순차)함수로 간단하게 모델을 만들 수 있다.
layer_1 = Dense(units=3, activation="sigmoid") layer_2 = Dense(units=1, activation="sigmoid") model = Sequential([layer_1, layer_2])
TensorFlow에게 내가 만든 두 layer를 이용해서 Neural Network를 만들어주세요! 라고 부탁할 수 있다. 다음과 같은 커피 로스팅 데이터가 있다고 가정해보자.
Temperature Duration y(Good Coffee?) 200 17 1 120 5 0 425 20 0 212 18 1 이것을 TensorFlow에 사용하려면 다음과 같이 데이터화 할 수 있다.
x = np.array([[200.0, 17.0], [120.0, 5.0] [425.0, 20.0], [212.0, 18.0]]) y = np.array([1, 0, 0, 1]) # 이것은 다음 시간에 다루도록 하자. model.compile(...) # 위에서 생성한 x, y 데이터를 이용해서 모델을 트레이닝 할 수 있다. model.fit(x, y) # 이후, 새로운 x값, x_new가 있다면 그것으로 예측해볼 수 있다. model.predict(x_new)
이렇게 TensorFlow에서 신경망을 학습하고 추론해볼 수 있다.
숫차 분류 모델에도 이 코드를 적용해볼 수 있다.
# 노드 갯수에 맞춰서 sigmoid 함수를 activation function으로 쓰는 레이어들을 생성했다. layer_1 = Dense(units=25, activation="sigmoid") layer_2 = Dense(units=15, activation="sigmoid") layer_3 = Dense(units=1, activation="sigmoid") model = Sequential([layer_1, layer_2, layer_3]) model.compile(...) # 2가지 이미지의 예시가 들어있다. 첫번째는 1을 그리는 픽셀들의 값, 2번째는 0이다. x = np.array([0..., 245, ..., 17], [0..., 200, ..., 184]) # target값이 저장되어있다. y = np.array([1, 0]) # 트레이닝 데이터셋 x, y를 이용해서 모델을 트레이닝 한다. model.fit(x, y) # 새로운 x값을 이용해서 예측한다. model.predict(x_new)
Reference
Advanced Learning Algorithms
In the second course of the Machine Learning Specialization, you will: • Build and train a neural network with TensorFlow to perform multi-class ... 무료로 등록하십시오.
www.coursera.org
'Machine Learning > Stanford ML Specialization' 카테고리의 다른 글
Forward Propagation in a Single Layer | Advanced Learning Algorithm (1) 2024.02.09 Neural Network using TensorFlow | Advanced Learning Algorithm (1) 2024.02.09 Data in TensorFlow | Advanced Learning Algorithm (1) 2024.02.09 Inference in Code | Advanced Learning Algorithm (1) 2024.02.09 Neurons and Layers - Neuron with Sigmoid activation | Advanced Learning Algorithm (1) 2024.02.03