유사도 전파 Affinity Propagation 모델로 클러스터링
·
데이터 과학 Data Science/비지도학습
유사도 전파... Affinity Propagation 이라고 부르는데, 데이터 사이언스 웹사이트나 교재에 자주 소개되는 대표적인 비지도학습 클러스터링 방법 중 하나다. 공부해 보니 구현 방법이 상당히 독특하고 사용하는 case 도 특이해. 근데 국내에서 많이 안 쓰는지 한국어로 된 자료가 정말 별로 없더라.. 난 특이한걸 좋아하니깐 포스팅해보도록 하겠다. 1. 작동 원리 일단 유사도 전파는 쉽게 설명하면 각각의 데이터셋 포인트들 하나하나가 자기를 대표해 줄 만한 데이터에 투표를 하는 방식임! 데이터들 간의 유사성을 기준으로 자기랑 비슷하고 대표성이 있다고 판단되는 데이터에 대표투표를 해주고, (메시지를 전달한다 ~ 이렇게도 표현함) 최적의 대표 집합에 수렴할때까지 알고리즘이 반복한다 당연히 투표는 수식..
가우시안 혼합 모델로 클러스터링
·
데이터 과학 Data Science/비지도학습
1. 개념 가우시안 혼합 모델 Gausian Mixture Model 은 데이터의 분포가 가우시안인 경우 사용하는 혼합 모델이다. 데이터의 분포가 가우시안이다 = 정규분포다 라는거랜다. 왜 굳이 두가지 말을 쓰냐 해서 찾아봤는데 보통 공학에선 전자, 수학에선 후자로 말한다고 한다.. (참 나 찾아보기 전까지 어려운건줄 알고 긴장했잖아) 혼합 모델이라는건 데이터가 여러 구성 요소 분포에 의해 처리된다고 가정하는 확률밀도모델이다. 말이 되게 어려운데 예를들자면, 우리는 아시아 사람들의 쇼핑 스타일과 패턴을 알고 싶다고 가정하자. 이 때 나라를 기준으로 데이터를 쪼개 각각을 표현하는 모델을 만들고 그걸 어떻게 합쳐서 최종 모델을 만들면 국가별 특징과 대륙의 특징을 모두 살릴 수 있는 모델이 된다. 혼합 모델은..
평균 이동 알고리즘으로 데이터 클러스터링
·
데이터 과학 Data Science/비지도학습
이번엔 k- means 보다 약간 어려운.. 2단계 ! 데이터 클러스터링을 해보겠다. 평균 이동 Mean shift 은 비모수 알고리즘이다. 항상 말이 좀 어려워....비모수 알고리즘 = 데이터가 표준 확률 분포를 안 따른다고 가정 = 데이터가 적거나 독립적이거나 연속적이지 않음 뭔가 중간에 끊김. 여튼 뭔가 문제가 많은 데이터인 경우! 혹은 기본 분포에 대한 가정을 하지 않는 경우 이 알고리즘을 사용할 수 있다. 이렇게 분류하는 비지도학습 뿐 만 아니라 상관관계를 파악해야할때도 비모수 데이터들은 나를 곤란하게 한다.. 그래서 여러가지 다양한 방법들이 존재하는 것 ! 1. k-means 와의 차이 k- means 알고리즘은 중심에 소속된 데이터의 평균 거리를 기준으로 클러스터화시키는 반면, 평균 이동 알..
k-means 알고리즘으로 패턴 찾고 평가까지
·
데이터 과학 Data Science/비지도학습
비지도학습은 언제 쓰냐! 데이터에 라벨링이 안 되어 있을 때 쓴다. 라벨 = 정답값이라고 쉽게 생각하자. 내가 뭔가 데이터를 이용해서 예측이나 분류를 하는 모델을 만들고 싶어.. 그럼 예측값이나 분류값이 약간은 있어야될거아님..그래야 학습을 시킬거아님? 근데 그게 없어 이럴 때 쓴다 ㅎ 비지도 학습도 당연히 여러가지 대표 모델들이 있는데 기본적으로는 "유사성" 을 이용해서 주어진 데이터셋을 하위 데이터셋으로 분류함.그래서 분류된거끼리 묶으면 고걸 클러스팅이라고 부른다! 요번 포스팅은 그 여러가지 비지도 학습 중에서 정말 제일 쉽고 간단하고 자주 쓰이는 k-means 알고리즘을 다뤄보겠어. 1. k-means algorithm 개념과 작동원리 k-means 알고리즘은 기본적으로 means 의 개수(k개) ..
티스토리로 이사왔어요 (feat. 다양한 테크블로그 플랫폼)
·
카테고리 없음
안녕하세요! 네이버 블로그 "청춘세비" 를 운영중인 be 입니다 데이터 사이언스를 공부하는 테크블로그를 네이버로 운영하는건 정말 적합하지 않다는 생각은 5개월쯤 해왔으나... 저의 게으름이 블로그 이사를 지금까지 질질 끌어왔네요...^^ 저는 현재 코드스테이츠 AIB 13기의 파이널 프로젝트만을 앞두고 곧 인턴을 시작할 예정입니다! 앞으로 주니어 개발자로서 열심히 코드공부(라고 쓰고 삽질이라 읽는) 하는 내용들은 이곳에 포스팅할 예정입니다. 지금 잠깐 써보니 개발 블로그로 사용하기에 인터페이스나 코드블럭 지원이 아주 마음에 드네요.. 진작 이사 올걸 ㅋㅋㅋㅋ... 왜냐면,, 어떤 개발자도 자기 에러를 네이버에 검색하진 않으니까요..? 벨로그, 미디엄, 블로거 등등 여러개 옵션을 고민해봤는데, 인터페이스나..
Noa | 당신의 AI PM