본문 바로가기

Programming

(4)
[argparse] Jupyter Notebook에서 argparse 활용하기 1. Introduction - python3 기본 라이브러리 argparse는 cmd에서 파이썬 파일을 실행시킬 때 변수 입력을 위해 쓰임 - Github 오픈소스들을 살펴보면 다양한 변수들을 적용할 수 있도록 argparse를 많이 사용함 - 다만 ipython 환경인 Jupyter notebook에서는 해당 코드가 정상적으로 작동하지 않으며, 별도로 변수선언을 해주더라도 코드를 일부 수정해야되는 등 불편함 2. Methods 1) Default 값 입력하기 - 기존 코드를 거의 그대로 사용하는 방법으로 가장 빠르고 쉬운 방법 - 마지막 줄만 약간 수정해서 모든 변수들에 default 값을 입력, 추후 필요하면 수정하여 사용함 - 필수로 입력해줘야 하는 required=True 변수가 있는 경우에는 ..
[파이토치 튜토리얼] 3. 경사하강법 기반 분류모델 구현 1. 소개 (Introduction) 분류 모델 (Classification) - 특정한 범주 값(Class or Label)을 가지고 있는 데이터들의 범주 값을 알고리즘에 따라 분류해내는 모델 - 범주 값이 2개인 경우 이진 분류 (Binary Classification) ex. 로지스틱 회귀 (Logistic Regression) - 범주 값이 3개 이상인 경우 다중 분류 (Multinomial Classification) ex. 소프트맥스 회귀 (Softmax Regression) 2. 이진 분류 (Binary Classification) - 2개의 입력 값(Input)을 받아 연산하여 1개의 출력 값(output)을 반환하는 선형모델을 구성 - 활성화 함수(Activation Function)는 ..
[파이토치 튜토리얼] 2. 경사하강법 기반 선형회귀 모델 구현 1. 소개 (Introduction) 1) 선형 회귀(Linear Regression) - 통계학에서 선형 회귀는 "독립 변수와 종속 변수의 선형 상관 관계를 모델링하는 희귀분석 기법" 으로 정의 - 선형 함수를 통해 회귀식을 모델링하며, 알려지지 않은 파라미터(W, b)를 데이터로부터 추정함 - 독립 변수가 1개인 경우에는 단순 선형 회귀 (Simple Linear Regression), 그 이상인 경우에는 다중 선형 회귀 (Multivariable Linear Regression) 2) 경사 하강법(Gradient Descent) - 경사 하강법은 근삿값 추정용 최적화 알고리즘이며, 함수의 기울기를 구하고, 기울기 절댓값이 낮은쪽으로 계속 이동하여 극값에 이를 때까지 반복함 - 파이토치에서는 모델 예..
[파이토치 튜토리얼] 1. 텐서의 정의와 초기화 및 연산 정리 1. 소개 (Introduction) - 텐서(Tensor)란? 배열(Array)나 행렬(Maxtrix)와 유사한 특수한 자료구조 - 파이토치에서는 텐서를 사용하여 모델의 입출력 및 매개변수를 부호화(Encode) - Numpy의 ndarray와 매우 유사하며, 그래픽카드(GPU)를 비롯한 가속 연산용 특수 하드웨어에서 실행할 수 있음 2. 초기화 (Initialization) 1) 리스트, Numpy 배열, 다른 텐서 데이터를 통해 초기화 2) Shape (텐서 차원을 나타내는 튜플)을 통한 초기화 3) 텐서 속성 (Attribute) 확인 3. 기본 연산 (Operation) 1) 인덱싱 및 슬라이싱 2) 텐서 차원 변경 3) 텐서 최대값 인덱스 찾기 4. 산술 연산 (Arithmetic Operat..