카테고리 없음

model 정의

임이레 2022. 11. 3. 17:23

claasification : supervised learning 지도학습의 일종으로 기존에 존재하는 category 관계를 파악하고, 새롭게 관측된 데이터의 catergory 를 스스로 판별하는 과정이다. 단일분류와 다중분류로 나누어지고 다중분류의 경우 clustering과 비슷하지만 다른 점은 Domain of category

 

classifier:Decision Tree, Regression Tree and Ensemble method, Naïve Bayes, KNN

 

regression : supervised learning에 해당 되며 회귀분석의 경우 데이터 변수들 간에 함수 관계를 파악하여 통계적 추론을 하는 기술이다. 좀 더 쉽게 말하자면 독립변수에 대한 종속변수 값의 평균을 구하는 방법이다. y = h(x1,x2 .... ; B2, B2 ....Bk) + e

어떤 조건(x1, x2, x3 , ...) 이 주어지면 각 조건의 영향력(B1,B2, ....)을 고려하여 해당 조건에서의 평균값을 계산해주는 것인데 맨 뒤에 붙는 e 는 '오차항'을 의미한다. 측정상의 오차나 모든 정보를 파악할 수 없는 점 등 다양한 현실적인 한계로 인해 발생하는 불확실성이 여기에 포함된다. 이런 잡음은 이론적으로 보면 평균이 0 이고 분산이 일정한 정규 분포를 띄는 성질이 있다.

시간에 따라 변화하는 데이터나 어떤 영향, 가설적 실험, 인과 관계의 모델링등의 통계적 예측에 이용될 수 있다.

 

 

clustering : unsupervised의 대표적인 기술로 x에 대한 레이블이 지정되어 있지 않은 데이터를 그룹핑 하는 분석 알고리즘이다. 데이터의 특성을 고려하여 데이터 집단(cluster)을 정의하고 데이터 집단을 대표할 수 있는 중심점을 찾는 것으로 데이터 마이닝의 한 방법이라고 볼 수 있다.

각각의 데이터에 대한 정보는 아무 것도 없는 상태에서 주어진 데이터들을 가장 잘 설명하는 클러스터를 찾아내는 것이 클러스터링의 목적이다. 따라서 클러스터링은 대부분 Optimization 문제를 푸는 경우가 많다.

-K-means: 거리 기반으로 세우고 그것을 푸는 알고리즘, 클러스터를 정의하는 방법에는 여러 가지가 있을 수 있지만, 가장 간단한 정의 중 하나는 클러스터 내부에 속한 데이터들이 서로 ‘가깝다’라고 정의하고, ‘가장 가까운’ 내부 거리를 가지는 클러스터를 고르는 것이다

-Gaussian Mixture Model:확률과 확률분포를 기반으로 세우고 그것을 푸는 알고리즘

 

ranking : Ranking system 은 Query(검색어, 유저의 특성 등 ) 에 따라 Item들(문서, 컨텐츠 등)이 연관성 높은 순서로 정렬되는 알고리즘이라고 말할 수 있다.

item의 정확한 score를 regression하는게 아니라, optimal ordering of list of items.

종류:Pointwise|Pairwise|Listwise

각각은 loss function에 들어가는 document의 개수에 따라 구분된다.

pointwise는 1개, Pairwise는 2개, Listwise는 pointwise는 document가 query에 해당하는 relevancy를 학습하고, 실제 inference할 때는 각 document의 relevancy 순으로 출력, 즉 관건은, documents끼리 independent하다는 것, classical classification/regression을 사용, pairwise는 a pair of documents를 보고 ordering을 매김, the number of inversions를 줄이게끔 loss function을 정의하여 사용, relative order를 예측하는 게 좀 더 ranking의 본질에 가깝다. 단점은 training/inference가 시간복잡도가 크고 사실 낮은 ranking에 존재하는 pair끼리의 계산이나 상위 ranking에 존재하는 pair끼리의 계산이 동일하게 들어가는 점이 단점,  listwise는 entire list of documents를 보고 optimal ordering을 찾는 것, 예를 들면, NDCG를 utility function으로 보고 학습, 장점이 training/inference의 시간복잡도가 낮다

 

** Recommender system과 Ranking의 차이점은? ** 

-ranking은 ordering이 결과임, 개별 item의 score도 predicted rating이 아니라, ordering으로서의 score이며 utility로서의 score가 아님

-ranking은 user의 input(query나 category선택, 지리적 정보 등)이 중요한 역할

 

5. recommendation: Recommendation problem은 여태까지 사용자가 item에 대해 evaluate한 history data를 기반으로 사용자가 아직 사용하지 않은 item에 대한 사용자의 평가를 예측하는 문제라고 할 수 있다. 추천과 랭킹 문제는 마케팅을 포함한 다양한 분야에서 오랜 세월 관심을 가져왔던 분야이다. 특히 광고를 제작하는 사람들 입장에서는 적은 비용으로 최대한의 효율을 낼 수 있는 타겟광고는 그야말로 금덩이나 다름없는 영역이라 할 수 있을 것이다. 추천은 그만큼 제한된 자원을 최대한 효율적으로 분배할 수 있는 방법이기도 하며, 사람들의 지갑을 더 열게 할 수 있는 중요한 문제인 것이다. Netflix와 왓챠는 내가 점수를 매긴 별점을 바탕으로 내가 좋아할만한 영화나 드라마를 추천해준다. 아마존, 이베이, Gmarket ,쿠팡 등의 온라인 쇼핑몰들 역시 내가 클릭했던 상품들의 history를 기반으로 내가 좋아할만한, 사고싶어할만한 상품들을 추천해주거나, 이 상품들을 묶어서 하나의 작은 할인 패키지를 구성하기도 한다. 페이스북은 내가 좋아요를 누른 포스트들을 바탕으로 내가 좋아할만한 페이지를 추천하고, 타겟 광고를 내보낸다. 우리가 지금은 너무나 자연스럽게 받아들이는 이 사실들은 전부 머신러닝에 의해 가능해진 것들이다.

 

 

*강의 및 다양한 블로그 내용 참조하여 공부 그저 기록