Implicit & Explicit의 의미 ( in Math, in ML )

Joo·2024년 1월 8일

Deep Learning Keywords

목록 보기
5/5
post-thumbnail

머신러닝과 AI를 공부하다보면 Implicit Method와 Expicit Method라는 용어를 종종 만나곤 했던 기억이 납니다. 가볍게 알고 지나갔던 내용을 이번 기회에 정리하면서 알보고자 합니다.


사전적 의미

  • Explicit
    : clear and exact, showing full details, without anything hidden or suggested

  • Implicit
    : suggested but not communicated directly

    위 내용을 요약하면 Explicit은 숨기는 내용없이 모든 것을 설명하여 제시하는 상태를 말하며 Implicit은 제시는 하지만 직접적으로 알려주는 것은 아닌 상태를 말한다고 합니다. 아직 저희가 논문에서 만나는 용어와는 거리가 먼 것 같으니 조금 더 알아보겠습니다.

Implicit Method & Explicit Method in Mathmatics

  • Explicit Method
    : 종속 변수는 독립 변수의 항으로 표현됩니다. 다른 말로, x와 y는 분리될 수 있습니다.

    y=x2+x+1y = x^2 + x + 1
  • Implicit Method
    : 암시적 함수는 x와 y 사이의 관계로 정의됩니다. 종속 변수와 독립 변수 사이에 구별을 할 수 없습니다. 즉, x와 y는 분리될 수 없습니다.

    x2+2xy+y2=0x^2 + 2xy + y^2 = 0

    조금 더 명확해졌습니다. Explicit Method에서는 주어진 시간 스텝에 대한 해를 직접적인 계산으로 바로 얻을 수 있으므로, 일반적으로 그 스텝에 대해 하나의 해만 산출합니다. 반면에 Implicit Method은 종종 주어진 시간 스텝에 대해 방정식을 풀어야 하기 때문에, 이론적으로는 여러 해가 존재할 수 있습니다.

    그러나 대부분의 실제 문제에서는 Implicit Method을 적용하여 비선형 시스템을 풀 때 적절한 초기 추정치를 사용하고, 수치 해석 방법을 적절히 선택하면 유일한 물리적으로 타당한 해를 얻을 수 있습니다. 수치 해석에서는 해의 존재성과 유일성을 보장하기 위해 수학적 정리들이 사용되며, 이러한 정리들은 적절한 조건 하에 적용됩니다.
    수학적으로 복잡한 내용은 다루지 않겠습니다.

    결국, 암시적 방법은 더 복잡한 계산을 요구하지만, 더 안정적인 결과를 얻을 수 있는 잠재력을 가지고 있으며, 명시적 방법에 비해 큰 시간 스텝을 사용할 수 있는 이점이 있습니다.

    ❓ 왜 Implicit Method가 더 안정적인 결과를 얻을 수 있는 건가요?

    Why do implicit numeric methods have superior stability properties than explicit ones?
    해당 디스커션에서는 간단한(?) 수학적 예시와 함께 위 질문에 대한 답을 하고 있습니다. 수학적인 내용을 제외하고 직관적으로 이야기하자면 Implicit Method는 수치적 해의 경로로부터 더 많은 "피드백"을 포함하기 때문에 일반적으로 Explicit Method보다 더 안정적인 방법이라고 할 수 있습니다.

    수학적으로도 접근하여도 ML에서는 조금 다른 의미로 사용되는 경우가 많아 보입니다. 이제 마지막으로 ML의 설명으로 넘어가보겠습니다.


Implicit Method & Explicit Method in Machine Learning

  • Explicit Method
    : 방정식이나 알고리즘에 의해 명확하게 정의되는 함수를 의미합니다. 예를 들어, 선형 회귀 모델은 입력 변수와 출력 변수 사이의 관계를 기술하는 구체적인 방정식을 가지고 있기 때문에 명시적 함수입니다.
  • Implicit Method
    : 데이터에 의해 암시적으로 정의되는 함수입니다. 예를 들어, 신경망은 입력과 출력 변수 사이의 구체적인 방정식을 가지고 있지 않고, 대신 데이터셋 학습을 통해 이들 사이의 관계를 배웁니다.

즉 다양한 파라미터를 기반으로 입력과 출력의 관계를 명확하게 설명할 수 있는 경우 Explicit Method라 할 수 있으며, 입력과 출력의 관계에 대한 식을 명확하게 가지고 있지 않는 경우 Implicit Method라고 할 수 있습니다.

