Knowledge is Everything: Using Representation Learning to Optimize Feature Extraction and Knowledge Quality - 리뷰

2019. 12. 28. 14:51관심있는 주제/분석 고려 사항

728x90

Representation Learning 은 딥러닝에서 특징 추출과 지식 구축을 능률화하게 하는 가장 효과적인 기술 중 하나다.

최근 이 저자는 딥러닝 모델들에서 특징 추출의 중요성을 상기하게 해 준 몇 가지 일이 있었다고 한다.
그래서 저자는 딥러닝과 모델에서의 지식 품질의 원칙과 이러한 시나리오들에 대한 representation learning의 적용 가능성에 대해서 요약한 글이다.

인풋 데이터의 특징을 이해하는 것은 머신러닝 알고리즘들의 필수적인 능력이다.
주어진 인풋에서 머신러닝 모델들은 몇몇의 타겟 행동을 수행하기 위해서 뚜렷한 특징들을 추론할 필요가 있다.
Representation Learning이나 Feature Learning은 데이터셋의 representation의 이해나 특징을 추출을 다루는 머신 러닝의 하위 학문이다.

Representation learning은 매우 간단한 예로 설명된다. 
아래의 그림들안에서 기하학적인 모양을 인지하는 딥러닝 알고리즘을 사용하시오.

기하학적인 모양의 픽셀을 매칭 하기 위해서, 알고리즘을 처음에는 corner의 수 같은 데이터의 기본적인 features나 representation을 이해하는 것이 우선이 될 것이다.  이런 것을 representation learning의 역할이다.

Representation learning은 수십 년 동안 머신 러닝에서 확립된 분야였지만, 최근에는 딥러닝의 출현과 함께 관련성이 엄청나게 증가했다고 한다.
분류와 같은 전통적인 머신러닝 기술에서도 잘 정의된 데이터셋을 수학적으로 다룰동안, 딥러닝 모델은 이미지나 음성과 같이 잘 정의되어 있지 않은 feature에 대해서도 처리한다. 
이러한 경우, representation learning은 딥러닝 아키텍처에서 핵심 요소라고 할 수 있다.

representation의 핵심 문제는 인풋 데이터의 최적의 representation을 결정하는 것이다. 
이러한 관점에서 딥러닝은 representation의 품질이 학습 과정을 얼마나 용이하게 하는가에 주어진다.
현실 세계에선 학습 알고리즘과 한 모델의 잠재된 representation은 직접적으로 관련이 있다.


The No Free Lunch Theorem

만약 모델의 knowledge representation이 학습 알고리즘과 연관되어 있다면, 올바른 representation을 선택하는 것은 사소한 것이어야 한다, 그렇지 않은가?
우리는 간단히 최선의 성능을 보장해주는 학습 과제와 연관된 knowledge representation을 선택할 수 있다. 
이것이 간단하길 바라지만, 이러한 최적의 representation을 찾는 여행 동안 재빨리 오래된 친구를 찾게 되었다(No Free Lunch Theorem)(NFLT)

