본문 바로가기
728x90
반응형

전체 글190

Dimensionality Reduction 이번 장에서는 차원을 축소하는 방법에 대해서 알아본다. 차원의 저주(curse of dimensionality)는 분석하는 데이터가 차원(feature)이 커지면 커질수록 row dimension에서 일어나지 않은, 기대하지 않은 현상들도 일컫게 되어 학습모델을 잘 만드는데 있어서 안좋은 요소로써 작용한다. 샘플을 늘리지 않는 상황에서 독립변수만 늘리게 되면 sample space가 굉장히 커지게 된다. 아래의 그림처럼 1차원에서는 5개의 샘플로 채웠던 것이 차원(feature, axis)이 증가할수록 sample space는 커지게 되어 데이터를 설명하기위해 필요한 데이터도 당연 늘어나게 되고, 이러한 차원이 계속해서 많아지게 되면 데이터의 패턴을 파악하기가 힘들어진다. 즉 모델을 만들기 까다로워진다... 2020. 11. 16.
Collaborative Filtering 에서의 유사도 지표 제안 논문(2). 이번 장에서는 아래의 포스팅 처럼 2가지 논문을 요약했던 것 처럼 또 2가지 논문을 살펴본 내용을 간략하게 요약하고자 한다. Collaborative Filtering 에서의 유사도 지표 제안 논문. Collaborative Filtering 에서의 유사도 지표 제안 논문. CF 알고리즘에서 새로운 유사도 지표를 제안하여 기존 보다 나은 성능을 내도록 연구한 논문에 대한 간략한 정리. 이번 장에서는 2개의 논문에 대한 정리를 한다. 기존의 어떤 문제를 해결하 data-science-hi.tistory.com 1. Integrating Triangle and Jaccard similarities for recommendation (2017). 먼저 소개할 논문은 Integrating Triangle and.. 2020. 11. 9.
Support Vector Machine(2) 이번 장에서는 SVM 관련해서 저번에 보았던 Classification 말고 이 후에 개발된 방법에 대해 알아본다. 우선 SVC에서 약간 변형된 버전을 설명해본다. $\nu$-SVM 은 기존 컨셉과 동일하다. 역시 decision boundary를 찾기 위한 목적함수가 설정이 되어있다. 기존의 dual form으로 나타낸 목적함수는 아래와 같다. $\nu$_SVM 같은 경우는 기존의 form에서 $C$ 부분이 사라지고, 새로운 term인 $\nu \rho$가 추가된 것을 볼 수 있다. 먼저 $n$이라는 것은 데이터 전체 개수이기 때문에 우리가 조절하는 parameter는 아니다. 대신에 $\nu$ (nu라고 읽는다. 누.) 라는 것은 parameter로써 우리가 조절할 수 있다. 그리고 $\rho$ 의 .. 2020. 11. 6.
쿼드압축 후 개수 세기 (프로그래머스 level2) 문제 설명 0과 1로 이루어진 2n x 2n 크기의 2차원 정수 배열 arr이 있습니다. 당신은 이 arr을 쿼드 트리와 같은 방식으로 압축하고자 합니다. 구체적인 방식은 다음과 같습니다. 당신이 압축하고자 하는 특정 영역을 S라고 정의합니다. 만약 S 내부에 있는 모든 수가 같은 값이라면, S를 해당 수 하나로 압축시킵니다. 그렇지 않다면, S를 정확히 4개의 균일한 정사각형 영역(입출력 예를 참고해주시기 바랍니다.)으로 쪼갠 뒤, 각 정사각형 영역에 대해 같은 방식의 압축을 시도합니다. arr이 매개변수로 주어집니다. 위와 같은 방식으로 arr을 압축했을 때, 배열에 최종적으로 남는 0의 개수와 1의 개수를 배열에 담아서 return 하도록 solution 함수를 완성해주세요. 제한사항 arr의 행의.. 2020. 11. 4.
삼각달팽이 (프로그래머스 level2) 문제 설명 정수 n이 매개변수로 주어집니다. 다음 그림과 같이 밑변의 길이와 높이가 n인 삼각형에서 맨 위 꼭짓점부터 반시계 방향으로 달팽이 채우기를 진행한 후, 첫 행부터 마지막 행까지 모두 순서대로 합친 새로운 배열을 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 1,000 이하입니다. 입출력 예 nresult 4 [1,2,9,3,10,8,4,5,6,7] 5 [1,2,12,3,13,11,4,14,15,10,5,6,7,8,9] 6 [1,2,15,3,16,14,4,17,21,13,5,18,19,20,12,6,7,8,9,10,11] def solution(n): answer = [] floors = [i for i in range(1,n+1)] # 체크해야할 각층을 나타내.. 2020. 11. 4.
Collaborative Filtering 에서의 유사도 지표 제안 논문. CF 알고리즘에서 새로운 유사도 지표를 제안하여 기존 보다 나은 성능을 내도록 연구한 논문에 대한 간략한 정리. 이번 장에서는 2개의 논문에 대한 정리를 한다. 기존의 어떤 문제를 해결하고자 하는지, 제안하려는 유사도 지표가 주는 이점, 한계점 등에 대해 간략하게 정리한다. 1. A new similarity measure for collaborative filtering based recommender systems 2019, Achraf Gazdar, Lotfi Hidri. 요약: CF 알고리즘은 유사도 지표를 토대로 유사한 사용자 집단을 구성하고, 이를 토대로 추천이 이루어진다. 이 때, 유사도를 측정하는 부분에 있어서 지금껏 다양한 유사도를 제안해왔고, 이 논문은 심플하고 효율적인 유사도 지표를 .. 2020. 10. 29.
더맵게(프로그래머스 level 2) 더 맵게 문제 설명 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같이 특별한 방법으로 섞어 새로운 음식을 만듭니다. 섞은 음식의 스코빌 지수 = 가장 맵지 않은 음식의 스코빌 지수 + (두 번째로 맵지 않은 음식의 스코빌 지수 * 2) Leo는 모든 음식의 스코빌 지수가 K 이상이 될 때까지 반복하여 섞습니다. Leo가 가진 음식의 스코빌 지수를 담은 배열 scoville과 원하는 스코빌 지수 K가 주어질 때, 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 섞어야 하는 최소 횟수를 return 하도록 solution 함수를 작성해주세요. 제한 사항 s.. 2020. 10. 26.
추천시스템에서의 유사도 지표와 피드백 특징 연구. CF알고리즘에서 메모리 기반의 kNN 알고리즘에서 주요 이슈로 기본적으로 cold-start가 있고, 그리고 또 동시 평가 아이템을 기준으로 유사도를 구하는 알고리즘의 특성상, 동시 평가 아이템이 적을 수 밖에 없는 평점 매트릭스에서 더 잘 유사도를 구하기 위한 연구들에 대해 알아본다. 주어진 평점 매트릭스는 늘 sparse하다. 그럴 수 밖에 없는 것이 아이템은 제한되어 있고, 사용자는 상대적으로 훨씬 많다. 특정 사용자 둘 간의 유사도를 구하려해도 동시에 평가한 항목들이 소수여서 제대로 유사도가 측정되지 않는다. 이를 개선하고 싶으면 먼저, 유사도를 구하는 방법들에 대해 탐구할 필요가 있다. 유사도를 구하는 식은 다양하며 각 유사도가 가진 특징을 보고 적절히 발전을 시키면 기존의 base simila.. 2020. 10. 23.
문자열압축(프로그래머스 level2) 문제 설명 데이터 처리 전문가가 되고 싶은 어피치는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자열에서 같은 값이 연속해서 나타나는 것을 그 문자의 개수와 반복되는 값으로 표현하여 더 짧은 문자열로 줄여서 표현하는 알고리즘을 공부하고 있습니다. 간단한 예로 aabbaccc의 경우 2a2ba3c(문자가 반복되지 않아 한번만 나타난 경우 1은 생략함)와 같이 표현할 수 있는데, 이러한 방식은 반복되는 문자가 적은 경우 압축률이 낮다는 단점이 있습니다. 예를 들면, abcabcdede와 같은 문자열은 전혀 압축되지 않습니다. 어피치는 이러한 단점을 해결하기 위해 문자열을 1개 이상의 단위로 잘라서 압축하여 더 .. 2020. 10. 22.
728x90
반응형