본문 바로가기

AI/이론

[ML] End-to-End Deep Learning

End-to-End Deep Learning

  • 딥러닝은 종단간 기계학습(end-to-end deep learning)이라고도 불린다.
  • 여기서 '종단간'은 처음부터 끝까지라는 의미로,
  • 입력에서 출력까지 파이프라인 네트워크 없이 한 번에 처리한다는 뜻이다.
  • 파이프라인 네트워크란, 전체 네트워크를 이루는 부분적인 네트워크를 뜻한다.

하지만, End-to-End Deep Learning은 만능이 아니다.

  • end-to-end deep learning 을 사용하기 위해서는, 파이프라인 네트워크 없이도 잘 동작 할 만큼의 많은 데이터가 필요하다.
    • 문제가 복잡할 수록, 전체 문제(전체 네트워크)를 간단한 문제(파이프라인 네트워크)로 나눠서 해결하는 것이 효율적일 때도 있기 때문이다.
    • 데이터의 정보가 각각의 파이프라인에 더 적합하게 사용될 수 있다.
  • 또한, 신경망에 너무 많은 계층의 노드가 있거나 메모리가 부족할 경우 사용할 수 없다.

 

 

 

[DL] End-to-End Deep Learning이란?

End-to-End Deep Learning 딥러닝은 종단간 기계학습(end-to-end deep learning)이라고도 불린다. 여기서 '종단간'은 처음부터 끝까지라는 의미로, 입력에서 출력까지 파이프라인 네트워크 없이 한 번에 처리

wooono.tistory.com

 

 이전 예와 동일한 음성 파이프라인을 고려해보자.

위의 파이프라인의 대부분 요소들은 "수동적으로 조절되어야 한다(hand-engineered):

 

 위 시스템은 수동적으로 생성되는 지식들이 빠져있다. 그렇기 때문에 학습 데이터 군이 적을 경우에는 앞에서 소개한 손으로 직접 설계된 파이프라인 구조보다 더 안 좋게 동작할 수 있다.

 하지만 만약 학습 데이터가 많이 있다면, 굳이 MFCC나 음소 기반의 정보로 인해 걸리는 제한에 방해받을 필요가 없다. 만약 학습 알고리즘이 충분히 큰 신경망으로 구성되어 있고, 충분한 학습 데이터로 학습된다면, 아마 잘 동작할 것이고, 어쩌면 이상적인 오류율에 도달할 것이다.

  End-to-end 학습 시스템은 "양끝단"(보통 입력 끝단과 출력 끝단을 말한다)상에서 라벨링된 데이터가 많을 때 잘 동작하는 경향이 있다. 위의 예제에서는 아마 (음성 데이터와 번역된 결과) 쌍으로 구성된 데이터가 많이 필요하다. 이런 형식의 데이터를 사용하기 어려운 상황이라면, end-to-end 학습을 적용하는 것은 굉장히 조심해야 한다.

 만약 학습 데이터가 매우 작은 상황에서 머신 러닝 문제를 풀어야 한다면, 사용해야할 알고리즘의 기반 지식의 대부분은 당신이 "손으로 직접 다루는" 요소와 같이 인간이 느끼는 직감으로부터 나와야만 한다.

 만약 end-to-end 시스템을 사용하지 않는다면, 파이프라인 상에서 어떤 과정을 거쳐할 것이며, 어떤 과정을 서로 연관시킬 것인지를 결정해야 한다.

 

 

 

 

[MLY] end-to-end 학습의 장단점

 이전 예와 동일한 음성 파이프라인을 고려해보자. 위의 파이프라인의 대부분 요소들은 "수동적으로 조절되어야 한다(hand-engineered):  - MFCC는 일종의 수동적으로 생성되는 음성 특징의 집합체이

talkingaboutme.tistory.com