Study
[파이토치로 시작하는 딥러닝 기초]10.2_visdom
visdom이란? 데이터 시각화를 window창으로 보여주는 package visdom 설치 !pip install visdom !python -m visdom.server 위 코드를 실행하면 http://localhost:8097/ 에 visdom 화면이 생성된다. 실습 import torch import torch.nn as nn import torchvision import torchvision.datasets as dsets import visdom import visdom vis = visdom.Visdom() Text vis.text("Hello. world", env = "main") ## env = main이라는 환경에 창을 띄움 image a = torch.randn(3,200,200) ..
[파이토치로 시작하는 딥러닝 기초]10.1_Convolutional Neural Network
10. Convolution Neural Network 10.1 Convolution Convolution? Neuron과 Convolution Pooling Convolution이란? 이미지위에서 stride값 만큼 filter(kernel)을 이동시키면서 겹쳐지는 부분의 각 원소의 값을 곱해서 모두 더한 값을 출력으로 하는 연산 Stride and Padding stride : filter를 한번에 얼마나 이동할 것인가 padding : zero-padding (input 이미지의 상하좌우에 0의 띠가 둘러진다) Python nn.Conv2d 입력의 형태 input type: torch.Tensor 타입 input shape : (N * C * H * W) => (batch_size, channel,..
[Trend 용어] 마이데이터(Mydata)란?
요즘은 빅데이터 사업이 많아서 그런지, 업계에서 분석 활동을 할 때 많이 듣는 용어가 있다. 그 중 하나가 바로 마이데이터(Mydata)이다. 마이데이터가 그냥 "개인 데이터" 라고 생각하고 넘어간다면, 아마 오해할 요소가 많을 거라는 생각이 든다. 그래서 그런 용어를 기록해보고자 마이데이터에 대해 포스팅해보려고 한다. 한국데이터산업진흥원의 글을 빌리자면, 마이데이터란, "정보주체가 개인데이터에 대한 열람, 제공 범위, 접근 승인 등을 직접 결정함으로써 개인의 정보 활용 권한을 보장, 데이터 주권을 확립하는 패러다임" 이라고 한다. 즉, 개인의 데이터에 대해 개인이 적극적으로 활용하는 과정에 대해 말하는 것이다. 무언가 어플을 하나 설치하고, 그것을 사용하려고 하면 "개인정보 수집 및 이용에 동의하시겠습..
[파이토치로 시작하는 딥러닝 기초]07_MLE, Overfitting, Regularization, Learning Rate
Maximum Likelihood Estimation(MLE, 최대우도추정법) observation을 가장 잘 설명하는 theta를 찾아내는 과정 우리가 관찰한 데이터를 가장 잘 설명하는 어떤 확률 분포의 함수의 파라미터를 찾아내는 과정 Optimization via Gradient Descent 𝜃←𝜃−𝛼∇𝜃𝐿(𝑥;𝜃) Overfitting 과도한 훈련으로 모델이 훈련셋에만 최적화 되어있을 떄 훈련셋과 테스트셋을 나누어서 학습할 때 오버피팅을 낮출 수 있다. 오버피팅을 해결하는 방법, Regularization Early Stopping : Validation Loss가 더이상 낮아지지 않을 때 학습을 멈추는 것 Reducing Network Size : neural network의 사이즈를 줄이는 것..
[파이토치로 시작하는 딥러닝 기초]06_Softmax Classification
Softmax Classification softmax Cross Entropy Low-level Implementation High-level Implementation Traing Example Discrete Probability Distribution(이산확률분포) Discrete Probability Distribution이란, 이산적인 확률 분포를 이른다. ex) 주사위를 돌려서 나오는 숫자의 값에 대한 확률 분포 이산 값에 대한 확률이 정확하게 나오며, 연속형 확률분포와 달리 x 값이 정수값으로 떨어져 있다. Softmax Convert numbers to probabilitis with softmax $${P(class = i) = \frac{e^i}{\sum e^i}}$$ pytorch ..
[파이토치로 시작하는 딥러닝 기초]05_ Logistic Regression
Logistic Regression Computing Hypothesis Computing Cost Function Evaluation Higher Implementation Logistic Regression Hypothesis $${H(X) = \frac{1}{1 + e^{-W^TX}}}$$ Cost $${cost(W) = -\frac{1}{m}\sum ylog(H(x)) + (1-y)(log(1-H(x)))}$$ if ${y \simeq H(x)}$, cost is near 0 if ${y \ne H(x)}$, cost is high ${P(x = 1) = 1- P(X = 0)}$ X : ${m\times d}$ 차원, W : ${d\times 1}$ 차원 sigmoid 함수를 이용하여 0과 1에 ..
[파이토치로 시작하는 딥러닝 기초]04.02_Loading Data
Loading Data Minibatch Gradient Descent 이론 Pytorch Dataset and Data Loader 사용법 Data in the Real World 복잡한 머신러닝 모델을 학습하려면 엄청난 양의 데이터가 필요하다 대부분 데이터셋은 적어도 수십만개의 데이터를 제공한다. 엄청난 양의 데이터를 한번에 학습시킬 수 없다. 이유는? 너무 느리고 하드웨어적으로 불가능하기 때문 그렇다면 일부분의 데이터로만 학습하면 어떨까? Minibatch Gradient Descent 전체 데이터를 작은 Minibatch라는 작은 양으로 균일하게 나누어서 minibatch 하나씩 학습하는 방법 그러면 컴퓨터가 dataset의 모든 데이터의 cost를 다 계산한 후 gradient descent를 ..
[파이토치로 시작하는 딥러닝 기초]04.01_Multivariable_Linear_regression
4. Multivariable Linear regression(다항회귀분석) Simple Linear REgression 복습 Multivariate Linear Regression 이론 Naive Data Representation Matrix Data Representation Multivariate Linear Regression nn.Module 소개 F.mse_loss 소개 Simple Linear Regrssion? 하나의 정보로부터 하나의 결론을 짓는 모델 ${H(x) = Wx + b}$ 그러나 우리가 더 다양한 정보를 가지고 다양한 예측을 하기위해서는 단항선형회귀분석으로는 어렵다! Multivariate Linear Regression 복수의 정보가 존재할 떄 하나의 추측값을 계산하는 것 ..