欲速不達

일을 급히 하고자 서두르면 도리어 이루지 못한다.

Fantastic AI, Fantastic World
728x90
반응형

DS | Data Science 67

[프로그래머스] 고득점 Kit - 그래프 : 가장 먼 노드(파이썬)

1. 문제설명 n개의 노드가 있는 그래프가 있습니다. 각 노드는 1부터 n까지 번호가 적혀있습니다. 1번 노드에서 가장 멀리 떨어진 노드의 갯수를 구하려고 합니다. 가장 멀리 떨어진 노드란 최단경로로 이동했을 때 간선의 개수가 가장 많은 노드들을 의미합니다. 노드의 개수 n, 간선에 대한 정보가 담긴 2차원 배열 vertex가 매개변수로 주어질 때, 1번 노드로부터 가장 멀리 떨어진 노드가 몇 개인지를 return 하도록 solution 함수를 작성해주세요. 2. 제한사항 노드의 개수 n은 2 이상 20,000 이하입니다. 간선은 양방향이며 총 1개 이상 50,000개 이하의 간선이 있습니다. vertex 배열 각 행 [a, b]는 a번 노드와 b번 노드 사이에 간선이 있다는 의미입니다. 3. 입출력 예..

[RecSys] 한 눈에 보기 정리 - 1

Recommender System 개요 사용 이유 문제 정의 평가 지표 Offline Test Online Test Simple Aggregate Popularity Rating 연관분석 : Association Analysis / Association Rule Mining 컨텐츠 기반 필터링 : Content-based Filtering / Content-based Recommendation TF-IDF : Term Frequency - Inverse Document Frequency 협업 필터링 : Collaborative Filtering NBCF : Neighborhood-Based Collaborative Filtering - Memory-Based CF UBCF : User-Based Coll..

[논문] Item-based collaborative filtering recommendation algorithms

Recommender System Collaborative Filtering NBCF : Neighborhood-Based Collaborative Filtering UBCF : User-Based Collaborative Filtering IBCF : Item-Based Collaborative Filtering 1. Collaborative Filtering : Overview 특징 user-item에 대한 선호도(rating)에 대한 database를 사용 특정한 user A와 가장 유사한 성향을 가진 다른 user B에게 A가 선호하는 item을 추천하는 방식 최종목적 : 특정한 user가 특정한 item에 대해 가질 선호도(rating)을 예측 예시) user A와 B가 선호도가 유사함을 보일때..

[RecSys] kNN Collaborative Filtering : scikit-surprise 라이브러리 / MovieLens Data

!pip install scikit-surprise scikit-surprise 패키지는 Collaborative Filtering 관련 머신러닝 라이브러리이다. kNN 뿐만 아니라 MF 등의 알고리즘도 제공하지만 여기서는 kNN 알고리즘만 사용했다. - Reader, Dataset from surprise import Reader, Dataset reader = Reader(rating_scale=(0.5, 5.0)) data = Dataset.load_from_df(ratings_df[['userId', 'movieId', 'rating']], reader) - train_test_split from surprise.model_selection import train_test_split # train..

[RecSys] Basic - 3

인기도 기반 추천 / 평가지표 - MovieLens 데이터셋 가공 - 가공한 데이터 활용 -> 인기도 기반 추천 - 평가지표 1. 전처리 MovieLens 100k Dataset - 원천데이터 https://grouplens.org/datasets/movielens/ MovieLens GroupLens Research has collected and made available rating data sets from the MovieLens web site ( The data sets were collected over various periods of time, depending on the size of the set. … grouplens.org 데이터 구성 영화에 대한 제목, 장르, 연도 등의 데이..

[논문] BPR: Bayesian Personalized Ranking from Implicit Feedback

