신경망의 각 뉴런이 기본적으로 로지스틱 회귀 함수라면 왜 멀티 레이어가 더 낫습니까?


13

저는 Cousera의 DeepAI 과정 (3 주 비디오 1 "Neural Networks 개요")을 통해 진행하고 Andrew Ng는 신경망의 각 계층이 또 다른 로지스틱 회귀 분석 방법을 설명하고 있지만 어떻게 이것이 더 정확한지 설명하지는 않습니다.

2 계층 네트워크에서 물류를 여러 번 계산하는 것이 어떻게 더 정확 해 집니까?


7
좋은 단일 로지스틱 회귀 모델에 적합하려면 상당한 기능 향상을 수행해야합니다. 두 계층 nn이 그 작업 중 일부를 수행하려고합니다.
Matthew Drury

@msk, 로지스틱 회귀를 향상시키기 위해 원래 기능을 기반으로 새로운 기능을 만든 적이 있습니까? 이것이 숨겨진 레이어가하는 일입니다.
Ricardo Cruz

답변:


10

로지스틱 활성화 함수를 사용하는 경우 각 유닛의 입력과 출력을 관련시키는 기능이 로지스틱 회귀와 동일하다는 것은 사실입니다. 그러나 이것은 로지스틱 회귀를 수행하는 각 단위와 실제로 동일하지 않습니다. 차이점은 로지스틱 회귀 분석에서 가중치와 바이어스가 출력이 주어진 목표 값과 가장 일치하도록 선택된다는 것입니다 (로그 / 엔트로피 손실 사용). 반대로 신경망의 숨겨진 유닛은 출력을 다운 스트림 유닛으로 보냅니다. 숨겨진 개별 단위에 일치하는 대상 출력이 없습니다. 오히려 가중치와 바이어스는 네트워크의 최종 출력에 의존하는 일부 객관적인 기능을 최소화하기 위해 선택됩니다.

로지스틱 회귀 분석을 수행하는 대신 각 숨겨진 단위를 일부 피처 공간에서 좌표를 계산하는 것으로 생각하는 것이 더 합리적입니다. 이 관점에서 숨겨진 레이어의 목적은 입력을 변환하는 것입니다. 입력 벡터는 숨겨진 레이어 활성화의 벡터에 매핑됩니다. 이를 입력을 각 숨겨진 단위에 해당하는 치수를 가진 형상 공간으로 매핑하는 것으로 생각할 수 있습니다.

출력 레이어는 종종이 기능 공간에서 작동하는 표준 학습 알고리즘으로 생각할 수 있습니다. 예를 들어, 분류 작업에서 교차 엔트로피 손실이있는 로지스틱 출력 단위를 사용하는 것은 형상 공간에서 로지스틱 회귀를 수행하는 것과 같습니다 (또는 softmax 출력을 사용하는 경우 다항 로지스틱 회귀). 회귀 작업에서 제곱 오차가있는 선형 출력을 사용하는 것은 피처 공간에서 최소 제곱 선형 회귀를 수행하는 것과 같습니다.

네트워크를 훈련시키는 것은 최상의 성능을 제공하는 피처 공간 매핑 및 분류 / 회귀 함수 (피처 공간 내)를 배우는 것입니다. 비선형 숨겨진 단위를 가정하고 숨겨진 레이어의 너비를 늘리거나 여러 숨겨진 레이어를 쌓으면 더 복잡한 피처 공간 매핑을 허용하여 더 복잡한 기능을 맞출 수 있습니다.


7

비선형 성의 힘을 보는 한 가지 방법은 보편적 근사 정리 를 주목하는 것 입니다.

실제로는 중요하지는 않지만 (단일 계층 네트워크의 기능에 관한 것), (임의의 긴) 시그 모이 드의 합계를 사용하면 원칙적으로 원하는 연속 수준의 기능을 원하는 수준으로 근사화 할 수 있습니다. 푸리에 이론을 알고 있거나 Weierstrass 근사 정리를 기억한다면 놀라운 일이 아닙니다.


