역 전파없이 신경망을 훈련시킬 수 있습니까?


94

많은 신경망 서적과 자습서는 백 그라디언트 알고리즘에 많은 시간을 소비하는데, 이는 기본적으로 그래디언트를 계산하는 도구입니다.

~ 10K 매개 변수 / 무게로 모델을 작성한다고 가정 해 봅시다. 그라디언트 프리 최적화 알고리즘을 사용하여 최적화를 실행할 수 있습니까?

수치 구배 계산이 너무 느리다고 생각하지만 Nelder-Mead, Simulated Annealing 또는 Genetic Algorithm과 같은 다른 방법은 어떻습니까?

모든 알고리즘이 로컬 최소값으로 어려움을 겪습니다. 그래디언트에 집착하는 이유는 무엇입니까?



6
@FranckDernoncourt 내가 "왜 사용하지로 다른 질문을 해석 글로벌 이 하나 더 반면"왜 사용하지, 신경 네트워크를 양성하는 최적화 기법을? " 파생 상품 무료 ... optimzers을".
GeoMatt22

6
3 가지의 답이 올랐을 때, 이것은 나에게 대답하기에는 너무 넓지 않은 것 같습니다.
gung

5
네, Nelder-Mead가 최소한으로 국한되는 것에 대해 걱정할 필요가 없습니다. 유용한 곳이라면 운이 좋을 것이기 때문입니다.
Mark L. Stone

1
BTW, ultra L-BFGS는 그 소용돌이를냅니다. 그것은 좋을지 모르지만 아마도 신경망에서 아무도 시도조차하지 않았을 것입니다. p.10의 식 2.9를 참조하십시오. maths.dundee.ac.uk/nasc/na-reports/NA149_RF.pdf (종이에서는 ultra BFGS라고 불림 )의 12 개 (앞의 몇 페이지를 읽고 공식을 이해해야 함) "B"(제한된 메모리) 버전으로 들어가서 BFGS가 아니라 ultra L-BFGS가되도록하십시오. 비 L 버전은 논문에 나와 있습니다. Ultra BFGS는 기본적으로 수프 업 ( "핫로드") BFGS입니다. 속도는 더 빠를 수 있지만 약간 더 거칠 수 있습니다.
Mark L. Stone

답변:


80

언급 한 처음 두 알고리즘 (Nelder-Mead 및 Simulated Annealing)은 일반적으로 최적화 분야에서 거의 쓸모없는 것으로 간주됩니다. 더 신뢰할 수 있고 비용이 덜 드는 대안이 많이 있기 때문입니다. 유전자 알고리즘은 광범위한 범위를 포괄하며이 중 일부는 합리적 일 수 있습니다.

그러나 광범위한 파생 파생 최적화 (DFO) 알고리즘에는 최근 수십 년 동안 활발한 연구 영역이 있었기 때문에 이러한 "클래식"보다 훨씬 우수한 알고리즘이 많이 있습니다. 그렇다면 이러한 새로운 접근법 중 일부가 딥 러닝에 합리적일까요?

최신 기술을 비교 한 비교적 최근의 논문은 다음과 같습니다.

Rios, LM, & Sahinidis, NV (2013) 파생없는 최적화 : 알고리즘 검토 및 소프트웨어 구현 비교. 글로벌 최적화 저널.

이 논문은 최근 기술에 대한 많은 흥미로운 통찰력을 가진 좋은 논문입니다. 예를 들어, 결과는 최상의 로컬 최적화 프로그램이 서로 다른 형식의 순차적 이차 프로그래밍 (SQP)을 사용하여 모두 "모델 기반"임을 분명히 보여줍니다 .

그러나 초록에서 언급했듯이 "우리는 이러한 모든 솔버가 우수한 솔루션을 얻는 능력이 문제의 크기가 커짐에 따라 줄어든다는 것을 알게되었습니다." 숫자에 대한 아이디어를 제공하기 위해 모든 문제에 대해 솔버는 2,500 개의 기능 평가 예산을 제공 받았으며 문제 크기는 최적화하기 위해 최대 ~ 300 개의 매개 변수였습니다. O [10] 매개 변수를 넘어서서, 이러한 최적화 프로그램 중 아주 적은 수의 성능이 매우 우수했으며, 심지어 가장 좋은 것조차도 문제의 크기가 증가함에 따라 성능이 눈에 띄게 감소했습니다.

따라서 차원이 매우 큰 문제의 경우 DFO 알고리즘은 파생 기반 알고리즘과 경쟁하지 않습니다. PDE (부분 미분 방정식) 기반 최적화 는 일부 관점을 제공하기 위해 차원 문제가 매우 큰 또 다른 영역입니다 (예 : 큰 3D 유한 요소 격자의 각 셀에 대한 여러 매개 변수). 이 영역에서 " 인접한 방법 "은 가장 많이 사용되는 방법 중 하나입니다. 또한 순방향 모델 코드의 자동 차별화를 기반으로하는 기울기 하강 최적화 프로그램입니다.

