CNN
·
딥러닝/Vision
CNN (Convolutional Neural Network) 3차원 convolution에서 kernel(필터)와 input의 채널수가 같아야 한다는 점을 항상 명심 하자. 물론, output의 channel수는 커널 한 개당 한 개가 나오게 되므로, output으로 여러 채널을 얻고 싶다면 커널수를 늘리면 된다. 당연히, 커널수가 늘어나는 그만큼 parameter수도 늘어나가 된다는 점을 기억하자. Convolution 각 파트에서 커널의 특징이 주어지는데, 맨 왼쪽부터 커널의 갯수, 너비 x 높이 x 채널수를 의미한다. output의 채널은 커널의 갯수만큼 나오게 된다. 고전적 CNN 위 그림은 가장 고전적, 기본적 CNN구조이다. convolution/pooling layer들에서는 feature..
Optimizer(최적화)
·
딥러닝/딥러닝 기초
Optimization Generalization: 일반화 성능, 학습 데이터와 테스트 데이터에서의 성능 차이 Under-fitting vs over-fitting : 학습데이터에서는 잘 동작하지만 테스트 데이터에서 성능이 떨어지는 경우(over), 학습 데이터 에서 조차 충분히 학습이 안된 경우(under) Crossvalidatoin : 학습 데이터를 나눠서 일부를 학습에 사용하지 않고 교차로 모델 성능 검증에 활용(최적의 하이퍼파라미터 조합을 위해 주로 사용) Bias-variance tradeoff : 분산(일관성)과 편향(치우침)의 trade-off 관계 Bootstrapping : 학습 데이터가 고정되어 있을때 서브샘플링을 통해 학습데이터를 여러개 만들어 내는 기법 Bagging 여러개의 모델..
컨텐츠 기반 필터링 실습
·
머신러닝
컨텐츠 기반 필터링 실습 TMDB 5000 영화 데이터 셋을 이용하여 컨텐츠 기반 필터링 실습을 해보자. 장르 속성을 이용한 콘텐츠 기반 필터링 콘텐츠 기반 필터링은 사용자가 특정 제품을 구매하고 그 제품이 마음에 들었다면 그 제품과 비슷한 특성/속성 , 구성 요소를 가진 다른 제품을 추천 하는 것이다. 제품(또는 서비스) 간의 유사성을 판단하는 기준이 제품을 구성하는 다양한 콘텐츠를 기반으로 하는 방식이 바로 콘텐츠 기반 필터링이다. 콘텐츠 기반 필터링 추천 시스템을 영화를 선택하는 데 중요한 요소인 영화 장르 속성을 기반으로 만들어 보자. 장르 칼럼 유사도를 비교한뒤 그중 높은 평점을 가지는 영화를 추천 하는 방식이다. 데이터 로딩 및 가공 장르 속성을 이용해 콘텐츠 기반 필터링을 수행하자. 먼저 데..
경사하강법을 이용한 행렬 분해
·
머신러닝
확률적 경사하강법을 이용한 행렬 분해 확률적 경사 하강법은 회귀에서 사용한 경사 하강법의 한 종류이다. 확률적 경사 하강법을 이용한 행렬 분해 방법을 요약하자면 ,P와 Q 행렬로 계산된 예측 R행렬 값이 실제 R 행렬 값과 가장 최소의 오류를 가질 수 있도록 반복적인 비용 함수 최적화를 통해 P와 Q를 유추해내는 것 이다. 확률적 경사 하강법을 이용한 행렬 분해의 전반적인 절차는 다음과 같다. P와 Q를 임의의 값을 가진 행렬로 설정 P와 Q.T 값을 곱해 예측 R 행렬을 계산하고 예측 R행렬과 실제 R 행렬에 해당하는 오류 값을 계산. 이 오류 값을 최소화 할 수 있도록 P와 Q 행렬을 적절한 값으로 각각 업데이트 만족할만한 오류 값을 가질 때 까지 2,3번 작업을 반복하면서 P와 Q 값을 업데이트해 ..
추천시스템
·
머신러닝
추천시스템이란 아마존, 이베이 등 유수의 전자상거래 업체가 추천 시스템 도입 후 큰 매출 향상을 경험했다. 하나의 콘텐츠를 선택했을 때 선택된 콘텐츠와 연관된 추천 콘텐츠가 얼마나 사용자의 관심을 끌고 개인에게 맞춘 콘텐츠를 추천했는지는 그 사이트의 평판을 좌우하는 매우 중요한 요소이다. 추천시스템의 진정한 묘미는 사용자 자신도 좋아하는지 몰랐던 취향을 시스템이 발견하고 그에 맞는 콘텐츠를 추천해주는 것이다. 이러한 추천 시스템을 접한 사용자는 해당 사이트를 더 강하게신뢰하게 되어 더 많은 추천 콘텐츠를 선택하게 된다. 결국 더많은 데이터가 추천 시스템에 축척되면서 추천이 더욱 정확해지고 다양한 결과를 얻을 수 있는 좋은 선순환 시스템을 구축 할 수 있게 된다. 추천시스템은 특히 온라인에서 그 진가를 발..
DBSCAN
·
머신러닝
DBSCAN DBSCAN은 밀도 기반의 대표적인 알고리즘이다 DBSCAN은 간단하고 직관적인 알고리즘으로 돼있음에도 데이터의 분포가 기하학적으로 복잡하 데이터 셋에도 효과적인 군집화가 가능하다. 다음과같은 형태의 데이터를 군집화 한다고 했을때, k-평균 알고리즘과 DBSCAN 의 결과를 비교해보자. DBSCAN이 효과적인 군집화를 수행하고 있는것을 알 수 있다. DBSCAN은 특정 공간 내에 데이터 밀도 차이를 기반알고리즘으로 하고 있어서 복잡한 기하하적 분포도를 가진 데이터 셋에 대해서도 군집화를 잘 수행한다. DBSCAN을 구성하는 가장 중요한 두 가지 파라미터는 입실론(epsilon) 으로 표기하는 주변영역과 이 입실론 주변 영역에 포함되는 최소 데이터 개수 min points 이다. 입실론 주변 ..
ariz1623
'머신러닝' 태그의 글 목록