관개 기계
지능형 관개 기계를 만들어 농지 구역에 물 주기를 자동화해 보겠습니다. Multi-label classification은 각 관측값이 0개 이상의 클래스로 레이블링될 수 있다는 점에서 multi-class 문제와 다릅니다. 즉, 클래스/레이블이 서로 배타적이지 않아서 입력에 따라 모든 구역, 아무 구역도, 또는 임의의 조합을 물 줄 수 있습니다.
이 동작을 반영하기 위해, 클래스 수만큼 뉴런을 가진 출력 레이어를 두되, 이번에는 multi-class 문제와 달리 각 출력 뉴런에 sigmoid 활성화 함수를 사용합니다. 이렇게 하면 출력 레이어의 각 뉴런이 서로 독립적으로 0과 1 사이의 값을 출력할 수 있습니다.
Sequential() 모델과 Dense() 레이어는 준비되어 있습니다. 이제 지능형 관개 기계를 만들어 볼까요!
이 연습은 강의의 일부입니다
Keras로 시작하는 딥 러닝
연습 안내
Sequential()모델을 인스턴스화하세요.- 센서 수와 동일한 입력 뉴런을 가지며, 뉴런 64개와
relu활성화를 사용하는 은닉 레이어를 추가하세요. - 구역(파슬) 수와 동일한 뉴런 개수와
sigmoid활성화를 사용하는 출력 레이어를 추가하세요. adamoptimizer와binary_crossentropyloss로 모델을 컴파일하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Instantiate a Sequential model
model = ____
# Add a hidden layer of 64 neurons and a 20 neuron's input
____
# Add an output layer of 3 neurons with sigmoid activation
____
# Compile your model with binary crossentropy loss
model.compile(optimizer='adam',
loss = ____,
metrics=['accuracy'])
model.summary()