고차원의 DFO 옵티 마이저에 가장 가까운 것은 아마도 Ensemble Kalman Filter 일 것입니다. 날씨 모델과 ​​같은 복잡한 PDE 시뮬레이션으로 데이터를 동화하는 데 사용됩니다. 흥미롭게도, 이것은 본질적으로 SQP 접근법이지만 베이지안-가우시안 해석을 가지고 있습니다 (따라서 2 차 모형은 양의 명확한 모델입니다. 즉, 안장 점이 없습니다). 그러나 이러한 응용 프로그램의 매개 변수 또는 관찰 수는 딥 러닝에서 볼 수있는 것과 비슷하다고 생각하지 않습니다.

참고 사항 (로컬 최소값) : 딥 러닝에 대해 읽은 내용 중 작은 부분부터는 로컬 최소값보다 안장 점이 있다고 생각합니다 . 이는 고차원 NN- 파라미터 공간에 가장 문제가됩니다.

예를 들어, Nature 의 최근 리뷰 에 따르면 "최근의 이론적 및 경험적 결과는 로컬 최소값이 일반적으로 심각한 문제가 아니라는 것을 강력하게 시사합니다. 대신, 경사도가 0 인 여러 안장 점이 조합되어 있습니다. 표면은 대부분의 치수에서 위로 구부러지고 나머지는 아래로 구부러집니다. "

관련 우려는 로컬 최적화와 글로벌 최적화에 관한 것입니다 (예 : 이 질문 은 의견에서 지적). 딥 러닝은하지 않지만 경험상 과적 합은 분명히 유효한 문제입니다. 제 생각에는 전역 최적화 방법이 "자연적인"데이터에 크게 의존하지 않는 엔지니어링 설계 문제에 가장 적합 합니다. 데이터 동화 문제에서 현재의 모든 최소값은 새로운 데이터 추가시 쉽게 변경 될 수 있습니다 (캐비티 : 내 경험 데이터가 일반적으로 모델 용량에 비해 "희소"한 지구 과학 문제에 집중되어 있습니다).

흥미로운 관점은 아마도

O. Bousquet & L. Bottou (2008) 대규모 학습의 균형. NIPS.

왜 그리고 언제 대략적인 최적화가 바람직한 지에 대한 반 이론적 논증을 제공합니다.

참고 사항 (메타 최적화) : 그래디언트 기반 기술이 네트워크 학습에 지배적 인 것처럼 보이지만 메타 최적화 작업과 관련하여 DFO의 역할이있을 수 있습니다.

한 가지 예는 하이퍼 파라미터 튜닝입니다. 흥미롭게도 Rios & Sahinidis 의 성공적인 모델 기반 DFO 옵티마이 저는 본질적으로 실험 디자인 / 응답 표면 문제를 해결하는 것으로 볼 수 있습니다 .

다른 예로는 계층 설정 (예 : 숫자, 유형, 순서, 노드 / 계층) 측면에서 아키텍처를 설계 할 수 있습니다. 이 이산 최적화 문맥에서 유전자형 알고리즘이 더 적합 할 수있다. 여기서는 이러한 요소 (예 : 완전히 연결된 레이어, 회선 레이어 등)에 의해 연결성 이 암시 적으로 결정 되는 경우를 생각하고 있습니다. 즉, 연결은 명시 적으로 메타 최적화 . (연결 강도는 정규화 및 / 또는 ReLU 활성화에 의해 희소성이 향상 될 수있는 훈련에 해당 합니다. 그러나 이러한 선택 은 메타 최적화 될 수 있습니다.)O[N2]notL1


1
당신이 인용하는 '검토'는 신경망의 주요 지지자들로부터 나온 것이다. 나는 지역 최소에 대한 주장에 의문을 제기 할 것이다. NN에 대한 잘 알려진 이론적 비판은 복잡한 모델이 지역 최소에 갇히기 때문에 그래디언트 디센트에 의해 최적화 될 수 없다는 것이다. 배경으로 해결할 수 있고 성공에 대해 듣지 못하는 nns의 성공 여부는 확실하지 않습니다.
seanv507

2
@ GeoMatt22 대조적 발산은 RBM이 적용되는 특수 모델 클래스의 기울기에 대한 특별한 근사치입니다. RBM은 확률 론적 모형으로, 최대 가능성 추정치의 구배가 다루기 어려운 특정 종류의 분포를 암시합니다. 신경망은 계산 모델로, 예를 들어 힌지 손실 최적화를 통해 확률 론적 시작점없이 사용할 수 있습니다. 간단히 말해 CD는 신경망을 최적화하는 일반적인 수단이 아닙니다.
bayerj

