다음을 통해 공유


신경망 회귀 구성 요소

신경망 알고리즘을 사용하여 회귀 모델 만들기

범주: Machine Learning/ 모델 초기화/회귀

구성 요소 개요

이 문서에서는 Azure Machine Learning 디자이너의 구성 요소에 대해 설명합니다.

이 구성 요소를 사용하여 사용자 지정 가능 신경망 알고리즘을 사용하는 회귀 모델을 만듭니다.

신경망은 이미지 인식과 같은 복잡한 문제를 심층 학습 및 모델링하는 데 널리 사용되지만 회귀 문제에 쉽게 적응할 수 있습니다. 통계 모델의 모든 클래스는 적응 가중치를 사용하고 입력의 비선형 함수를 근사화할 수 있는 경우 신경망이라고 할 수 있습니다. 따라서 신경망 회귀는 기존의 회귀 모델이 솔루션에 맞지 않는 문제에 적합합니다.

신경망 회귀는 감독 학습 방법이므로 레이블 열을 포함하는 태그가 지정된 데이터 세트가 필요합니다. 회귀 모델은 숫자 값을 예측하므로 레이블 열은 숫자 데이터 형식이어야 합니다.

모델을 학습하기 위해 모델 및 태그가 지정된 데이터 집합을 학습 모델에 입력해서 제공할 수 있습니다. 그런 다음 학습된 모델을 사용하여 새 입력 예제의 값을 예측할 수 있습니다.

신경망 회귀 구성

신경망을 광범위하게 사용자 지정할 수 있습니다. 이 섹션에서는 다음 두 가지 방법을 사용하여 모델을 만드는 방법을 설명합니다.

  • 기본 아키텍처를 사용하여 신경망 모델 만들기

    기본 신경망 아키텍처를 적용하는 경우 속성 창을 사용하여 숨겨진 계층의 노드 수, 학습 속도, 정규화와 같은 신경망의 동작을 제어하는 매개 변수를 설정합니다.

    신경망을 접하는 경우 여기에서 시작합니다. 구성 요소는 신경망에 대한 깊은 지식이 없어도 모델 튜닝뿐만 아니라 많은 사용자 지정을 지원합니다.

  • 신경망에 대한 사용자 지정 아키텍처 정의

    숨겨진 레이어를 추가하거나 네트워크 아키텍처, 연결 및 활성화 함수를 완전히 사용자 지정하려면 이 옵션을 사용합니다.

    이 옵션은 신경망에 이미 익숙한 경우에 가장 적합합니다. Net# 언어를 사용하여 네트워크 아키텍처를 정의합니다.

기본 아키텍처를 사용하여 신경망 모델 만들기

  1. 디자이너에서 파이프라인에 신경망 회귀 구성 요소를 추가합니다. 이 구성 요소는 회귀 범주의 기계 학습, 초기화에서 찾을 수 있습니다.

  2. 트레이너 모드 만들기 옵션을 설정하여 모델을 학습시킬 방법을 나타냅니다.

    • 단일 매개 변수: 모델을 구성하려는 방법을 이미 알고 있는 경우 이 옵션을 선택합니다.

    • 매개 변수 범위: 최적 매개 변수를 잘 모르는 상태에서 매개 변수 스윕을 실행하려면 이 옵션을 선택합니다. 반복할 값의 범위를 선택하면 모델 하이퍼 매개 변수 튜닝이 제공된 설정의 가능한 모든 조합을 반복하여 최적의 결과를 생성하는 하이퍼 매개 변수를 확인합니다.

  3. 숨겨진 레이어 사양에서 완전히 연결된 대/소문자를 선택합니다. 이 옵션은 신경망 회귀 모델의 경우 다음과 같은 특성이 있는 기본 신경망 아키텍처를 사용하여 모델을 만듭니다.

    • 네트워크에는 정확히 하나의 숨겨진 계층이 있습니다.
    • 출력 계층은 숨겨진 계층에 완전히 연결되고 숨겨진 계층은 입력 계층에 완전히 연결됩니다.
    • 숨겨진 계층의 노드 수는 사용자가 설정할 수 있습니다(기본값은 100).

    입력 계층의 노드 수는 학습 데이터의 기능 수에 따라 결정되므로 회귀 모델에는 출력 계층에 하나의 노드만 있을 수 있습니다.

  4. 숨겨진 노드 수에 숨겨진 노드 수를 입력합니다. 기본값은 노드가 100개인 숨겨진 계층 1개입니다. (Net#을 사용하여 사용자 지정 아키텍처를 정의하는 경우 이 옵션을 사용할 수 없습니다.)

  5. 학습 속도에는 수정하기 전에 각 반복에서 수행되는 단계를 정의하는 값을 입력합니다. 학습 속도에 대한 값이 크면 모델이 더 빠르게 수렴될 수 있지만 로컬 미니마를 오버슈트할 수 있습니다.

  6. 학습 반복 횟수의 경우 알고리즘이 학습 사례를 처리하는 최대 횟수를 지정합니다.

  7. 모멘텀의 경우 학습 중에 적용할 값을 이전 반복의 노드에 가중치로 입력합니다.

  8. 반복 간의 사례 순서를 변경하려면 [순서 섞기] 옵션을 선택합니다. 이 옵션을 해제하면 파이프라인을 실행할 때마다 정확히 동일한 순서로 사례가 처리됩니다.

  9. 난수 시드의 경우 필요에 따라 시드로 사용할 값을 입력할 수 있습니다. 시드 값을 지정하는 것은 동일한 파이프라인의 실행에서 반복성을 보장하려는 경우에 유용합니다.

  10. 학습 데이터 세트를 연결하고 모델을 학습시킵니다.

    • 트레이너 모드 만들기단일 매개 변수로 설정하는 경우 태그가 지정된 데이터 세트와 모델 학습 구성 요소를 연결합니다.

    • 트레이너 만들기 모드를 매개 변수 범위설정하는 경우 태그가 지정된 데이터 세트를 연결하고 모델 하이퍼 매개 변수 조정을 사용하여 모델을 학습시킵니다.

    참고 항목

    모델 학습매개 변수 범위를 전달하는 경우 단일 매개 변수 목록의 기본값만 사용합니다.

    매개 변수 값의 단일 집합을 모델 하이퍼 매개 변수 조정 구성 요소에 전달하는 경우 각 매개 변수의 설정 범위를 예상할 때 해당 값을 무시하고 학습자의 기본값을 사용합니다.

    매개 변수 범위 옵션을 선택하고 임의 매개 변수에 대해 단일 값을 입력하면 다른 매개 변수가 값 범위에서 변경되는 경우에도 지정한 단일 값이 스윕 전체에서 사용됩니다.

  11. 파이프라인을 제출합니다.

결과

학습 완료 후:

  • 학습된 모델의 스냅샷을 저장하려면 출력 탭을 모델 학습 구성 요소의 오른쪽 패널에서 선택합니다. 데이터 세트 등록 아이콘을 선택하여 모델을 재사용 가능한 구성 요소로 저장합니다.

다음 단계

Azure Machine Learning에서 사용 가능한 구성 요소 집합을 참조하세요.