전공공부 45

git 기본 명령어

1. git에 관하여: 영역 및 상태 2. git의 기본 명령어 3. branching 4. remote 5. git restore VS reset git merge VS rebase git이란? git은 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 분산 버전 관리 시스템이다. 즉, git 프로젝트 directory에는 .git을 포함해 수 많은 파일들이 존재하고, .git 디렉토리는 git 프로젝트에서 작업한 수많은 정보들과 여러 버전들에 대한 정보를 저장하는 데이터 베이스이다. git의 세 가지 영역 Working Directory 실제 작업 공간. 이 곳에서 파일을 수정하거나 추가한다. Staging Area Working Directory에서 작업..

전공공부 2022.10.11

진수 (2진수, 8진수, 10진수, 16진수 변환)

진수는 얼마만큼 수가 증가되어야 자릿수가 바뀌는지 그 단위를 의미함 n진수는 0~(n-1)까지 즉 n개의 수를 넘어가면 자릿수가 바뀌는 방식임 예를 들어 10진수는 0~9까지 즉 10개의 수를 넘어가면 자릿수가 바뀌고 그래서 9에서 +1을 하게 되면 자릿수가 바뀌어 10이 됨. 또한 2진수는 0부터 1씩 더하면서 보자면 0 -> 1 -> 10 -> 11 -> 100 이런식으로 1을 더할 때 오른쪽 자릿수가 1이면 자릿수가 바뀜. 진수 나올 수 있는 값 2진수 0~1 8진수 0~7 10진수 0~9 16진수 0~15(F) 10진수 16진수 10 A 11 B 12 C 13 D 14 E 15 F 16 10 17 11 1. N진수와 10진수 사이의 변환 2, 2진수, 8진수, 16진수 사이의 변환 1. (1) N..

전공공부 2022.09.07

MNIST, Torchvision

https://wikidocs.net/60324 1. MNIST 2. Torchvision 3. Torchvision을 이용해 MNIST 불러오기 Softmax Test & Visulization MNIST 숫자 0부터 9까지의 이미지로 구성된 손글씨 데이터셋. 과거에 우체국에서 편지의 우편 번호를 인식하기 위해서 만들어진 훈련 데이터 28 픽셀 × 28 픽셀의 이미지 Torchvision 유명한 데이터셋들, 이미 구현되어져 있는 유명한 모델들, 일반적인 이미지 전처리 도구들을 포함하고 있는 패키지 torchvision.utils 를 통해 dataset을 쉽게 읽어올 수 있음 import torch import torchvision.datasets as dsets import torchvision.tra..

[실습] softmax model, train, validation, learning rate 조절, data processing

https://github.com/deeplearningzerotoall/PyTorch/blob/master/lab-07_1_tips.ipynb Training data and Dataset x_train = torch.FloatTensor([[1, 2, 1], [1, 3, 2], [1, 3, 4], [1, 5, 5], [1, 7, 5], [1, 2, 5], [1, 6, 6], [1, 7, 7] ]) y_train = torch.LongTensor([2, 2, 2, 1, 1, 1, 0, 0]) x_test = torch.FloatTensor([[2, 1, 1], [3, 1, 2], [3, 3, 4]]) y_test = torch.LongTensor([2, 2, 2]) |x_train| = (m, 3) |..

Softmax regression 구현하기

https://wikidocs.net/60572 https://wikidocs.net/60575 1. Cost 함수 구현하기 2. Softmax regression 구현하기 - nn.Module로 구현 - class로 구현 Low Level로 Cost함수 구현하기 import torch import torch.nn.functional as F torch.manual_seed(1) z = torch.FloatTensor([1, 2, 3]) hypothesis = F.softmax(z, dim=0) #3개의 원소 값이 0과 1 사이의 값을 가지는 벡터로 변환됨 print(hypothesis) #tensor([0.0900, 0.2447, 0.6652]) import torch import torch.nn.fu..

