VC 차원이 좋지 않더라도 딥 러닝이 과장되는 이유는 무엇입니까?


86

Vapnik-Chervonenkis (VC) - 차원 신경망 수식 내지 에 와, 최악의 경우에, 엣지의 수이고 노드 수입니다. 일반화를 강력하게 보장하는 데 필요한 교육 샘플 수는 VC 치수와 선형입니다.O(E)O(E2)O(E2V2)EV

즉, 성공적인 딥 러닝 모델의 경우와 같이 수십억 개의 에지가있는 네트워크의 경우 훈련 데이터 세트에 가장 좋은 경우 수십억 개의 훈련 샘플이 필요하고 최악의 경우에는 수십억이 필요합니다. 가장 큰 훈련 세트는 현재 약 1,000 억 개의 샘플을 가지고 있습니다. 교육 데이터가 충분하지 않기 때문에 딥 러닝 모델이 일반화되지는 않습니다. 대신, 그들은 훈련 데이터를 과적 합하고 있습니다. 이는 머신 학습에 바람직하지 않은 특성 인 훈련 데이터와 다른 데이터에서 모델이 제대로 작동하지 않음을 의미합니다.

VC 차원 분석에 따르면 딥 러닝을 일반화 할 수 없다는 점을 감안할 때 딥 러닝 결과가 왜 그렇게 과장된 것일까 요? 일부 데이터 세트에서 정확도가 높다고해서 그 자체로는 큰 의미가 없습니다. VC 차원을 크게 줄이는 딥 러닝 아키텍처에 특별한 것이 있습니까?

VC 차원 분석이 적절하지 않다고 생각되면 딥 러닝이 일반화되고 과적 합하지 않다는 증거 / 설명을 제공하십시오. 즉, 리콜 및 정밀도가 좋습니까? 100 % 리콜은 100 % 정밀도와 마찬가지로 달성하기가 쉽지 않습니다. 둘 다 100 %에 가까워지는 것은 매우 어렵습니다.

반대로, 딥 러닝이 지나치게 적합 하다는 증거 가 있습니다. 과적 합 모델은 결정적 / 확률 적 노이즈를 통합했기 때문에 속이기 쉽습니다. 과적 합의 예는 다음 이미지를 참조하십시오.

언더 피팅, 피팅 및 오버 피팅의 예.

또한 테스트 데이터의 정확도가 높음에도 불구하고 과적 합 모델의 문제를 이해하려면 이 질문 에 대한 순위가 낮은 답변을 참조하십시오 .

일부는 정규화 가 큰 VC 차원 의 문제해결 한다고 응답했습니다 . 자세한 내용은 이 질문 을 참조하십시오 .


의견은 긴 토론을위한 것이 아닙니다. 이 대화는 채팅 으로 이동 되었습니다 .
DW

7
왜 "hyped"가 좋은지에 대한 질문은 생각하지 않습니다. 대답은 "사람이기 때문에"입니다. 사람들은 마케팅을 포함하여 과다한 이유 때문에 사물에 관심을 갖습니다.
luk32

딥 러닝은 실제로 작동합니다. 지나치게 적합 할 수 있습니다. 완전히 정당화되지 않았을 수 있습니다. 타락한 신으로부터 우주의 비밀을 배우는 것일 수 있습니다. 그러나 과대 광고는 갑자기 코드에 30 줄을 쓰고 서명을 스캔하고 은행 거래를 확인하기 위해 저장된 것과 일치하도록 카메라를 가르치는 실무자들로부터 나옵니다. 또는 사진에서 알 수없는 사람들을 태그하십시오. 아마도 당신은 "만약 그것이 사실이라면 모욕이 아님"이라는 말을들은 적이 있습니까? 잘 작동한다면 과대 광고가 아닙니다. 작동하지 않는 많은 문제와 과도한 인기 과대 광고가 있습니다. 그러나 실제 응용 프로그램에서는 작동합니다.
Stella Biderman

