안녕하세요
오늘은 Neural Netwotk의 개념과 SAS Viya에서 사용하는 Neural Network option에 대하여 소개하겠습니다.
인공신경망 뉴런
인공신경망은 두뇌의 신경세포, 즉 뉴런이 연결된 형태를 모방한 모델입니다. 즉. 생물학적인 뉴런이 위의 그림과 같이 다른 여러개의 뉴런으로부터 입력 값을 받아서 세포체(cell body)에 저장하다가 자신의 용량을 넘어서면 외부로 출력값을 내보내는 것처럼, 인공신경망 뉴런은 여러 입력값을 받아서 일정 수준이 넘어서면 활성화되어 출력 값을 내보냅니다.
그림으로 Neural Network를 이해하면, 생물학적인 뉴런의 수상돌기는 input #1 ~ #4 입니다. 이러한 입력값들은 가중치(파라미터) 값 θ1, θ2, θ3를 가집니다. 입력을 통한 출력값을 output으로 활성화 함수(Activation Function)이라고 불립니다.
생물학적인 뉴런의 세포체가 일정한 용량을 넘어서면 외부로 출력 값을 보내는 것처럼, 활성화 함수 도한 일정 값을 넘어서면 1, 그 이하는 0 값을 출력하기 위해 시그모이드 함수(Sigmoid function)를 사용합니다.
시그모이드 함수(Sigmoid function)는 활성화 함수로 많이 사용되며, 모든 실수 값을 0 과 1 사이의 값으로 변환시킵니다. 입력값과 각각의 가중치 세타(θ)값으로 계산된 결과를 시그모이드 함수에 입력하여 0과 1사이의 값으로 바꾸며, 보통 0.5를 기준으로 0.5미만은 0 0.5 이상은 대응되도록 하여 활성화 함수(Activation Function)을 사용합니다.
+)
세포체 (뉴런) - Node
수상돌기 - 입력(Input)
축삭돌기 - 출력(Output)
시냅스 - 가중치(Weight)
Neural Network에서 중요한 것 중 하나가 Hyper-parameter를 어떻게 설정하는 것입니다.
먼저, Hyper parameter는 학습 진도율이나 일반화 변수처럼 사람들이 선험적 지식으로 설정을 하거나 또는 외부 모델 메커니즘을 통해 자동으로 설정이 되는 변수를 말합니다.
그렇기 때문에 meta - parameter라고 불리기도 합니다.
[ 일반 속성 및 은닉층 옵션 ]
① [결측포함] 사용안함(기본값) : 누락 된 값을 간격 입력에 대한 평균으로 대체 할 것인지, 누락 된 값을 클래스 입력에 대한 레벨로 처리할지 여부를 지정
② [입력표준화] 범위중앙(기본값) : 입력 변수를 표준화하는 데 사용되는 방법을 지정. 범위중앙/없음/Z스코어
③ [은닉층 수 ] 1(기본값) : 신경망에 포함 할 은닉층 수를 지정. 가능한 값의 범위는 0에서 10까지
④ [은닉층에 동일한 수의 뉴런 사용] 사용함(기본값) : 이 옵션을 선택하지 않으면 사용자 정의 은닉층 옵션 메뉴를 사용하여 각 숨겨진 레이어의 뉴런 수를 변경할 수 있음
⑤ [은닉층당 뉴런 수] : 50(기본값)
⑥ [은닉층 활성함수] 쌍곡탄젠트(기본값) : 가변/로지스틱/사인/소프트플러스/쌍곡탄젠트/지수/항등/ReLu
[ 타겟층 옵션 ]
① [직접연결] 사용안함(기본값) : 입력 레이어의 노드에서 출력 레이어의 노드로 직접 연결을 네트워크에 포함할지 여부를 지정
② [Interval 타겟 표준화] 범위 중앙(기본값) : 대상 변수를 표준화하는 데 사용되는 방법을 지정. 범위중앙/없음/Z스코어 중 선택
③ [Interval 타겟 오차함수] 정규(기본값) : 타겟 층 error 함수 지정 숨겨진 레이어가 없으면 정규 분포 사용. 감마/ 정규/ 포아송
④ [Interval 타겟 활성함수] (기본값) : 타겟 레이어 활성화 함수를 지정 사인/ 쌍곡탄젠트/ 항등
[ 공통 최적화 옵션 ]
①[시도 횟수] 1(기본값) : 네트워크를 학습 할 횟수를 지정. 이것은 가중치에 대해 다른 초기 추정치를 사용하여 수행. 가능한 값의 범위는 1 - 64
②[최대 반복] 300(기본값) : 각 시도에서 허용되는 최대 반복 횟수를 지정
③[난수 시드] 12345(기본값) : 네트워크 가중치를 초기화하기 위해 난수를 생성하는 데 사용할 임의 시드를 지정
④[L1 가중값 감소] 0(기본값) : L1 정규화를위한 weight decay 값 지정
⑤[L2 가중값 감소] 0.1(기본값) : L2 정규화를위한 weight decay 값 지정
⑥[조기중지수행] 사용함(기본값) : 모델이 과적합 되었을 때 분석 중지함
⑦[정체] 5(기본값) : 조기중지 수행시 몇번동안 오차가 개선되지 않으면 분석을 중단할 지 회수 지정
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!