Explicit Method 모델 예

Explicit Mehod 모델은 입력과 출력 간의 관계가 명확하고 직접적으로 정의되는 모델을 의미합니다. 이러한 모델들은 종종 해석이 가능하고 모델 내부에서 어떤 일이 일어나고 있는지 쉽게 이해할 수 있습니다. 명시적인 파라미터가 존재하는 것이 특징입니다. 다음은 몇 가지 예입니다:

  1. 선형 회귀(Linear Regression):

    • 가장 대표적인 명시적 모델 중 하나입니다. 입력 변수들의 선형 조합을 통해 연속적인 출력 값을 예측합니다.
    • 모델은 y=β0+β1x1+β2x2+...+βnxn+ϵy = \beta_0 + \beta_1x_1 + \beta_2x_2 + ... + \beta_nx_n + \epsilon과 같은 형태로 표현됩니다.
  2. 로지스틱 회귀(Logistic Regression):

    • 분류 문제에 사용되며, 선형 회귀를 확장하여 이진 또는 다중 클래스 결과를 예측합니다.
    • 출력은 11+e(β0+β1x1+...+βnxn)\frac{1}{1 + e^{-(\beta_0 + \beta_1x_1 + ... + \beta_nx_n)}}으로 주어지는 로지스틱 함수를 통해 계산됩니다.
  3. 결정 트리(Decision Tree):

    • 결정 규칙을 나무 구조로 표현하여 입력 공간을 분할하고 예측을 수행합니다.
    • 트리의 각 분기점은 입력 변수에 대한 명시적인 결정 규칙을 나타내며, 각 노드는 특정 출력 값을 의미합니다.
  4. 규칙 기반 모델(Rule-Based Models):

    • 명시적인 규칙을 사용하여 데이터를 분류하거나 예측을 합니다.
    • 이 모델들은 if-then 규칙들의 집합으로 구성되며, 입력 데이터가 이 규칙들을 통과할 때 결정이 내려집니다.

Implicit Method 모델 예

Implicit Method 모델은 데이터로부터 직접적인 수식이나 규칙 없이 학습하는 모델을 말합니다. 이 모델들은 내부적으로 복잡한 데이터의 패턴을 학습할 수 있지만, 그 과정이나 결과가 직관적으로 명확하지 않을 수 있습니다. 일반적으로 딥러닝 모델이 그 예입니다.

  1. 인공 신경망(Artificial Neural Networks, ANNs):

    • 데이터로부터 복잡한 패턴을 학습할 수 있는 모델로, 내부적으로는 가중치와 활성화 함수를 통해 입력에서 출력까지의 매핑을 학습합니다.
    • 이러한 모델은 심층 학습(Deep Learning)의 기본 구성 요소로, 복잡한 비선형 관계를 모델링할 수 있습니다.
  2. 컨볼루션 신경망(Convolutional Neural Networks, CNNs):

    • 이미지와 같은 고차원 데이터에 적합하며, 필터(커널)를 사용하여 이미지의 특징을 학습합니다.
    • CNN은 계층적인 구조로, 저수준의 특징부터 고수준의 특징까지를 학습할 수 있습니다.
  3. 순환 신경망(Recurrent Neural Networks, RNNs):

    • 시퀀스 데이터(예: 텍스트, 시계열 데이터)에 적합한 모델로, 이전의 출력을 다음 입력의 일부로 사용하여 시퀀스 내의 정보를 학습합니다.
    • LSTM(Long Short-Term Memory)이나 GRU(Gated Recurrent Unit)는 RNN의 발전된 형태로, 장기 의존성을 더 잘 학습합니다.
  4. 오토인코더(Autoencoders):

    • 입력 데이터를 효율적으로 압축(인코딩)하는 방법을 학습하고, 이 압축된 표현을 사용하여 입력을 재구성(디코딩)합니다.
    • 비지도 학습의 한 형태로, 데이터의 효율적인 표현을 학습하는 데 사용됩니다.
  5. 강화학습(Reinforcement Learning) 모델:

    • 에이전트가 환경과 상호 작용하며 보상을 최대화하는 방법을 학습합니다.
    • 정책 네트워크(Policy Networks)와 가치 네트워크(Value Networks) 같은 신경망을 사용하여 최적의 전략을 학습합니다.

참고

Cambridge Dictionary
Why do implicit numeric methods have superior stability properties than explicit ones?
What is the difference between explicit and implicit functions in machine learning?

profile
Don't let the AI snack on random internet bits...

0개의 댓글