BPR: Bayesian Personalized Ranking from Implicit Feedback은 Model-based Collaborative Filtering의 하나로, Implicit Feedback 데이터를 활용해 Matrix Factorization를 학습할 수 있는 방법이다. Bayesian 추론에 기반하고 있으며, Implicit data를 사용해 서로 다른 아이템에 대한 유저의 선호도를 반영하도록 모델링하고 추천하게 된다. 본 논문에서 추천이란, user가 선호할 만한 item 목록 (Personalized Ranking)를 예측하는 것을 말한다. Personalized Ranking의 대표적인 방법으로는 Matrix Factorization과 k-Nearest Neighbor이 있..

[프로그래머스] 고득점 Kit - 완전탐색 : 모음사전(파이썬)

1. 문제설명 사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니다. 단어 하나 word가 매개변수로 주어질 때, 이 단어가 사전에서 몇 번째 단어인지 return 하도록 solution 함수를 완성해주세요. 2. 제한 사항 word의 길이는 1 이상 5 이하입니다. word는 알파벳 대문자 'A', 'E', 'I', 'O', 'U'로만 이루어져 있습니다. 3. 입출력 예시 word result "AAAAE" 6 "AAAE" 10 "I" 1563 "EIO" 1189 입출력 예 #1 사전에서 첫 번째 단어는 "A"이고, 그다음은..

[RecSys] Basic - 2

(1) 추천시스템은 다른 분야(CV, NLP)에 비해 딥러닝 모델과 전통적인 머신러닝 모델의 성능차이가 Dramatic하지 않다. (2) 현업에서는 규모가 큰 데이터의 트래픽을 감당해야한다 -> 모델의 Inference time(모델 서빙의 latency)가 중요해짐 -> 근데 딥러닝 모델은 아무래도 무겁기 때문에, 성능차이가 아주 크지 않는 이상 장점이 적음 위의 두 가지 이유로 추천시스템에서는 클래식한 머신러닝 모델도 아직 많이 사용하고 있다. 클래식한 모델은 연관분석(Association Rule Analysis / Association Rule Mining), Content-based Recommendation, Collaborative Filtering, Item2Vec Recommendatio..

[RecSys] Basic - 1

1. 추천 시스템 : Recommender System - 필요성 1) 과거에는 유저가 접할 수 있는 상품, 컨텐츠가 제한적 -> 적은 수의 매체 2) 웹/모바일 환경 -> 다양한 상품과 컨텐츠를 쉽게 접할 수 있게 만들어줌 정보가 많아짐 Long Tail Phenomenon 발생 - 정보를 찾는 데 오히려 시간이 오래 걸림 / 유저가 어떤 키워드로 찾아야할지 모를 수 있음 : 개인화/맞춤 서비스로 발전 2. 추천 시스템에서의 정보(Information) 1) 유저 관련 정보 : User Information - 유저 프로파일링 : User Profiling : 추천대상이 되는 유저에 관련된 정보를 구축, 개별 유저 혹은 그룹별로 추천하기 위한 목적 식별자 : 유저 ID, 디바이스 ID, 브라우저 쿠키 ..

[프로그래머스] 고득점 Kit - 그리디 : 단속카메라(파이썬)

1. 문제 설명 고속도로를 이동하는 모든 차량이 고속도로를 이용하면서 단속용 카메라를 한 번은 만나도록 카메라를 설치하려고 합니다. 고속도로를 이동하는 차량의 경로 routes가 매개변수로 주어질 때, 모든 차량이 한 번은 단속용 카메라를 만나도록 하려면 최소 몇 대의 카메라를 설치해야 하는지를 return 하도록 solution 함수를 완성하세요. 2. 제한사항 차량의 대수는 1대 이상 10,000대 이하입니다. routes에는 차량의 이동 경로가 포함되어 있으며 routes[i][0]에는 i번째 차량이 고속도로에 진입한 지점, routes[i][1]에는 i번째 차량이 고속도로에서 나간 지점이 적혀 있습니다. 차량의 진입/진출 지점에 카메라가 설치되어 있어도 카메라를 만난것으로 간주합니다. 차량의 진입..

728x90
반응형