일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- ndarray
- Python 유래
- 표집분포
- 카테고리분포 MLE
- 가능도
- dtype
- boolean & fancy index
- subplot
- Python 특징
- Numpy
- Python
- 딥러닝
- Array operations
- linalg
- 최대가능도 추정법
- Numpy data I/O
- VSCode
- python 문법
- unstack
- Comparisons
- Operation function
- groupby
- scatter
- pivot table
- BOXPLOT
- type hints
- namedtuple
- 부스트캠프 AI테크
- seaborn
- 정규분포 MLE
- Today
- Total
목록부스트캠프 AI 테크 U stage (112)
또르르's 개발 Story

최적화(Optimization)는 딥러닝에서 손실함수의 값을 최소화하는 하이퍼 파라미터(Hyper Parameter)의 값을 찾는 과정을 말합니다. 딥러닝에서 최적화 과정은 꼭 필요하며, 적절한 하이퍼 파라미터(Hyper Parameter)를 사용하면 딥러닝 모델의 성능이 훨씬 좋아집니다. 여기서 parameter와 hyper parameter의 차이는 아래와 같습니다. Parameter : 최적화(optimization)해서 찾고 싶은 값 (가중치, bias 등) Hyper Parameter : 사용자가 정하는 값 (running rate, loss function 등) 가장 기본적인 함수 최적화 방법은 경사하강법(Gradient Descent)을 사용하는 것입니다. Gradient Descent는 어..

1️⃣ 설정 1) device 설정 : GPU 사용 or CPU 사용 device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu') 2) Dataset 가지고 오기 PyTorch에서는 기본적으로 datasets를 지원합니다. from torchvision import datasets,transforms train시킬 데이터를 tensor형태로 불러옵니다. mnist_train = datasets.MNIST(root='./data/',train=True,transform=transforms.ToTensor(),download=True) test할 데이터를 tensor형태로 불러옵니다. mnist_test = datasets.MNIST(roo..

PyTorch는 Python을 위한 오픈소스 머신러닝 라이브러리입니다. 페이스북에서 개발했고, 다양한 Deep Learning 함수와 모델을 지원합니다. 1️⃣ PyTorch 개요 PyTorch는 머신러닝 라이브러리로써, 3가지의 장점을 가지고 있습니다. Numpy + AutoGrad + Function Numpy : Numpy 구조를 가지는 Tensor 객체로 array 연산이 가능 AutoGrad : 자동 미분을 지원하여 Deep Learning 연산을 지원 Function : 다양한 형태의 Deep Learning을 지원하는 함수와 모델 지원 그렇다면 PyTorch는 다른 프레임워크와 다른 점은 무엇일까요? 가장 큰 특징은 맨 마지막에 있는 Computational graphs used입니다. 딥러..