@StellaBiderman 표준 머신 러닝 기술을 중심으로 한 툴링의 용이성은 훌륭합니다. 그러나 관심은 아마도 인간의 능력에 필적하는 DNN의 학습 능력과 더 관련이있는 것으로 보입니다. 이는 모델의 VC 분석으로 인해 과대 광고로 보입니다. 이러한 높은 VC 치수는 모델이 일반화되지 않고 대신 데이터 세트를 암기하여 매우 부서지기 쉽다는 것을 의미합니다. 모든 적대적인 예제 논문이이 점을 보여주는 것으로 보입니다.
yters

@gerrit 나는 편집이 그다지 도움이되지 않았는지 확신하지 못한다. 나는 더 많은 사람들이 그것이 무엇을 의미하는지 아는 것보다 VC 차원이 무엇인지 알고 있다고 확신합니다.
David Richerby

답변:


75

"지도와 지형이 일치하지 않으면 지형을 신뢰하십시오."

왜 딥 러닝이 효과를 발휘하는지 이해하지 못하지만 VC 차원과 같은 학습 이론의 오래된 개념은 그다지 도움이되지 않는 것으로 보입니다.

이 문제는 뜨거운 논쟁을 불러 일으킨다.

대적 사례 의 문제와 관련하여 문제는 다음에서 발견되었습니다.

다음에서 추가로 개발됩니다.

많은 후속 작업이 있습니다.


의견은 긴 토론을위한 것이 아닙니다. 이 대화는 채팅 으로 이동 되었습니다 .
DW

당신은 "많은 후속 작업이 있습니다"라고 말할 때 당신은 지난 2014 년 논문을 언급하고 있습니까? 당신이 언급 한 첫 두 논문은 상당히 최근입니다. 당신이 말하는 논문으로 업데이트 할 수 있습니까?.
VF1 2016 년

2
"지도와 지형이 일치하지 않으면 지형을 신뢰합니다." 수학이해야하는지에 관계없이 모델은 실제로 실제로 잘 작동합니다. 과학적 관점에서, 이것은 항상 그리고 어떤 일이 문제를 더욱 흥미롭게 만드는 경우에 발생합니다. Razborov와 Rudich의 Natural Proofs에 관한 연구를 읽은 사람은 아무도 없었습니다. 그들은 대수 기하학을 사용하여 복잡도 이론을 수행하는 것이 가능할 수 있다고 생각했습니다. 과학의 관점에서, 우리의 이해를 초월하는 문제는 악화하지.
Stella Biderman

65

"VC 차원 분석에 따르면 딥 러닝의 일반화가 불가능 해짐 ...]

아니요, VC 치수 분석에서는 그렇지 않습니다. VC 치수 분석은 일반화가 보장되는 충분한 조건을 제공합니다. 그러나 대화가 반드시 그런 것은 아닙니다. 이러한 조건을 충족하지 않아도 ML 방법은 여전히 ​​일반화 될 수 있습니다.

달리 말하면, VC 학습은 VC 차원 분석이 기대하는 것보다 더 효과적입니다 (VC 예측은 "예측"보다 낫습니다). 그것은 VC 학습의 단점이 아니라 VC 차원 분석의 단점입니다. 딥 러닝에 결함이 있음을 의미하지는 않습니다. 오히려 딥 러닝이 왜 효과가 있는지 알지 못하며 VC 분석은 유용한 통찰력을 제공 할 수 없습니다.

높은 VC 차원은 딥 러닝을 속일 수 있음을 의미하지 않습니다. 높은 VC 치수는 실제 상황에서 바보가 될 수 있는지 여부를 전혀 보장하지 않습니다. VC 차원은 단방향, 최악의 경우를 제공합니다. 이러한 조건을 충족하면 좋은 일이 발생하지만 이러한 조건을 충족하지 않으면 어떤 일이 발생할지 알 수 없습니다 (어쨌든 여전히 좋은 일이 발생할 수 있음) 성격은 최악의 경우보다 더 나은 동작, VC 분석은 좋은 일을 약속하지 않습니다 수 없습니다 / 되지 않습니다 ) 발생합니다.

모델 공간의 VC 치수가 클 수 있지만 (가능한 한 매우 복잡한 패턴을 포함 함) 자연은 간단한 패턴으로 설명되며 ML 알고리즘은 자연에 존재하는 간단한 패턴을 학습합니다 (예 : 정규화로 인해). -이 경우 VC 치수는 높지만 모델은 일반화됩니다 (특성에 존재하는 특정 패턴에 대해).