2
@ seanv507 주요 지지자들에 의해 주장이 제기되었지만 기계 학습의 최고 회의에서 동료의 검토를 거친 기사가 있습니다 (예 : arxiv.org/abs/1406.2572) . 지금까지, 그 주장은 이론적 논증과 경험적 증거로 인해 광범위한 ML 커뮤니티에서 널리 받아 들여지고 있습니다. 나는 여기에 ad hominem 논쟁이 적절하다고 생각하지 않습니다.
bayerj

1
DL 이론이 부족하다는 데 동의합니다. 아직도 당신은 이와 같은 기사가 그것을 발전시키고 있음을 인정해야합니다. 기사에 잘못된 결과가 표시되고 결론 (예 : "로컬 최소값이 안 장점보다 문제가 적음")이 유효하지 않다고 판단되는 경우, 이번에는 또 다른 임시 공격을 언급하는 것보다 낫습니다. ML 커뮤니티 전체.
bayerj

1
최근 연구에 따르면 임의 초기화를 사용하면 경사 하강이 안장 점이 아니라 로컬 최소값으로 수렴합니다. 여기에 논문 : arxiv.org/abs/1602.04915 및 블로그 게시물 여기에 : offconvex.org/2016/03/24/saddles-again 반면에, 대규모 신경망에서는 국소 최소값이 대한 글로벌만큼 좋은, 여기에 설명 : stats.stackexchange.com/questions/203288/...
DavidR

12

사용할 수있는 모든 종류의 로컬 검색 알고리즘이 있으며 역전 파는 일반적으로 보다 복잡한 작업 가장 효율적인 것으로 입증되었습니다 . 다른 지역 검색이 더 나은 상황이 있습니다.

신경망에서 랜덤 스타트 언덕 오르기 를 사용 하면 괜찮은 솔루션을 신속하게 찾을 수 있지만 거의 최적의 솔루션을 찾는 것은 불가능합니다.

Wikipedia (나는 가장 큰 출처는 아니지만 여전히 알고 있음)

고정 된 시간 내에 정확한 국소 최적을 찾는 것이 허용 가능한 국소 최적을 찾는 것보다 덜 중요한 문제의 경우, 구배 하강과 같은 대안보다 모의 어닐링이 바람직 할 수있다.

출처

유전자 알고리즘에 관해서는 신경망 훈련을위한 역 전파 vs 유전자 알고리즘

내가 backprop에 대한 주요 사례는 그것이 매우 널리 사용되고 많이 개선 되었다는 것입니다 . 이 이미지는 실제로 바닐라 역 전파에 대한 놀라운 발전을 보여줍니다.

나는 backprop를 하나의 알고리즘이 아니라 알고리즘 클래스라고 생각합니다.

또한 신경망의 경우 10k 매개 변수가 작은 콩이라는 것을 추가하고 싶습니다. 또 다른 검색은 훌륭하지만 수백만 개의 매개 변수가있는 딥 네트워크에서는 거의 실용적이지 않습니다.


12

음, 70 년대의 역 전파 혁명 이전의 원래 신경망은 수작업으로 "훈련되었습니다". :)

그 말은 :

역 전파를 사용하지 않는 익스트림 러닝 머신 이라는 "학습"머신 러닝 이 있습니다.

그들이하는 일은 무작위 가중치를 가진 수많은 노드가 많은 신경망을 만든 다음 선형 회귀와 같은 최소 제곱을 사용하여 마지막 레이어를 훈련시키는 것입니다. 그런 다음 신경망을 정리하거나 마지막 단계에서 올가미와 같은 정규화를 적용하여 과적 합을 피합니다. 나는 이것이 숨겨진 레이어 하나만있는 신경망에 적용되는 것을 보았다. 훈련이 없으므로 매우 빠릅니다. 나는 약간의 테스트를했고 놀랍게도 이러한 신경망은 이런 식으로 "훈련"되었다는 것은 매우 정확하다.

적어도 내가 같이 일하는 사람들 대부분은이 기계 학습을 "학교"로 조롱하고 그들 자신의 회의 등을 가진 소외된 그룹이지만 실제로는 그것이 독창적이라고 생각합니다.


또 다른 요점 : 역 전파 내에서, 탄력성 역 전파처럼 거의 언급되지 않는 대안이 있는데 , 이는 neuralnet패키지 에서 R로 구현되며 , 미분의 크기 만 사용합니다. 이 알고리즘은 선형 대수 대신 if-else 조건으로 구성됩니다. 그것들은 전통적인 역 전파에 비해 몇 가지 장점이 있습니다. 즉, 사라지는 기울기 문제로 인해 데이터를 정규화 할 필요가 없습니다 .


운전실은 네 번째 단락에서 (대부분 또는 전부) 스파이를 수행 한 다음 결과를 "미세 조정"하기위한 미분 기반 최적화의 시작점으로 사용합니다.
Mark L. Stone