딥러닝은 인공지능(Artificial Inteligence)의 한 분야입니다. 딥러닝의 가장 큰 특징은 연속된 층(layer)을 겹겹이 쌓아 올린 신경망(Neural networks)을 사용해서 학습 방법입니다. 딥러닝를 구성하는 Key Components를 뽑으라면 4가지를 뽑을 수 있습니다. Data : Model이 학습할 수 있는 기반 Model : Data를 변환하는 방법 Loss Function : Model과 Data의 실제 출력값 차이 Optimization Algorithm : Loss를 최소화시키는 Parameter들을 찾아서 조정 1️⃣ 딥러닝의 발전 1) AlexNet (2012) - CNN 기반의 알고리즘 - 2012 ILSVRC(ImageNet Large Scale Visual R..

1️⃣ 조건부 확률과 베이즈 정리 조건부 확률 P(A|B)는 사건 B가 일어난 상황에서 사건 A가 발생할 확률을 의미합니다. P(A|B)=P(A∩B)P(B) 따라서 아래와 같이 표현도 가능합니다. 만약 P(B|A) 즉, 사건 A가 일어난 상황에서 사건 B가 발생할 확률을 구하고 싶다면, 베이즈 정리를 이용하면 됩니다. 이 식을 베이즈 통계학에 적용하면 아래와 같이 표현이 가능합니다. 베이즈 통계학에서 P(θ|D)의 의미는 데이터가 주어져있을 때 모수 θ가 성립할 확률을 의미합니다. 사후확률(posterior) : 데이터가 관찰된 이후에 측정을 하는 확률 사전확률(prior) : θ에 대한 모델링을 하기 이전(데이터가 주어..

딥러닝에서는 데이터를 받아들여 통계적 모델을 만들고 결과값을 추정합니다. 따라서 통계적 모델링은 적절한 가정 위에서 확률분포를 추정(inference)하는 것이 목표이며, 기계학습이 추구하는 목표입니다. 그러나 유한한 개수의 데이터만 관찰해서 모집단의 분포를 정확하게 알아낼 수 없습니다. 데이터가 무작위로 들어오면 이 데이터들이 어떠한 분포를 가졌는지 유추할 수 없으며, 근사적으로 확률분포를 추정할 수 밖에 없습니다. 그래서 예측모형의 목적은 분포를 정확히 맞추는 것보다 위험을 최소화하는 것에 가깝습니다. 1️⃣ 확률분포 가정하기 확률분포를 가정하는 방법은 우선 히스토그램을 통해 모양을 관찰합니다. 데이터가 2개의 값(0 또는 1)만 가지는 경우 => 베르누이 분포 데이터가 n개의 이산적인 값을 가지는 ..

Python에는 다양하게 시각화를 할 수 있는 모듈들이 있습니다. 대표적으로 matplotlib와 seaborn이 있는데요. 두 가지 시각화 모듈에 대해 알아보겠습니다. 1️⃣ Matplotlib matplotlib는 python의 대표적인 시각화 도구입니다. 거의 표준 라이브러리로 사용되는데요. matplotlib의 장점은 다양한 graph를 지원해주고, pandas와 연동이 가능합니다. 1) pyplot 객체 matplotlib는 pyplot 객체를 사용해서 데이터를 표시합니다. pyplot 객체에 그래프들을 쌓은 다음 flush를 합니다. import matplotlib.pyplot as plt X = range(100) Y = [value**2 for value in X] plt.plot(X, Y..

딥러닝은 확률론 기반의 기계학습 이론에 바탕을 두고 있습니다. 기계학습에서 사용되는 손실함수(loss function)들의 작동 원리는 데이터 공간을 통계적으로 해석해서 유도하게 됩니다. 즉, 예측이 틀릴 위험(risk)을 최소화하도록 데이터를 학습하는 원리는 통계적 기계학습의 원리입니다. 예를 들어, 회귀 분석에서 손실함수로 사용되는 L2-노름은 예측 오차의 분산을 가장 최소화하는 방향으로 학습하도록 유도합니다. 분류 문제에서 사용되는 교차 엔트로피(cross-entropy)는 모델 예측의 불확실성을 최소화하는 방향으로 학습하도록 유도합니다. 따라서 딥러닝에서 확률론은 중요하며, 꼭 집고 넘어가야하는 부분입니다. 1️⃣ 확률 변수 확률변수는 확률 공간에서 일어나는 확률 현상을 기인해 확률적으로..

[08] Python pandas (1) Pandas는 panel data의 줄임말로 파이썬의 데이터 처리의 사실상 표준인 라이브러리입니다. Python의 pandas는 통계 프로그램인 R하고 비슷하다는 소리를 많이 듣는데요. pandas의 객체 생성과 함수들을 dororo21.tistory.com 위 글에 이어서 groupby, pivot, merge, concat과 같은 명령어를 정리해보겠습니다. 1️⃣ Groupby (1) Groupby는 Series나 Data frame을 split(자르고)하고 Apply(함수 적용)하고 combine(합치는) 역할을 한 번에 수행합니다. 즉, 어떠한 column으로 묶어서 sum, std와 같은 함수를 적용한 후 보여주는 함수입니다. 1) groupby 구조 위..

오늘은 신경망을 수학적으로 분해해보는 시간을 가졌습니다. 1️⃣ 신경망(neural network) 신경망(neural network)은 기계학습에서 생물학의 신경망에서 영감을 얻은 통계학적 학습 알고리즘입니다. 신경망은 수많은 데이터를 분석해서 만들어지는 학습 알고리즘이며, 따라서 선형 모델로 만들기에는 너무 많은 예외와 변수가 존재해 무리가 있습니다. 따라서 신경망은 비선형모델이며 아래 그림과 같이 행렬곱으로 이루어집니다. 신경망의 구성요소는 아래와 같습니다. O 행렬 : Output 행렬 X 행렬 : Input(데이터) 행렬 W 행렬 : 가중치 행렬 b 벡터 : 절편 (bias) 벡터 (각 행들이 같은 값을 가지고 있음) 즉, 각 행벡터 oi는 데이터 Xi와 가중치 행렬 W 사..