728x90
반응형

선형회귀 4

PyTorch 1 - 텐서

PyTorch 기본¶ 먼저 PyTorch의 주요 패키지들을 가져온다. torch는 PyTorch의 최상위 패키지이고, Numpy와 비슷하지만, Tensor라는 N차원벡터를 GPU위에서 다룰 수 있는 패키지이다. torch.autograd는 경사하강법 및 미분을 자동으로 해주는 패키지이다. torch.nn은 여러 많이 사용되는 신경망들의 구현체를 가지고있는 패키지이다. torch.optim은 SGD나 Adam을 비롯한 여러가지 최적화 함수들을 가지고있는 패키지이다. PyTorch 텐서¶ 위에서 언급한 것 처럼 텐서는 N차원벡터들을 의미한다. 아래는 PyTorch에서 텐서를 어떻게 사용하는지 보여주는 코드이다. In [2]: import torch from torch import autograd, nn, o..

머신러닝 공부 5 - 다중 선형 회귀

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 다중 선형 회귀 기존의 선형회귀에서는 하나의 입력 x값과 예측값 y값이 존재했다. 집값 예측 예제로 다시 돌아가보자. 현실 세계의 문제에서는 집의 크기만이 집값을 결정하지 않는다. 아래의 표를 보면, 집값은 크기 외에도, 방의 숫자, 층의 숫자, 연식 등의 정보들이 모두 가격에 영향을 줄 수 있다는 것을 보여준다. 앞선 포스팅에서 이야기 하였듯이, 이런 여러 변수들을 $x_{1}, x_{2}, x_{3}$와 같은 방식으로 표기하도록 하겠다. 몇가지 변수들을 더 정의해보면: n은 특성의 갯수를 의미한다. 위의 예제..

머신러닝 공부 4 - 경사하강법

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 문제설정 J라는 함수가 있다고 하자, 우리는 이 함수를 minimize하는 알고리즘을 만들고자 한다. 먼저 θ0 과 θ1에 초기값 을 설정한다 그리고 θ0 과 θ1 가 minimum에 닿을 때 까지 J( θ0, θ1)를 감소시키고, θ0 과 θ1값을 갱신한다. 경사하강법 과정 설명 이 함수를 minimize하고자 한다고 하자. 먼저 θ0 과 θ1에 초기값 을 설정하고 시작한다. 가장 위의 그래프의 점이 θ0 과 θ1 의초기값이고, 내가 거기에 서있다고 가정해보자. 여러 방향을 살핀 뒤 한발을 밑으로 딛고 내려간다..

머신러닝 공부 2 - 단일변수 선형회귀

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 복습 지도학습이란, 데이터셋에 대한 "정답" 즉 x값(혹은 여러 x값들, x1 x2 x3 …)에 대한 y값이 주어지고, 그 데이터셋을 학습하는 것이다. 회귀문제 연속적인 데이터에 대해서, 새로운 데이터 (x값)이 들어왔을 때, 실제 값(y값)을 예측하는 문제 집값예측 예제) 다음은 오레간주 포트랜드의 집값 데이터이다. X축에는 집의 사이즈가, Y축에는 집의 가격이 $1000 단위로 나와있다. 학습데이터 지도학습에서는 학습데이터, 즉 Training data가 주어진다. 이 문제에서의 Training data는 실..

728x90
반응형