모델의 구성

EBAB!·2023년 11월 5일
0
post-thumbnail
post-custom-banner

모델

  • 데이터에 의해 변하는 소프트웨어.
    Model=software(data)\Large Model = software(data)

소프트웨어의 구성:

  • 어떤 데이터를 사용할 지
  • 어떤 패키지(라이브러리)를 사용할 지
  • 어떠한 코드를 작성할 지
  • 적절한 파라미터를 어떻게 찾을 지

즉, 모델을 좀 더 자세히 얘기해보면 데이터와 파라미터가 정해진 코드에 입력되고, 어떤 환경에서 실행되는지에 따라 모델이 정의된다.

Model=env(code(data,param)))\Large Model = env(code(data, param)))

하지만 모델 연구시 학습, 테스트 데이터의 선정 난수에 따라 바뀌게 되므로 좀 더 정확한 표현은 다음과 같다.

Modelenv(code(data,param)))\Large Model\approx env(code(data, param)))

파이썬에서 난수를 추출하는 방법
파이썬는 내부적으로 Mersenne Twister이라는 난수 생성 알고리즘을 사용하여 고정된 수열의 seed를 기반 난수를 생성한다.

  1. seed를 기반으로 nn개의 수가 들어있는 state array 준비
  2. State array를 사용해서 nn개의 난수 생성
  3. nn개의 난수를 다 사용했을 경우 state array를 업데이트 (Twist)
  4. 2번부터 다시 반복

여기서 환경 env는 패키지와 그 밑단의 환경이다. 어떤 OS인지, 파이썬 버전, 패키지 버전 등을 의미한다.
보통 Docker를 통해 격리 가능한 수준으로 보장받는 범위이다.

profile
공부!
post-custom-banner

0개의 댓글