인공지능에서 Parameter 란?

2024. 1. 27. 02:48·Artificial Intelligence/Basic

pre-trained 된 모델들을 보면 parameter 라는 단어가 눈에 띈다.

Conformer-CTC (Korean language)

이러한 parameter 는 hyper-parameter 와는 별개의 뜻으로 사용된다.

통상적으로 hyper-parameter 는 학습과정에 있어 유저가 지정할 수 있는 값들을 의미한다.

예로 learning-rate, epoch, multi-head attention count 등이 포함된다.

 

반면 parameter 는 아래와 같은 의미를 지닌다.

 

In an A.I. model, what exactly is a "parameter" counting?

Tim Converse's answer: The question was “In an A.I. model, what exactly is a ‘parameter’ counting?” Most machine-learned models have two aspects: 1) a structure into which numbers are plugged to define the model, 2) the numbers themselves, which ar

www.quora.com

답변이 원론적이라 좀 어렵게 느껴질 수 있는데 요약하자면,

신경망에서 다룰 수 있는 값들의 범위를 나타내는 것과 같다.

 

여기서 다룰 수 있는 범위의 값이란, 단순히 출력값을 의미하는 것이 아니다.

예로, 0~9 까지의 손글씨를 출력하는 MLP 모델이 있다고 해서 parameter 가 10개라는 의미는 아니다.

대표적인 손글씨 인식 데이터셋

좀 더 쉽게 말하자면

입력값으로부터 출력값인 0~9 까지 가능한 모든 확립가능한 경로의 수를 의미한다고 보면 좋다. 

이를 나는 '경우의 수(weight, bias)' 라고 호칭한다.

예로 MLP 모델일 경우 perceptron 증가 = parameter 증가 이다.

perceptron 이 증가한다는 건 조정해야할 weight, bias 가 많아진다는 의미이다.

 

이러한 경우의 수는 모델 내부에서 결정되므로

이미 완성된 모델을 단순히 학습시키는 유저 입장에서 관여할 수 없다는 점에서

hyper-parameter 와 근본적인 차이점을 보인다.

만약 parameter 수를 변경하고 싶다면 모델의 구조를 변경해야 한다.

 

위와같은 MLP 가 있다고 가정했을 때

layer 의 width 가 넓어질 수도 있고, depth가 깊어질 수도 있다.

이럴경우 당연히 모델 내부에서 계산해야 할 '경우의 수(weight, bias)' 역시 많아진다.

 

즉, parameter 라는 용어는 모델의 '복잡성' 을 나타낼 때 사용된다.

 

예로 깊이가 3인 MLP와 10인 MLP 의 parameter 는 어떤것이 더 많을까?

width 가 같다면 깊이 10 짜리의 MLP 의 parameter 가 더 많을것이다.

 

parameter 수가 많음에 따른 장, 단점은 아래와 같다.

  • 장점
    • 모델의 표현력이 높아진다.
    • 훈련 데이터가 충분히 풍부하다면, 모델이 보다 우수하게 일반화된 성능을 낼 수 있다.
  • 단점
    • '경우의 수' 가 많다는 의미는, 그만큼 훈련에 계산 리소스를 많이 소모한다는 의미도 동시에 가진다.
    • 훈련 데이터가 부족하다면 부족한 데이터의 노이즈 등 세세한 부분까지 훈련되어 과적합될 위험성이 존재한다.
저작자표시 비영리 동일조건 (새창열림)

'Artificial Intelligence > Basic' 카테고리의 다른 글

모델 훈련시 Epoch 와 Steps 의 차이  (0) 2024.03.05
batch_size 란?  (0) 2024.03.05
GAN의 최적 손실값  (1) 2023.06.19
CGAN(Conditional GAN)  (0) 2023.06.18
GAN이란? (이미지 숫자 생성)  (0) 2023.06.07
'Artificial Intelligence/Basic' 카테고리의 다른 글
  • 모델 훈련시 Epoch 와 Steps 의 차이
  • batch_size 란?
  • GAN의 최적 손실값
  • CGAN(Conditional GAN)
Cyp
Cyp
  • Cyp
    Cyp Software Blog
    Cyp
  • 전체
    오늘
    어제
    • Cyp Blog (163) N
      • Artificial Intelligence (40) N
        • Article (21) N
        • Post (2)
        • Basic (14)
        • Preferences (3)
      • Cyber Security (1)
      • Programming (46)
        • C++ (21)
        • C# (19)
        • Python (2)
        • Rust (0)
        • Java (1)
      • Algorithm (17)
        • BACKJOON (15)
      • Operating System (14)
        • WSL (2)
        • Windows (1)
        • Linux (5)
        • Security (3)
      • Tools (26)
        • Docker (3)
        • DataBase (2)
        • SSH (1)
        • Doxygen (2)
        • Etc (17)
      • Miscellaneous (19)
        • Book (2)
        • Hardware (2)
        • Hevel (1)
  • 블로그 메뉴

    • Home
    • Guest Book
  • 링크

  • 공지사항

    • 블로그 업데이트 노트
    • 블로그 운영방침
  • 인기 글

  • 태그

    Bom
    UTF-8 without BOM
    utf-8 bom
    C4819
    y-cruncher
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Cyp
인공지능에서 Parameter 란?
상단으로

티스토리툴바