2

:대부분의 교육이 평균 0과 표준 1의 데이터에있는 경우 심층 학습이 실수 또는 수치 정밀도 오류를 겪지 않는 이유는 무엇입니까? 질문에 영감을

Why do different methods for solving Xc=y in python give different solution when they should not?

때문에, 포인트를 떠 행렬을 반전하고 [-1,1]에 값을 제한에 수치 문제를 갖고있는 것 같아요

, 제가 궁금 지금 왜 플로트에서 깊은 학습 고통을하지 않거나 대부분의 훈련이 평균 0과 표준 1의 데이터에있는 경우 숫자 정밀도 오류가 발생합니다 (데이터의 대부분이 해당 범위에 들어가기 위해 사전 처리되었다고 생각합니다. 배치 정규화의 높은 사용). 깊은 학습은 다항식을 매우 높게 만들어서 훈련을하지 않기 때문에입니까, 아니면 깊은 학습이 일반적으로 좋은 이유는 무엇입니까? SGD에 특별한 것이 있습니까? 아니면 (인기있는) 활성화 함수, relu, elu 등이 (높은 차수의 다항식과 비교하여) 수치 적으로 불안정하지 않습니까? 아니면 GPU 교육이 부동 소수점 표현을 모두 피할 수 있습니까? 또는 왜 심화 학습 훈련이 수치 적으로 안정적입니까?

답변

1

DL에 관해서는 정말 불가사의 한 것은 없습니다. 항상 수치 오류가 있습니다. 그러나 비선형 성의 규모와 수 때문에 DL에서의 수치 적 불안정성은 대개 무한 답이나 무한대로 이어지게됩니다. 결과적으로 그들은 보통 쉽게 발견 할 수 있습니다. 특히 [0,1] 간격에 대해서는 아무 것도 없습니다. 실제로는 float에 대한 유용한 저장 공간입니다 (예 : quarter of representable floats actually live in [0,1])! 당신이 말하고있는 문제는 기계의 정밀도에 위험한 정도의 엄청난 지수를 취하는 것에 있습니다. 표준 DL 기술 중 어느 것도 활성화의 30 배의 힘을 필요로하지 않습니다. 사실, 대부분의 성공적인 DL 기술 (시그 모이 드, tanhs 및 relus 기반)은 거의 선형이므로 수치 불안정성은 주로 확률 추정에서의 exp 연산에서 비롯됩니다.

그래서 :

  • 는 높은 수준의 다항식에 대해 그것을 무엇입니까? , 이것은 주요 문제이며 DL에서 발견되지 않습니다.
  • SGD에는 특별한 것이 있습니까? 그렇지 않아.
  • 활성화 기능에 관한 것입니까? 예, 그들은 그런 거대한 정밀도 방울을 내버려 두지 않습니다 (지수는 예외입니다. 수치 문제로 이어진다)
  • 은 수레를 피하는 GPU입니까? 아닙니다. GPU와 아무 관련이 없습니다.