즉 ... 적대적 사례에 의해 딥 러닝 속일 있다는 증거가 늘어나고 있습니다 . 그러나 당신의 추론 체인에주의하십시오. 당신이 그리는 결론은 당신이 시작한 구내에서 따르지 않습니다.


6
높은 VC 차원은 일반화하기가 더 어렵다는 것을 의미합니다 (어떤 의미에서는 적어도 임의의 분포를 다룰 때). 일반화의 오류 하한 정확히 VC 치수에 비해 작은 샘플 수를 들면, 어떤 알고리즘되도록 상대적 분포가 존재한다는 것을 의미를 높은 일반화 오류가 발생할 가능성이 높습니다. Ω(dn)
Ariel

5
"높은 VC 치수는 어떤 것도 보장하지 않습니다"에 대해 -1입니다. 이것은 사실이 아닙니다. 높은 VC 차원은 PAC 학습에 대한 샘플 복잡도 하한을 의미합니다. 정답은 최악의 경우와 "실제"분포를 모두 다루어야합니다.
Sasho Nikolov

1
@SashoNikolov, 좋은 지적-감사합니다! 편집했습니다.
DW

이 게시물은 품질이 낮았습니다. 내용, 길이, 투표 및 품질을 감안할 때 이것은 말도 안되며 여기를 가리 키지 만 실제로 잘못 되었기 때문에 메타가 필요할 수 있습니다.
0:02의

23

업계 사람들은 VC 차원, 훌리건을 고려하지 않습니다 ...

더 중요한 것은 PAC 모델이 학습에 대해 생각할 수있는 우아한 방법이지만 (적어도 제 생각에는) 흥미로운 개념과 질문 (예 : VC 차원 및 샘플 복잡성과의 연관성)을 일으킬 정도로 복잡합니다. 실제 상황과는 거의 관련이 없습니다.

PAC 모델에서는 임의의 분포를 처리해야하므로 알고리즘에서 적분 분포를 처리해야합니다. 현실 세계에서 어떤 현상을 배우려고 할 때 결과를 엉망으로 만드는 "적대적 데이터"를 제공하는 사람은 아무도 없으므로 PAC를 배울 수있는 개념 클래스를 요구하는 것은 너무 강력 할 수 있습니다. 때로는 특정 분포 클래스에 대해 VC 차원과 독립적으로 일반화 오류를 바인딩 할 수 있습니다. 이것은 VC 치수와 독립적으로 공식화 된 마진 범위의 경우입니다. 높은 경험적 마진을 보장 할 수있는 경우 일반화 오류가 낮을 수 있습니다 (물론 모든 분포에 대해 발생할 수는 없습니다 (예 : 반대쪽 태그가있는 평면에서 두 개의 가까운 점을 가져 와서 분포에 집중)).

따라서 PAC 모델과 VC 차원을 제쳐두고, 과대 광고는 그들이 작동하는 것처럼 보이고 이전에는 불가능했던 작업에서 성공했다고 생각합니다 (최신 성과 중 하나는 AlphaGo입니다). 나는 신경망에 대해 거의 알지 못하므로 더 많은 경험을 가진 사람이 참여하기를 바랍니다. 그러나 내 지식으로는 아직 좋은 보장이 없습니다 (PAC 모델과 완전히 다릅니다). 아마도 올바른 가정하에 신경망의 공식적인 성공을 정당화 할 수있을 것입니다. (나는 신경망의 공식적인 치료와 "딥 러닝"에 관한 연구가 있다고 가정하므로, 주제에 대해 더 많은 지식을 가진 사람들이 논문을 연결할 수 있기를 바랍니다) .


의견은 긴 토론을위한 것이 아닙니다. 이 대화는 채팅 으로 이동 되었습니다 .
DW

15

딥 러닝이 일반화 할 수 없다는 점을 감안하면

어디서 가져 왔는지 모르겠어요 경험적으로 일반화는 보이지 않는 데이터의 점수 (예 : 정확도)로 간주됩니다.

CNN이 사용되는 이유는 간단합니다. CNN다른 것보다 훨씬 잘 작동합니다 . 예를 들어 ImageNet 2012를 참조하십시오.

  • CNN : 15.315 %
  • 비 CNN 최고 : 26.172 % 상위 5 오류 ( 소스 -CNN을 사용하지 않는 내 지식 기술까지 25 % 상위 5 오류 미만이 아님)