3
이것은 간결하게 조금 간결하지만 실제로 질문에 올바르게 대답 한 유일한 사람이었습니다. 숨겨진 레이어만으로도 원래 기능을 결합한 강력한 새 기능을 만들 수 있습니다. 문제는 너무 많은 노드가있는 숨겨진 레이어가 필요할 수 있으며 수렴 프로세스는 숨겨진 레이어가 1보다 큰 더 깊은 네트워크에서 가장 잘 작동한다는 것입니다.
Ricardo Cruz

5

신경망에 숨겨진 레이어가 있으면 비선형 기능이 추가됩니다. 이해를 돕기 위해 여기에 내 대답을 확인하십시오.

신경망을 비선형 분류 모델로 만드는 것은 무엇입니까?

특히 중첩 된 시그 모이 드 함수는 원래 피처와 하나의 시그 모이 드 함수 (로지스틱 회귀)의 선형 변환보다 "강력한"기능을 제공합니다.


다음은 OP의 의견을 제시하는 수치 예입니다.

데이터 프레임 가 있다고 가정 하면 행렬 (10 데이터 포인트, 3 기능)입니다. 숨겨진 단위를 원한다면 가중치 행렬 는 행렬입니다. 숨겨진 계층에 대한 출력 (매트릭스 곱셈 출력 )은 행렬이며, 각 데이터 포인트마다 기능이 있습니다.10 × 3 7 W 3 × 7 X × W 10 × 7 7X10×37W3×7X×W10×77


궁금한 점이 있습니다. 첫 번째 레이어가 출력에서 ​​어떻게 다른지, 노드 1이 X1, X2, X3을 얻습니다. 노드 2도 X1, X2, X3을 얻습니다. 모두 로지스틱 회귀 인 경우 어떻게됩니까? 그들의 출력이 다를까요?
mskw

3 개의 피쳐와 10 개의 숨겨진 단위가 있고 숨겨진 레이어의 출력에 10 개의 "엔지니어링 된 피쳐"가 있다고 가정하십시오.
Haitao Du

X1, X2, X3을 언급하는 기능인 "엔지니어링 기능"이라고하는 이유는 무엇입니까?
mskw

귀하의 의견을 해결하기 위해 답변을 편집하겠습니다.
Haitao Du

귀하의 설명을 수정 해 주셔서 감사합니다. 귀하가 내 질문에 답변하지 않았는지 확실하지 않거나 먼저 연결해야 할 지식 격차가 있습니다. 특히, 귀하의 답변에서 Weight는 각 노드의 출력 기능을 나타 냅니까? 그렇다면 동일한 계층의 다른 노드와 어떻게 다릅니 까?
mskw

3

표준 로지스틱 회귀 분석에서는 최종 레이어에 1 개의 출력이 있습니다. 그러나 단일 히든 레이어 신경망을 사용하면 각각 다른 로지스틱 회귀 모델의 출력으로 생각할 수있는 여러 개의 중간 값을 가질 수 있습니다. 즉, 동일한 로지스틱 회귀를 반복해서 수행하는 것이 아닙니다. 이러한 조합이 표준 로지스틱 회귀 모델보다 표현력이 더 우수 할 수 있다고 생각하는 것은 큰 도약이 아닙니다 (실제와 이론 에도 나와 있습니다 ).

또한 동일한 입력을 가진 노드가 동일한 계층에서 다른 값을 갖는 방법에 대한 의견에서 언급 했습니까? 무게가 달라야하기 때문입니다. 뉴럴 네트워크의 각 노드는 얻어 입력하고 값 생성 여기서 일부에서 기능을 선택 우리의 경우 S 자형, 는 가중치이고, 는 입력이며, 는 바이어스입니다. 가중치가 선택됩니다y j = f ( N i = 1 w j ix i + b j ) f w j i x i b jNyj=f(i=1Nwjixi+bj)fwjixibj우리의 목표를 최적화하기위한 최적화 알고리즘에 의해 분류 오류 최소화. 초기화는 일반적으로 가중치를 최적화하는 데 사용되는 경사 하강 알고리즘에 매우 중요합니다. https://intoli.com/blog/neural-network-initialization/을 참조 하십시오. 여기서 모든 가중치가 0에서 시작하면 네트워크를 학습 할 수 없습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.