일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- codingthematrix
- 코딩더매트릭스
- 그래프이론
- yarn
- collections
- effective python
- C
- GRU
- 파이썬
- recursion
- scrapy
- LSTM
- Java
- 알고리즘
- 하둡2
- 주식분석
- tensorflow
- 텐서플로
- 하이브
- hadoop2
- graph
- hive
- RNN
- 딥러닝
- NumPy
- 선형대수
- python
- Sort
- HelloWorld
- C언어
- Today
- Total
목록Machine_Learning(ML) (9)
EXCELSIOR
차원 축소 - Locally Linear Embedding (LLE)이번 포스팅은 Nonlinear Dimensionality Reduction by Locally Linear Ebedding (Roweis et.al) 논문과 핸즈온 머신러닝 교재를 가지고 공부한 것을 정리한 것입니다. 1. LLE - Locally Linear Embedding 란?LLE(Locally Liner Embedding, 지역 선형 임베딩)는 Nonlinear Dimensionality Reduction by Locally Linear Ebedding (Roweis et.al) 논문에서 제안된 알고리즘이다. LLE는 비선형 차원 축소(NonLinear Dimensionality Reduction, NLDR) 기법으로 '차원 ..
차원 축소 - PCA (1)대부분 실무에서 분석하는 데이터는 매우 많은 특성(feature)들을 가지고 있다. 이러한 데이터를 가지고 머신러닝 알고리즘을 적용해 문제를 해결하려고 한다면, 데이터의 차원이 크기 때문에 학습 속도가 느릴 뿐만아니라 성능 또한 좋지 않을 가능성이 크다. 이번 포스팅에서는 데이터의 차원을 축소하는 방법인 투영(projection)과 매니폴드 학습(manifold learning) 그리고 대표적인 차원 축소 알고리즘인 주성분분석(PCA)에 대해 알아보도록 하자. 1. 차원의 저주 머신러닝에서 데이터 셋의 특성(feature)가 많아지면, 각 특성인 하나의 차원(dimension) 또한 증가하게 된다. 이렇게 데이터의 차원이 증가할 수록 데이터 공간의 부피가 기하 급수적으로 증가하..
이번 SVM 관련 포스팅은 '오일식 저, 패턴인식' 교재와 '핸즈온 머신러닝' 그리고 'ratsgo' 블로그를 참고하여 작성하였습니다. SVM에 대해 간략하게 알고 싶으신 분들은 여기를 참고하시면 됩니다.SVM 이란?SVM(Support Vector Machine)은 러시아 과학자 Vladimir Vapnik가 1970년대 후반에 제안한 알고리즘으로, 그 당시에는 크게 주목 받지 못했다. 하지만 1990년대에 들어 분류(classification)문제에서 우수한 일반화(generalization) 능력이 입증되어 머신러닝 알고리즘에서 인기 있는 모델이 되었다고 한다. 그리고 SVM은 일반화 측면에서 다른 분류 모델과 비교하여 더 좋거나 대등한 것으로 알려져 있다.또한, SVM은 선형 또는 비선형 분류 뿐..
이번 포스팅은 구글의 PageRank를 Text에 적용시킨 TextRank 알고리즘에 대한 내용이다. TextRank 알고리즘을 알아본 후 다음 포스팅에서 TextRank를 이용하여 문서를 요약해주는 시스템 구현을 포스팅할 예정이다. TextRank 란? TextRank는 Mihalcea(2004)이 제안한 알고리즘으로 텍스트에 관한 graph-based ranking model 로써, Google의 PageRank를 활용한 알고리즘이다. PageRank는Brin and Page(1998)이 제안한 알고리즘으로 하이퍼링크를 가지는 웹 문서에 상대적 중요도에 따라 가중치를 부여하는 방법이다. 서로간의 인용과 참조로 연결된 임의의 묶음에 적용할 수 있다.(wikipedia) PageRank가 높은 웹페이지는..
1. Support Vector Machine, SVM이란?Support Vector Machine(SVM)은 원 훈련(또는 학습)데이터를 비선형 매핑(Mapping)을 통해 고차원으로 변환한다. 이 새로운 차원에서 초평면(hyperplane)을 최적으로 분리하는 선형분리를 찾는다. 즉, 최적의 Decision Boundary(의사결정 영역)를 찾는다. 그렇다면 왜 데이터를 고차원으로 보내는 것일까? 예를 들어, 아래의 [그림1]과 같이 A=[a, d], B=[b, c]는 2차원에서 non-linearly separable(비선형 분리)하다. 이를 통해 한 차원 높은 3차원으로 Mapping하게 되면 linearly separable(선형 분리)하게 된다. 따라서, 충분히 큰 차원으로 적절한 비선형 매핑..
1. 로지스틱 회귀(Logistic Regression)이란?로지스틱 회귀는 선형회귀(Linear Regression)와 마찬가지로 종속 변수와 독립 변수간의 관계를 구체적인 함수로 나타내 향후 예측 모델에 사용하는 것이다. 하지만 로지스틱 회귀는 선형 회귀와 다르게 종속 변수가 범주형 데이터일 때 사용하므로 결과가 특정 카테고리로 분류되기 때문에 Classification 기법이라고 할 수 있다. 로지스틱 회귀는 종속 변수에 따라 binomial, multinomial 등으로 나뉜다. 이번 포스팅에서는 Binomial Logistic Regression에 대해 알아보도록 한다. 2. 로지스틱 함수(Logistic Function)로지스틱 함수는 시그모이드 함수(Sigmoid function)에 속하는 ..
규칙기반학습(Rule-Based Learning) 주어진 입력에 대해서 결과값을 도출하는 방법으로 if-then 방식이라고도 한다. 확고한 규칙(rule)에 따라 학습 및 예측을 하는 방법이다. 좀 더 자세히 이해하기 위해 대표적인 예제인 기상데이터를 가지고 알아보도록 하자. 날씨에 따라 나가서 놀 것인지 아닌지 결정하는 예제이다. 위의 예제는 많은 가설(h)들이 존재한다. 예를 들어, 일 때 EnjoySpt는 yes라는 가설을 세울 수 있다. 여기서 ‘?’는 don’t care를 의미한다. Find-S Algorithm 위의 예제에서 EnjoySpt가 yes일 조건을 최대한 만족할 수 있는 가설을 찾기 위해 Find-S 알고리즘을 사용하여 찾을 수 있다. Initialize h to the most s..
1. 왜 Naive Bayes Classifier인가?먼저 베이즈 분류기(bayes Classifier)는 베이즈 이론(bayes theorem)에 기반한다. 분류 알고리즘의 성능 비교를 연구하는 학자들은 의사결정나무나 신경망과 비슷한 성능을 가지느 단순 베이즈 분류기(Naive Bayes Classifier)간단한 베이즈 분류기를 발견하게 된다. 단순 베이즈 분류기는 주어진 클래스의 한 속성 값이 다른 속성의 값과 상호독립임을 가정한다. 이 가정을 클래스 조건부 독립(class conditional independence)라고 한다. 이 가정은 계산과정을 간단하게 하므로 그런의미에서 단순(naive) 하다고 한다.(클래스 조건부 독립에 대해서는 밑에서 설명을 참고) 2. 베이즈 정리(Bayes theo..