더 나은 분류기를 만들면 사람들이 그쪽으로 갈 것입니다.

업데이트 : 나는 딥 러닝에 대한 증거와 같이 일반적으로 기계 학습이 일반적으로 바보라는 출판 된 증거를 제공하는 사람에게 답변을 제공 할 것입니다.

그렇지 않다. 간단한 데이터 세트에서 매우 간단한 분류기를 만들 수 있습니다. 그것을 속일 수는 없지만 ( "쉬운"의미가 중요하지는 않지만) 흥미롭지는 않습니다.


3
낮은 오류는 일반화를 의미하지 않습니다. 필요하지만 충분하지 않은 조건입니다.
yters

3
@yters 일반화를 정의하십시오.
Martin Thoma

5
@yters,이 의견은 기계 학습에 대해 많이 읽지 않았다고 생각합니다. 마틴은 보이지 않는 데이터에 대한 정확성 밝혔다 . 훈련 데이터의 정확성에 대해 이야기하고 있습니다. 일반화가 무엇인지에 대해서는 기본적으로 정확하지만 여기의 다른 모든 사람들도 그 사실을 이해하고 있습니다 .
Ken Williams

1
@yters 나는 Ken (그리고 나 자신을 포함 하여이 사이트의 많은 사람들)이 이것을 알고 있다고 확신합니다. 그러나 테스트 세트가 데이터 세트를 나타내지 않으면 일반화에 대한 진술을 할 수 없습니다. 이 점을 명심해야 할 가치가 있지만, 이것이이 질문에 어떤 식으로 도움이되는지 모르겠습니다. 테스트 세트가 프로덕션 시간에 데이터를 나타내는 것으로 가정 / 확인해야합니다. 실제로 훈련 표본이 분포를 나타내지 않으면 분류기를 임의적으로 나쁘게 만들 수 있음을 보여주기가 정말 쉽습니다.
Martin Thoma

2
분명합니다. 모델이 잘못된 데이터에 대해 검증 된 경우 잘 일반화 될 것으로 기대할 수 없습니다. 더 나은 모델이 아닌 더 나은 데이터가 필요합니다.
Emre

9

한마디로 "정규화"입니다. 정규화에서는 가중치가 일반적이지 않아야하기 때문에 순진한 VC 치수 공식은 실제로 적용되지 않습니다. 정규화 후 무게 조합의 작은 (무한?) 비율 만 허용되는 손실이 있습니다. 결과적으로 실제 치수는 수십 배 적으므로, 우리가 가진 훈련 세트로 일반화가 발생할 수 있습니다. 실제 결과는 과적 합이 일반적으로 일어나지 않는다는 것을 나타냅니다.


2
실제 결과가 딥 러닝이 일반화되었다는 반복 주장을 보았습니다. 일반화를 보여주는 결과는 정확히 무엇입니까? 지금까지 내가 본 것은 DL이 특정 데이터 세트에서 낮은 오류율을 달성한다는 것입니다. 이는 DL 자체가 일반화되는 것을 의미하지는 않습니다.
yters

3
훈련되지 않은 데이터에 대해 좋은 결과 ( "좋은"= 다른 ML 방법보다 낫습니다)를 보여줍니다 . 실제로 일반화를 어떻게 측정하고 싶은지 잘 모르겠습니다.
lvilnis

3

딥 러닝을 이해하려면 일반화를 재고해야합니다. ...에서

일반화를 재고하려면 통계 학적 접근 방식과 복잡한 학습 행동 인 Charles H. Martin과 Michael W. Mahoney의 오래된 아이디어를 다시 검토해야합니다.

참조 : https://arxiv.org/pdf/1710.09553.pdf

기본적으로, 우리는 기본 접근 방식과 통계적 한계가 비현실적이기 때문에 VC 한계가 너무 느슨하다고 주장합니다.

더 나은 접근 방식은 통계적 역학에 있으며, 데이터 의존 함수 클래스를 고려한 열역학적 한계 (대수의 한계 만이 아님)

