심층 신경망은 정규화없이 곱셈 함수에 근접 할 수 있습니까?


27

f = x * y표준 심층 신경망을 사용하여 단순하게 회귀를 원한다고 가정 해 봅시다 .

하나의 숨겨진 레이어를 가진 NN이 어떤 기능을 수행 할 수 있음을 알려주는 reserache가 있다는 것을 기억합니다. 그러나 정규화없이 NN 은이 단순한 곱셈조차도 근사 할 수 없었습니다. 데이터의 로그 정규화 만 도움 m = x*y => ln(m) = ln(x) + ln(y). 이되었지만 속임수처럼 보입니다. NN이 로그 정규화없이이 작업을 수행 할 수 있습니까? unswer는 분명히 (나와 같이)-그렇습니다. 따라서 NN의 유형 / 구성 / 레이아웃은 무엇입니까?

답변:


13

큰 곱셈 함수 그라디언트는 신경망 구현 세부 사항 및 제한 때문에 모든 숨겨진 노드가 0 그라디언트를 갖는 거의 즉시 끔찍한 상태로 그물을 강제합니다. 우리는 두 가지 접근 방식을 사용할 수 있습니다.

  1. 상수로 나눕니다. 우리는 학습하기 전에 모든 것을 나누고 그 후에 곱합니다.
  2. 로그 정규화를 사용하십시오. 또한 곱셈을 만듭니다.

    =엑스와이ln()=ln(엑스)+ln(와이)


5

오늘 초 비슷한 질문이 저를 강타했으며 빠른 답변을 찾을 수 없다는 것에 놀랐습니다. 내 질문은 NN에 합산 함수 만 있다고 가정했을 때 어떻게 곱셈 함수를 모델링 할 수 있는지였습니다.

긴 설명 이었지만 이런 종류의 대답 있습니다. 내 요약은 NN이 함수 자체가 아니라 함수 표면을 모델링한다는 것입니다. 돌이켜 보면 ...


5

relu 활성화 기능이있는 NN은 입력 범위가 제한 될 때 곱셈을 근사 할 수 있습니다. 기억하십시오 relu(x) = max(x, 0).

NN은 사각형 기능을 근사 경우는 충분 g(z) = z^2하기 때문에 x*y = ((x-y)^2 - x^2 - y^2)/(-2). 오른쪽에는 선형 조합과 사각형 만 있습니다.

NN은 부분 z^2선형 함수로 근사 할 수 있습니다 . 예를 들어, 범위 [0, 2]에서 x와 의 조합은 relu(2(x-1))그렇게 나쁘지 않습니다. 아래 그림은 이것을 보여줍니다. 이것이 이론을 넘어서 유용한 지 모르겠다 :-) 여기에 이미지 설명을 입력하십시오


0

"하나의 숨겨진 층"은 사용 된 뉴런의 수 및 활성화 기능의 종류를 제한하지 않으며, 여전히 큰 표현 공간을 갖는다. 이 문제의 존재를 검증하는 간단한 방법 : 실제 뉴런 네트워크로이 회귀 문제를 훈련시키고, 각 가중치와 바이어스를 기록하고,이 파라미터를 사용하여 예측 곡선을 플롯하고, 목표 함수 곡선과 대조합니다. 이 에세이 가 도움 될 수 있습니다.


0

StackExchange에서 새로 활성화 된 사용자로 인해 댓글을 달 수 없습니다. 하지만 이해하기가 쉽지만 설명하기가 어렵 기 때문에 이것이 중요한 질문이라고 생각합니다. 나는 대답이 충분하다고 생각하지 않습니다. s(W*x+b)비선형 활성화 함수 에 대한 형식의 활성화를 사용하여 표준 피드 포워드 NN의 핵심 작업에 대해 생각하면 s실제로 구성된 (다중 계층) 네트워크에서도 이로부터 곱셈을 "얻는"방법이 분명하지 않습니다. 스케일링 (허용 된 답변의 첫 번째 글 머리 기호)은 질문을 전혀 다루지 않는 것 같습니다. 입력 xy모든 샘플에 대한 추측 다릅니다. 알고 있는 한 로그를 가져가는 것이 좋습니다그것이 당신이해야 할 일이며 전처리에서 부호 문제를 처리하십시오 (물론 로그가 음의 입력에 대해 정의되어 있지 않기 때문에). 그러나 이것은 신경망이 단지 "학습"할 수 있다는 개념과 근본적으로 맞지 않습니다 (OP가 말한 것처럼 속임수처럼 느껴집니다). 나는 나보다 똑똑한 사람이 실제로 그 질문에 대답 할 때까지 그 질문에 대한 답을 생각해서는 안된다고 생각한다.

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