NFLT은 데이터 과학자들과 기술자가 곤혹스럽게 하는 수학적인 역설 중 하나이다. 용건만 간단히 말하면,
NFLT은 모든 가능한 데이터 생성 분포의 평균을 의미한다. 모든 머신 러닝은 이전에 관측되지 않았던 점을 처리할 때 거의 동일한 오류율을 가지고 있다고 기사 한다. (학습용 데이터셋에서 종속변수와 독립변수의 관계를 분석하고 이를 기반으로 모델을 만드는 것이므로 철저하게 학습용 데이터셋에서 종속됩니다. 출처: https://potensj.tistory.com/50 [개발 이야기]) 

  • 1. “모든 가능한 data-distribution이 평균적으로 나타날 때에는(뒤에 자세히 설명..)” 모든 알고리즘은 같은 error rate을 가진다.
  • 2. 따라서 어떤 알고리즘도 universally 하게 즉 모든 문제에 대해서 다른 알고리즘보다 좋을 수 없다.
  • 3. 모든 가능한 data-distribution이 평균적으로 나타날 때에는 우리가 만들어 낼 수 있는 제일 복잡한 알고리즘은 그냥 대충 같은 확률로 예측하는 알고리즘과 성능이 똑같다!
  • (https://ml-dnn.tistory.com/1)

즉 말하자면, 머신 러닝 알고리즘이 주어진 넓고 충분한 데이터보다 좋은 것은 없다입니다.

모든 type에 만족되는 알고리즘은 없다! 특정 task 마다 특정 algorithm이 좋다.

representation learning 관점에서 NFLT는 다양한 knowledge representation은 learning task에서 적응 가능하다는 것을 설명한다. 그렇다면 어떻게 우리는 경험적으로 한 knowledge representation과 다른 것에서 결정할 수 있을까?
답은 머신 러닝과 딥러닝에서 종종 무시되는 것이면서 핵심적인 것 중에 하나인 regularization이다.


Regularization

머신 러닝 알고리즘들 중에 핵심 과제는 training dataset 이외에 새로운 데이터셋에서도 잘 수행하는 것이다.
이러한 작업을 최적화하는 것이 regularization의 역할이다.
개념상으로, regularization은 training error의 영향 없이 test 또는 일반화의 오류를 감소하는 머신 러닝 알고리즘의 수정을 유도한다.

이제 본격적으로 시작되어 Regularization이 Representation Learning과 어떻게 관련되어 있는지 살펴봅시다.

이 관계는 매우 분명하다. knowledge representation의 품질은 근본적으로 효율적으로 지식을 일반화하는 능력과 관계되어 있다. 즉, knowledge representation은 training dataset 이외에 새로운 인풋에도 적응할 줄 알아야 한다. 
새로운 인풋과 일반화 오류를 감소하기 위해서 knowledge의 어떠한 representation도 regularization 기술들에 유용해야 한다. 그러므로 representation learning model의 품질은 직접적으로 다른 regularization 전략으로 작동하는 능력에 직접적으로 영향을 받는다.

다음 스텝은 regularization 전략들이 구체적으로 representation learning에 관련 있는지 이해하는 것이다. (이것은 다음 포스터에서라고 한다)

이제 정규화가 representation of knowledge를 개선하기 위한 메커니즘인지는 알았으므로, 다음 과정은 주어진 representation의 품질을 평가하는 것이다. 우리는 간단한 질문에 답하려고 노력하는 것이다. 
무엇이 더 knowledge representation을 좋게 만드는지?


Improving Knowledge by Regularization

모든 knowledge representation은 특정 정규화 기법들 보다 신속하게 할 수 있는 특정한 성질을 가진다.

 

1 — Disentangling of Causal Factors

강건한 knowledge representation의 핵심 지표 중 하나는 그 특징이 훈련 데이터의 근본적인 원인에 해당한다는 사실이다. 이 특성은 표현에 포함된 형상이 입력 데이터 세트의 특정 원인에 해당하는 형상을 분리하는 데 도움이 되며, 결과적으로 일부 형상을 다른 형상과 더 잘 분리하는 데 도움이 된다.

2 — Smoothness

Representation Smoothness는 인풋 데이터에서 매우 가까운 접들 사이에서는 급격한 변화를 하지 않는다는 가정이다.
수학적으로 smoothness는 매우 작은 epsilon e에서 f(x+ed)≈ f(x)를 암시한다. 이러한 특징은 인풋 데이터에서 가까운 점들에서는 보다 일반화할 수 있다는 knowledge representation을 가능하게 한다.

3-Linearity

선형성은 smoothness 가정에 대해 보완하는 regularization pattern이다.
개념적으로 이 특징은 인풋의 상대적으로 큰 병동일 때는 정확한 예측을 하게 할 수 있는 (f(x) = ax + b)와 같이 인풋 데이터와 선형적인 관계를 가정한다.

4 — Hierarchical Structures

Knowledge representations based on hierarchies는 많은 regularization 기술들에서 이상적이다.
계층 구조는 네트워크의 모든 단계가 지식 표현을 통해 이성을 높이는 데 엄청나게 도움이 되는 이전의 단계로 설명될 수 있다고 가정한다

5 — Manifold Representation.

Manifold learning is one of the most fascinating, mathematically deep foundations of machine learning. 
개념적으로 manifold는 완전 연결된 포인트들의 높은 차원의 영역이다. 이 manifold는 확률 질량은 인풋 데이터에 집중되는 경향이 있는 상태를 가정한다. 
manifold에 대해서 가장 좋은 것은 고차원에서 저차원으로 쉽게 축소할 수 있다는 것이다. 
조작하거나 다루가 쉬워진다. 
많은 정규화 알고리즘들은 특히 manifold를 찾거나 변형하는 것에 효율적이다.

그 중요성에도 불구하고, 표현 학습은 깊은 학습 공간에서 그다지 잘 알려지지 않은 분야로 남아있다.
특징들과 잠재된 데이터셋의 representation을 이해하는 것은 주어진 테스크에서 더 나은 뉴럴 네트워크 아키텍처를 선택할 때 필수적이다


개인 생각

결국 내 생각은 deeplearning도 좋은 representation을 찾는 것이 목적이라고 생각을 한다.
그래서 해당 글을 읽었지만, 실제적인 코드라던지, 어떤 식으로 해야 하는지 아직 실력이 부족해서 완전히 이해를 못하지만, 추후 모델링에 반영을 하고 싶다.  이번 글을 읽으면서 No Free Lunch Theorem과 같이 하나의 알고리즘이 모든 task를 다 잘할 수 없으니 task마다 특정한 알고리즘을 잘 찾는 것이 중요하다는 것에 대해서 알게 돼서 좋았고, 
일반적으로 내가 생각하는 regularization인 L1/L2/Spectral Norm/Batch Normalization을 말하는 게 아닌 것 같아서
Representation을 Regularization을 실제로 어떻게 사용해서 잘 만들게 할 수 있는지가 참 궁금하다.

 

https://towardsdatascience.com/knowledge-is-everything-using-representation-learning-to-optimize-feature-extraction-and-404ce49f7e86

 

Knowledge is Everything: Using Representation Learning to Optimize Feature Extraction and…

Representation Learning is one of the most effective techniques to streamline feature extraction and knowledge building in deep learning…

towardsdatascience.com

 

728x90