본문 바로가기

Machine Learning

(15)
[Machine Learning Specialization by Andrew Ng 강의 노트] Course 1, Week 2, Lesson 2. Practical Tips for Linear Regression Andrew Ng 교수님의 Machine Learning 강의를 정리한 내용입니다. Linear Regression을 위한 몇 가지 팁들을 살펴보겠습니다. 앞서 배운 Gradient Descent 가 더 잘 작동하는 기법들을 보겠습니다. Feature Scaling 결론부터 말씀드리자면, Feature Scaling으로 feature값의 범위를 서로 비슷하게 만듬으로써 Gradient Descent의 속도를 높일 수 있습니다. feature의 갯수가 얼마나 큰지 규모와 매개변수의 크기 간의 상관관계를 보는 예시를 보겠습니다. 예를 들어 x1이 집의 크기인 평방피트 단위의 숫자, x2가 방의 갯수처럼 대부분 10 이하의 작은 수로 feature가 정해져 있다고 봅니다. feature와 매개변수 값을 대입을..
[Machine Learning Specialization by Andrew Ng 강의 노트] Course 1, Week 2, Lesson 1. Linear Regression with Multiple Variables Andrew Ng 교수님의 Machine Learning 강의를 정리한 내용입니다. Multiple features (variables) 집값을 예측하기 위해서 집크기(size in feet^2)를 변수로 가지고 선형회귀분석을 진행했습니다. 변수로 방 갯수, 층수, 연식 값이 있다면 집값을 예측하는데 더 많은 정보를 가지게 되겠죠. 변수가 여러개다보니 $$x_1, x_2, x_3, x_4$$ 위와 같이 지정합니다. 해당 표기는 $$x_j$$로 j 번째 피처를 의미합니다. $$\overrightarrow{x}^i$$ 가 가지는 의미는 모든 training 예제의 i번째 피처들 입니다. i번째 줄의 값들을 모두 일컫기 때문에 값이 하나가 아닌 여러개임을 나타내기 위해 행벡터라는 용어도 쓰인다고 합니다. 행벡..
[Machine Learning Specialization by Andrew Ng 강의 노트] Course 1, Week 1, Lesson 4. Gradient Descent Andrew Ng 교수님의 Machine Learning 강의를 정리한 내용입니다. Gradient Descent Cost function인 J(w)의 값을 가장 작게 만드는 w,b 파라미터를 넣어서 계산해 보는 방법도 있지만, 경사하강법(Gradient Descent)이 가장 최적의 방법입니다. 경사하강법은 머신러닝 전체에서 사용되고 있으며, 선형회귀 뿐만 아니라 가장 advanced한 신경망 모델인 딥러닝의 학습에도 사용됩니다. 선형회귀가 아니더라도 cost function인 J(w1,w2,...,wn,b)의 값을 최소화하는 w1,w2,...,wn,b 값을 고른다고 간단하게 생각할 수 있습니다. w와 b의 초기값을 추측하는 것부터 시작할 수 있는데요, 선형회귀에서는 초기값이 중요하지 않기 때문에 보통..
[Machine Learning Specialization by Andrew Ng 강의 노트] Course 1, Week 1, Lesson 3. Linear Regression Model Andrew Ng 교수님의 Machine Learning 강의를 정리한 내용입니다. Linear Regression 선형 회귀 모델은 세계에서 가장 널리 사용되는 supervised learning 일 것이고, 데이터에 직선을 하나 그린다고 생각할 수 있습니다. Lesson 2에서 예시로 들었던 집 크기에 따른 집 가격의 분포를 가지고 새로운 집의 가격을 예측하는 모델이 있습니다. 집 사이즈와 금액을 가진 정답 데이터를 기반으로 직선을 그리기 때문에 supervised learning이고, 숫자를 예측하기 때문에 regression입니다. 꼭 직선이 아닌 regression 모델도 있지만, 뒤에서 살펴볼 예정입니다. 또한 Lesson 2에서 배웠는데, regrssion에 반대되는 supervised le..
[Machine Learning Specialization by Andrew Ng 강의 노트] Course 1, Week 1, Lesson 2. What is Machine Learning? Andrew Ng 교수님의 Machine Learning 강의를 정리한 내용입니다. Intro 머신러닝 기술의 정의는 Arthur Samuel(1959)의 정의를 인용했는데요, '머신러닝은 명시적으로 프로그래밍되지 않고도 컴퓨터에 학습할 수 있는 능력을 부여하는 연구'입니다. [퀴즈] If the checkers program had been allowed to play only ten games (instead of tens of thousands) against itself, a much smaller number of games, how would this have affected its performance? Would have made it worse 이 강의에서는 머신러닝 도구를 쥐어주는 것과..
[Machine Learning Specialization by Andrew Ng 강의 노트] Course 1, Week 1, Lesson 1. Applications of Machine Learning Andrew Ng 교수님의 Machine Learning 강의를 정리한 내용입니다. 머신러닝 기술은 현재 일상, 산업, 의학 등 어디에서나 사용되고 있습니다. 머신러닝은 AI(Artificial Intelligence) 하위 단계로 성장 중입니다. 머신러닝에서 우리는 정확히 어떻게 기계가 동작할지 모릅니다. 우리가 아는 건 기계가 스스로 어떻게 동작할 지 학습한다는 점이고, 프로그래밍되지 않은 채로 기계가 스스로 동작하게 합니다. [예시] 웹 검색 음성 인식 x-ray 사진에서 병 진단 자율주행 자동차 그 외에도 다양한 산업 분야에서 머신러닝 애플리케이션이 사용된다고 할 수 있습니다. Andrew Ng 교수님도 Google Brain 팀에서 음성 인식, 컴퓨터 비전, 광고, 증강 현실, 금융 사기 문제에..
[Kaggle Getting Started Prediction Competition] Spaceship Titanic with XGBRegressor 머신러닝을 공부하게 되면 Titanic (이하 타이타닉호) 데이터를 처음 마주하는 경우가 많습니다. 타이타닉호 탑승객 정보가 속성으로 들어있는 고객 데이터를 기반으로 타이타닉호에서 생존을 했을까 안 했을까를 예측하는 모델을 생성하는 연습을 주로 하게 됩니다. 그다음 스텝으로 Kaggle에서 제공하는 Getting Started Prediction Competition인 Spaceship Titanic (우주선 타이타닉호)를 XGBRegressor를 이용해서 연습해보고자 합니다. 우주선 타이타닉호는 2912년에 태양계에서 다른 외계 행성으로 이주하기 위한 항해를 하고 있었습니다. 그러나 옛날에 타이타닉호와 비슷하게 거의 절반 가까이의 승객들이 다른 차원으로 이동해버렸다고 합니다. 손상된 컴퓨터 시스템 때문..