1
@ MarkL.Stone 나는 후자에 선형 회귀를 적용하여 역 전파를 한 사람을 모른다. 그래도 흥미있는 것 같습니다.
Ricardo Cruz

1
내가 아는 한, ELM에 대한 논쟁은 주로 구현이 아니라 윤리적 인 측면에 기인합니다. 슈미트 (Schmidt) 등은 이미 1992 년에 무작위 가중치를 가진 그들의 피드 포워드 네트워크 (Feedforward Network)로이 주제를 다루었습니다.
Firebug

3

거의 모든 수치 최적화 알고리즘을 사용하여 신경망의 가중치를 최적화 할 수 있습니다. 혼합 된 연속-이산 최적화 알고리즘을 사용하여 가중치뿐만 아니라 레이아웃 자체 (레이어 수, 각 레이어의 뉴런 수, 뉴런 유형)를 최적화 할 수도 있습니다. 그러나 "차원의 저주"와 어떤 식 으로든 로컬 최적화를 겪지 않는 최적화 알고리즘은 없습니다.


3

다른 네트워크를 사용하여 매개 변수를 업데이트하는 방법을 조언 할 수도 있습니다.

Google Deepmind 의 Decoupled Neural Interfaces (DNI) 가 있습니다. 역 전파를 사용하는 대신 다른 신경망 세트를 사용하여 매개 변수를 업데이트하는 방법을 예측하여 병렬 및 비동기 매개 변수를 업데이트 할 수 있습니다.

이 백서는 DNI가 RNN의 훈련 속도와 모델 용량을 증가시키고 다양한 작업에서 RNN과 FFNN 모두에 대해 비슷한 결과를 제공함을 보여줍니다.


이 논문은 또한 다른 많은 비 역 전파 방법을 열거하고 비교했습니다.

우리의 합성 그래디언트 모델은 그래디언트 상승 [2]에 사용되는 값 함수 또는 부트 스트랩에 사용되는 값 함수와 가장 유사합니다. 역 전파를 제거하려는 대부분의 다른 작업은 생물학적으로 그럴듯한 신용 할당을 수행한다는 목표로 수행되지만 계층 간 업데이트 잠금을 제거하지는 않습니다. 예를 들어, 목표 전파 [3, 15]는 적합해야하는 목표 활성화를 생성함으로써 층들 사이의 구배 변화에 대한 의존성을 제거한다. 그러나 이러한 대상은 여전히 ​​순차적으로 생성되어 네트워크를 통해 뒤로 전파되므로 레이어는 여전히 업데이트 및 뒤로 잠금됩니다. 다른 알고리즘은 손실 또는 보상이 각 계층에 직접 브로드 캐스트되도록 허용하여 역방향 잠금을 제거합니다 (예 : REINFORCE [21] (모든 활성화는 동작 고려).1정책 그라디언트 코 에이전트 네트워크 [20] – 결과 (또는 글로벌 비평가)가 보상을 생성해야하기 때문에 여전히 업데이트가 잠겨 있습니다. 실시간 반복 학습 [22] 또는 [17]과 같은 근사치가 업데이트 잠금을 제거하는 유망한 방법으로 보일 수 있지만 이러한 방법을 사용하려면 매개 변수와 관련하여 현재 상태의 전체 (또는 근사) 기울기를 유지해야합니다. 이는 본질적으로 확장 할 수 없으며 옵티마이 저가 네트워크 상태에 대한 글로벌 지식을 가지고 있어야합니다. 반대로 DNI와의 로컬 통신 문제로 계층 간 상호 작용을 프레임 화함으로써 학습 시스템에 대한 글로벌 지식이 필요하지 않습니다. [4, 19]와 같은 다른 연구에서는 역 전파없이 레이어를 동시에 학습 할 수 있습니다.


2

이것이 커뮤니티 질문 인 한 다른 응답을 추가 할 것이라고 생각했습니다. "Back Propagation"은 단순히 경사 하강 알고리즘입니다. 로컬 최소값 또는 최대 값을 찾으려는 함수의 첫 번째 파생 함수 만 사용합니다. 뉴턴 법 (Newton 's method) 또는 뉴턴-라프 슨 (Newton-Raphson)이라는 또 다른 방법이 있는데, 이는 헤 시안 계산을 포함하고 따라서 2 차 도함수를 사용합니다. 경사 하강에 실패한 경우에 성공할 수 있습니다. 나는 나보다 더 많은 지식을 가진 다른 사람들에게 들었습니다. 그렇습니다. 이것은 권위에 대한 간접적 인 호소입니다. 모든 이차 미분 값을 계산하는 것은 계산 측면에서 너무 비싸기 때문에 신경망에는 사용되지 않습니다.

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