신경망-이진 대 이산 / 연속 입력


14

모든 입력 노드 (역 전파 유무에 관계없이)의 피드 포워드 네트워크에 대한 입력 으로 이산 값 또는 연속 정규화 값 (예 : (1; 3)) 보다 이진 값 (0/1)을 선호해야하는 이유가 있습니까?

물론, 나는 어느 형태로든 변환 될 수있는 입력에 대해서만 이야기하고 있습니다. 예를 들어, 여러 값을 취할 수있는 변수가있는 경우 하나의 입력 노드 값으로 직접 공급 하거나 개별 값 마다 이진 노드를 형성 합니다. 그리고 가능한 값의 범위는 모든 입력 노드 에서 동일하다고 가정 합니다. 두 가지 가능성의 예는 사진을 참조하십시오.

이 주제에 대해 연구하는 동안 나는 이것에 대한 냉혹 한 사실을 찾을 수 없었습니다. 그것은 결국 다소 "시련과 오류"가 될 것 같습니다. 물론, 모든 개별 입력 값에 대한 이진 노드는 더 많은 입력 레이어 노드 (따라서 더 많은 숨겨진 레이어 노드)를 의미하지만 한 노드에서 동일한 값을 갖는 것보다 더 나은 출력 분류를 생성 할 것입니다. 숨겨진 레이어?

그것이 단지 "시도하고 보는 것"이라는 것에 동의하십니까? 가능성 1 : 가능한 값의 직접 입력 {1; 3} 가능성 2 : 각 입력 값을 이진 노드로 가져 오기

답변:


11

입력 변수를 이진으로 변환할지 여부는 입력 변수에 따라 다릅니다. 신경망 입력은 일종의 "강도"를 나타내는 것으로 생각할 수 있습니다. 즉, 입력 변수의 값이 클수록 입력 변수의 강도가 커집니다. 결국, 네트워크에 하나의 입력 만 있다고 가정하면 네트워크의 주어진 숨겨진 노드는 함수를 배우게 됩니다. 여기서 는 전달 함수 (예 : S 자형)이고 는 입력 변수입니다.f(wx+b)fx

이 설정은 범주 형 변수에 적합하지 않습니다. 범주가 숫자로 표시되면 함수 를 범주에 적용하는 것은 의미가 없습니다 . 예를 들어 입력 변수가 동물을 나타내고 양이 1이고 소가 2라고 가정합니다. 양에 를 곱하고 를 더하는 것은 의미가 없으며, 젖소가 항상 양보다 크기가 큰 것도 이치에 맞지 않습니다. 이 경우 이산 인코딩을 이진 1- 인코딩으로 변환해야합니다 .f(wx+b)wbk

실수 변수의 경우 변수를 실수 값으로 두십시오 (그러나 입력을 정규화하십시오). 예를 들어 동물과 동물의 온도라는 두 가지 입력 변수가 있다고 가정합니다. 당신은 1 외에 동물을 변환 할 거라고 , = 동물의 수, -는대로 온도를 떠날 것입니다.kk


간단히 말해, 척도, 서수 및 명목과 같은 변수의 척도를 가리 킵니다. 공칭 스케일을 "계산"하거나 함수로 표현할 수없는 것은 분명합니다. 실제 가치에 관해서는, 나는 당신처럼 실제 가치가 매끄러운 분류로 인해 분류 된 실제 가치보다 "더 나은"것이라고 생각하는 경향이 있지만, 나는 그에 대한 확실한 증거를 찾지 못했습니다. 나에게 "시련과 오류"의 또 다른 사례 인 것 같습니다.
cirko

4

네, 있습니다. 이진 분류기를 작성하는 것이 목표라고 상상해보십시오. 그런 다음 문제 벡터가 주어지면 결과가 한 클래스 또는 반대 클래스에 속하는 Bernoulli 분포를 추정하는 것으로 문제를 모델링합니다. 이러한 신경망의 출력은 조건부 확률입니다. 0.5보다 크면 클래스에 연결하고 그렇지 않으면 다른 클래스에 연결합니다.

올바르게 정의하려면 출력이 0과 1 사이 여야하므로 레이블을 0과 1로 선택하고 교차 엔트로피를 최소화하십시오. 여기서 는 네트워크의 출력이고 는 학습 샘플의 목표 값입니다. 따라서 합니다. y ( x ) t t { 0 , 1 }

E=y(x)t(1y(x))1t
y(x)tt{0,1}

정규화 된 입력이 가변 범위의 입력 값보다 선호되어야한다는 것을 이해합니다. 이는 네트워크가 생성하는 이진 출력과 더 유사하기 때문입니다. 그러나 내 질문에, 특정 범위의 정규화 된 이산 값 을 언급하고 싶었습니다 . 즉, 입력이 범위 내에있을 수 있다면 모든 노드는 동일한 범위를 가져야합니다. 이 경우 각 이산 값에 이진 노드를 사용하는 것이 여전히 바람직합니까? (이제 전제 조건을 충족시키기 위해 질문을 편집했습니다)
cirko

1

또한 문제를 해결할 때도 같은 딜레마에 직면했습니다. 두 가지 아키텍처를 모두 시도하지는 않았지만 입력 변수가 이산 적이라면 신경망의 출력 기능은 임펄스 기능의 특성을 가지며 신경망은 임펄스 기능 모델링에 능숙합니다. 실제로 모든 기능은 신경망의 복잡성에 따라 다양한 정밀도로 신경망으로 모델링 될 수 있습니다. 유일한 차이점은 첫 번째 아키텍처에서는 입력 수를 늘리므로 임펄스 함수를 모델링하기 위해 첫 번째 숨겨진 레이어의 노드에서 더 많은 가중치가 필요하지만 두 번째 아키텍처의 경우 첫 번째 아키텍처와 비교하여 숨겨진 레이어에서 더 많은 노드가 필요하다는 것입니다 동일한 성능을 얻을 수 있습니다.

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