또한, 자연스럽게 불연속적인 불연속이 어떻게 학습 곡선에서 위상 전이로 이어지는 지 지적합니다.

한도에 대해서는 본 문서의 섹션 4.2를 참조하십시오.

"분명히 샘플 크기 m을 고정하고 [함수 클래스의 크기]를 N → ∞로하자 [또는 그 반대의 경우도 N을 수정하여 m → ∞]로한다면, 우리는 사소한 결과를 기 대해서는 안된다. N]은 커지지 만 표본 크기는 고정되어 있으므로 [통계 역학]에서는 일반적으로 α = m / N이 고정 상수가되도록 m, N → ∞ 인 경우를 고려합니다. "

즉, 딥넷에 더 많은 데이터 (m)를 추가하는 경우는 거의 없습니다. 우리는 데이터의 더 자세한 기능 / 정보를 캡처 할 수 있다는 것을 알고 있기 때문에 항상 그물 (N)의 크기도 늘립니다. 대신 우리는 실제로 논문에서 주장하는 것을 수행합니다 .m을 고정하고 N을 증가시키는 것과는 대조적으로 m / N 비율을 고정하여 큰 크기의 한계를 취하십시오.

이러한 결과는 통계적 학습 역학에 잘 알려져 있습니다. 분석은 더 복잡하지만 결과는 딥 러닝의 많은 현상을 설명하는 훨씬 더 풍부한 구조로 이어집니다.

또한, 특히 통계의 많은 범위가 사소하거나 비평 활 확률 분포에 적용되지 않거나 변수가 이산 값을 가질 때 알려져 있습니다. 신경망을 사용하면 불연속성 (활성화 기능에서)으로 인해 사소한 동작이 발생하여 열전이 한계에서 발생하는 위상 전이가 발생합니다.

우리가 쓴 논문은 컴퓨터 과학 청중에게 두드러진 아이디어를 설명하려고 시도합니다.

Vapnik 자신은 그의 이론이 신경망에 실제로 적용되지 않는다는 것을 깨달았습니다 ... 1994 년

"[VC 차원]을 멀티 레이어 네트워크로 확장하는 것은 [많은] 어려움에 직면 해 있습니다. 기존 학습 알고리즘은 네트워크가 구현할 수있는 전체 기능 세트에 대한 경험적 위험을 최소화하는 것으로 볼 수 없습니다 ... [왜냐하면] 검색은 [이러한] 기능의 하위 집합으로 제한됩니다 ...이 집합의 용량은 전체 집합의 용량보다 훨씬 낮을 수 있습니다 ... [및] 관측 횟수에 따라 변경 될 수 있습니다.
Vapnik, Levin, LeCun 1994 는 "능동적 인"기능의 하위 집합을 가진 비정규 용량 개념을 고려하는 이론을 요구할 수 있습니다.

http://yann.lecun.com/exdb/publis/pdf/vapnik-levin-lecun-94.pdf

VC 이론으로는 다루기가 쉽지 않지만, 이것은 통계 시스템에는 문제가되지 않습니다. (이것은 미래 논문의 주제가 될 것입니다)


이것은 흥미로운 것 같지만, 나는 당신의 주장을 잘 모르겠습니다. 첫 번째 문장, 즉 기본 접근 방식 / 통계 제한이 비현실적이며 통계 메커니즘을 이해하지 않아도되는 독립적 인 방식으로 구체화 할 수 있습니까? VC 경계는 어떤 가정을하는데 왜 비현실적입니까? 아마도 그 정보를 포함하도록 답변을 편집 할 수 있습니까?
DW

Vapnik과 LeCun (1994)이이 문제를 논의한 원작에 대한 언급을 추가했습니다.
Charles Martin

그리고 약간의 설명을 추가했습니다.
Charles Martin

1

위의 답변에서 인용 된 VC 치수 공식은 1 층 신경망에만 해당된다고 지적한 사람은 없습니다. 내 생각 에 레이어 수 L이 증가함에 따라 VC 치수가 실제로 기하 급수적 으로 증가한다는 것입니다. 내 추론은 활성화 기능이 다항식으로 대체되는 심층 신경망을 고려한 것입니다. 그런 다음 층이 증가함에 따라 구성된 다항식의 정도가 기하 급수적으로 증가합니다.

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