Softmax Classification

https://wikidocs.net/59427 - 3개 이상의 선택지 중에서 1개를 고르는 다중 클래스 분류(Multi-Class Classification) - Linear regression Softmax regression - softmax function - cost function : cross entropy Logistic Regression sigmoid 함수는 예측값을 0과 1 사이의 값으로 만듦 Softmax Regression 각 class (선택지)마다 소수 확률을 할당하고 이때 총 확률의 합이 1이 되어야함 즉, 선택지의 개수만큼의 차원을 가지는 벡터를 만들고, 벡터의 모든 원소의 합이 1이 되도록 원소의 값을 변환시키는 함수(softmax 함수)를 사용 Softmax functi..

Mini Batch 경사하강법, Data Load, Custom Dataset

https://wikidocs.net/55580 1. Mini Batch and Batch Size 2. Iteration 3. Data Load - Dataset과 DataLoader을 활용해 미니배치 학습, 데이터 shuffle, 병렬처리까지 간단히 수행 4. Custom Dataset Mini Batch and Batch Size (문제) 전체 데이터에서 경사 하강법을 수행하는 것은 많은 계산량이 필요하고 매우 느림 (해결) 전체 데이터를 작은 단위로 나누어서 학습. 이 단위를 "미니 배치"라고 함. 미니 배치만큼 가져가서 이에 대한 cost를 계산하고 경사하강법을 수행. 그리고 그 다음 미니배치를 가져가서 경사하강법 수행... 이렇게 전체 데이터에 대한 학습이 1회 끝나면 1 에포크(Epoch)가..

Class로 pytorch 모델 구현

pytorch의 구현체들은 모델을 생성할 때 대부분 Class를 사용함 1. 모델을 Class로 구현 2. 단순 선형 회귀 Class로 구현 3. 다중 선형 회귀 Class로 구현 모델을 Class로 구현 # 모델을 선언 및 초기화. 단순 선형 회귀이므로 input_dim=1, output_dim=1. model = nn.Linear(1,1) 위를 Class로 구현시 class LinearRegressionModel(nn.Module): # torch.nn.Module을 상속받는 파이썬 클래스 def __init__(self): # super().__init__() self.linear = nn.Linear(1, 1) # 단순 선형 회귀이므로 input_dim=1, output_dim=1. def for..

Multivariable Linear regression : Pytorch, nn.module로 구현

https://wikidocs.net/54841 1. Multivariable Linear Regression - pytorch로 구현 2. nn.module로 구현 - F.mse_loss 단순 선형 회귀(Simple Linear Regression) : x가 1개인 선형 회귀 다중 선형 회귀(Multivariable Linear Regression) : 다수의 x로부터 y를 예측 다중 선형 회귀 예제 3개의 퀴즈 점수로부터 최종 점수를 에측하는 모델 만들기 # 1. data 정의 x_train = torch.FloatTensor([[73, 80, 75], [93, 88, 93], [89, 91, 80], [96, 98, 100], [73, 66, 70]]) y_train = torch.FloatTens..

Linear regression: Pytorch, nn.module로 구현

https://wikidocs.net/53560 1. Data에 대한 이해 2. 가설(Hypothesis) 수립 3. 손실 계산(Compute Loss) 4. Optimizer : 경사하강법(Gradient Descent) - 풀고자하는 문제에 따라 Hypothesis, Cost func, optimizer는 다를 수 있고, 선형 회귀에 가장 적절한 cost func는 MSE, optimizer는 gradient descent임 1. Data에 대한 이해 훈련 데이터셋(training dataset) : 예측을 위해 사용하는 데이터셋 모델을 학습시키기 위한 데이터는 파이토치의 텐서의 형태(torch.tensor)를 가지고 있어야함 그리고 입력과 출력을 각기 다른 텐서에 저장할 필요가 있음(보편적으로 입력..