이 글은 충남대학교 양희철 교수님의 수업을 듣고 작성한 글입니다 1. Deep Neural networks(DNN) Hidden Layer를 늘리면 사람의 뉴런처럼 더 많은 레이어를 가지기 때문에 비선형 문제에 대해서도 좋은 성능을 보인다. (레이어를 늘림 => 가중치, 파라미터 수 증가 => 더 복잡한 문제 해결 가능) 따라서 DNN은 아주 큰 크기로 나아간다. 앞에서 히든 노드 수를 늘려도 근사하게 따라갈 수 있다는 universal approximation theorem에 대해서 배웠었다. 그럼 히든 레이어를 늘리는 것과 히든 레이어의 노드 수를 늘리는 것의 차이는 무엇이고 뭐가 더 좋을까? 더보기 => 하나의 히든 레이어에 노드 수를 많이 두는 것은 근사하게 따라갈 수 있으나 너무 비효율..
이 글은 충남대학교 양희철 교수님의 수업을 바탕으로 작성한 글입니다 1. Neural Network 신경망 구조로 뉴런들을 많이 연결시켜서 신호를 전달한다. 신경의 전달 과정을 수학적으로 모방(신경에 전달되는 값이 변화를 일으키며, 즉 weight가 곱해져서 전달하는 머신러닝 모델의 가장 일반적 형태이다 x1, x2에 적절한 weight가 곱해진 값을 다 더하면 0보다 크냐, 작냐를 물어보고 0(decision boundary)보다 크면 1, 작으면 -1이다의 함수로 모델링한다. 이러한 구조는 가장 linear한 경계를 가지는 분류 모델이다 좀 더 일반화해서 나타내보자 i개의 feature가 있고 각각에 대해서 가중치를 곱해주고 bias가 더해진다. 이를 가중합이라고 한다. 이 가중합을 함수를 ..
이 수업은 충남대학교 양희철 교수님의 수업을 듣고 작성한 글입니다. 이전 시간까지는 어떤 머신러닝 알고리즘이 있는지, 이들이 어떻게 사용되고 어떤 장단점이 있는지에 대해 주로 학습하였다. 이번 시간에는 이들의 성능을 높일 수 있는 방법에 대해 알아보자 본격적으로 알아보기 전에 앙상블이 뭐하는 것이고, 어떻게 진행되는지를 간략하게 한번 보자. 이해하기 쉽게 Q&A 방식으로 보도록 하자. 앙상블이란 하나의 문제를 풀기 위해 여러 개의 모델을 활용하는 것에 초점을 두고 있다. Q. 여러 개의 모델은 어떻게 얻을 수 있을까요?더보기A. Data의 feature 중 일부를 랜덤하게 추출 => model 하나를 생성 => 다시 data의 feature 중 일부를 랜덤하게 추출 => model..
이 수업은 충남대학교 양희철 교수님의 수업내용을 바탕으로 작성한 글입니다 1. Decision Tree 어떤 결정을 내리는데 있어서 트리 구조로 결정을 내리는 것이다. IF-THEN 룰에 따라서 질문을 계속하면서 어떤 경계에 따라 계속 가지를 뻗는다. 쉽게 이해하면 스무고개라고 생각하자!=> 리프 노드의 어떤 결과가 나오도록 하는 방법을 알고리즘 형태로 정리한 것이 바로 의사 결정 트리이다 Decision Tree의 큰 특징이 무엇일까? 1. Recursive한 partitioning 2. 어떤 축에 대해 orthogonal partitioning을 한다. 3. Greedy method : 판단하는 시점에 어떤 경계를 가지는 것이 최적이냐를 판단한다. => 모든 case들을 다 고려해서..
이 수업은 충남대학교 양희철 교수님의 수업을 듣고 작성한 글입니다 1. K-nearest neighbor classifier (k - NN) 가장 직관적이고 쉬운 분류 알고리즘이다. K개의 근접한 이웃 데이터를 보고, 새로운 데이터의 분류를 판단한다. 즉, 가장 비슷한 애들이 나를 설명한다! 주변 데이터와의 거리를 측정하여 이를 기반해서 분류하므로 데이터를 직관적으로 활용 가능하다. k-NN을 관통하는 가장 중요한 단어는 바로 '거리'이다 # Distance feature의 개수는 차원을 의미하고 가장 근접한 k개의 데이터를 보고 판단한다. 우리가 거리를 구하기 위해서는 data를 벡터 스페이스에 표현해야한다! 거리는 어떻게 구할 수 있을까? # Manhatten distance D..
이 글은 충남대학교 양희철 교수님의 수업을 듣고 작성한 글입니다 Regression이란 무엇일까?분류와 마찬가지로 지도학습의 일종이다. 하지만 분류가 이산적인 값을 예측했다면 회귀는 continuous한 값을 예측한다. 예를 들면 강수량, 와인 가격..등등 => 두 값 사이의 상대적인 관계를 예측하는 것이 회귀이다!회귀도 여러가지 알고리즘이 존재한다.1. Linear regression2. Multivariate Linear regression3. Lasso and Ridge Linear regression4. Neural network regression5. SVM(support vector machine)6. Decision tree오늘 우리가 알아 볼 것은 Linear Regression이다!! ..
이 수업은 충남대학교 양희철 교수님의 수업을 듣고 작성한 글입니다. Classifier란 무엇일까?● 이산적인 값을 가진다(이거 아니면 저거)● 지도 학습의 하나이다=> 크게 어려운 내용은 없다. 본격적으로 들어가보자. 1. 베이지안 분류기 베이지안 분류기를 자세히 알아보려면 조건부 확률에 대해서 알 필요가 있다. # Prior 각각의 클래스에 속할 확률이다. 즉 자연적으로 정해진 확률이다. 관찰을 통해 얻은게 아니기 때문에 not observed라고도 한다. 한 마디로 관측한 훈련 데이터와 independent 하다는 것이다! 아래의 예시를 한번 보자. # Likelihood likelihood(우도)는 observed data의 각 클래스 별로 특정 feature에 대한 분포라고 한다. li..
이 글은 충남대학교 양희철 교수님의 수업 내용울 바탕으로 작성한 글입니다. 우리가 본격적으로 분류와 회귀에 대해 알아보기 전에 머신러닝이 무엇인지 간략하게 알아보도록 하자1. 머신러닝이란? 컴퓨터 프로그램이 경험을 통해 과업수행 능력이 상승될 때, 과업의 수행 능력이 경험에 의해 상승하는 것을 말한다. (E : experience, T : task, P : performance) 기존의 프로그래밍은 데이터를 프로그래밍해서 결과를 도출했다면 머신러닝은 데이터와 output을 통해 새로운 데이터에 대한 예측을 하는 것이다! 여기서 Input과 output의 관계는 직접 정해주는 것이 아니라, 데이터를 통해서 학습한다. 즉 특정 모사를 하여 관계를 정의한다. 아까 정의를 설명할 때 task, experie..