분류 전체보기
-
나를 위한 추천알고리즘 feat.논문카테고리 없음 2022. 5. 31. 17:13
텍스트 데이터 적용하기 Joint Training of Ratings and Reviews with Recurrent Recommender Networks Abstract 평점과 리뷰 데이터를 모두 활용하여 추천시스템을 만든다 Recurrent 모델 구조를 활용하여 user와 item의 다양한 component를 얻어내고자 한다 IMDB 데이터셋을 활용하여 모델 성능에 대한 실험을 진행한다 Introduction 현재까지 추천시스템에 대한 연구의 제한사항들 1. 모델 예측 정확도는 실제 평점을 예측하는 것보다 주로 데이터셋을 나누고 테스트셋에 대한 평가가 이루어진다 2. Recurrent Recommender Networks(RNN)은 RNN 모델 구조로 user와 item 변화 등을 파악할 수는 있으나..
-
하이브리드추천시스템과 Context-Aware카테고리 없음 2022. 5. 17. 11:47
Contents-based Recommender System Collaborative Filtering Neighborhood-based Collaborative Filtering (User-based/Item-based) Model-based Collaborative Filtering Contents-based vs. Collaborative Filtering What is Hybrid 다양한 데이터와 다양한 알고리즘을 조합하는 방식 -> 유저와 아이템 프로필, 유저와 아이템의 상호관계, 유저 주변의 다른 유저 정보, 아이템과 비슷한 다른 아이템 정보 가용할 수 있는 최대 정보 또는 지식을 다양한 source로부터 얻어서 활용하는 방식 다양한 추천알고리즘의 장점만 모아서 성능 좋고, 뛰어난 시스템을 만..
-
모델기반 협엽필터링카테고리 없음 2022. 5. 10. 12:23
모델기반 협업필터링 머신러닝을 가장 잘 활용한 추천알고리즘의 일종 주어진 데이터를 활용하여 모델 학습 학습과정에서 모델이 데이터를 배워서 데이터 정보를 압축한다 항목간 유사성에서 벗어나, 데이터의 패턴을 학습 데이터 크기 또는 데이터의 특징을 동적으로 활용 가능하다 데이터의 잠재적 특성(선호하는 취향)을 파악하는 모델(Latent Factor Model) 모델기반 협업필터링 장점1 추천모델(알고리즘)의 크기 - 수많은 데이터로 구성된 행렬보다 압축된 형태로 저장 추천모델(알고리즘)의 학습과 예측 속도 - 데이터 전처리와 학습과정으로 미리 모델 준비->준비된 모델로 예측 추천모델(알고리즘)의 과적합 방지 - 데이터를 다양하게 학습할 수 있으며, 새로운 추천을 할 가능성이 있다 모델기반 협업필터링 장점2 S..
-
이웃기반협업필터링카테고리 없음 2022. 5. 3. 16:31
협업필터링이란 협업필터링(Collaborating Filtering) 협업하여 필터링한다. 많은 사람의 의견으로 더 나은 추천을 한다. 집단지성(Collective Intelligence) 개인보다 단체 또는 그룹의 선택과 취향에 의존한다. 여러 사람의 의견을 종합적으로 반영 다수의 의견으로 더 나은 선택을 한다. User-based VS. Item-based Neighborhood-based Collaborative Filtering Memory-based Collaborative Filtering=Neighborhood-based Collaborative Filtering User-Item 간의 평점 등 주어진 데이터로 새로운 아이템을 예측 특징 - 구현이 간단하다 - Model-based CF에 비..
-
컨텐츠기반 추천알고리즘카테고리 없음 2022. 4. 12. 18:38
컨텐츠기반 추천시스템 컨텐츠가 비슷한 아이템을 추천한다. 사용자가 과거에 경험했던 아이템 중 비슷한 아이템을 현재 시점에 추천한다. Information Retrieval과 Machine Learning의 중간 지점 Main Idea - 유저 A가 높은 평점을 주거나 큰 관심을 갖은 아이템 x와 유사한 아이템 y를 추천 예시 - 영화: 같은 배우, 같은 장르, 같은 감독 등 비슷한 특징을 갖는 영화를 찾아서 추천 장점 다른 유저의 데이터가 필요하지 않다. 추천할 수 있는 아이템의 범위가 넓다. 추천하는 이유를 제시할 수 있다. 단점 적절한 features를 찾기가 어렵다. 새로운 유저를 위한 추천이 어렵다. 선호하는 특성을 가진 항목을 반복 추천한다. 컨텐츠기반 추천시스템 Architecture 예시 신..
-
추천시스템 평가하기카테고리 없음 2022. 4. 5. 13:35
어떤 추천이 좋은 추천일까 좋은 추천시스템을 만들기 위해 고려해야할 항목 성능 좋고, 빠르고 설명 가능한 추천 알고리즘 추천시스템에 필요한 적절한 데이터(User 또는 Item Profiling) 추천시스템의 목적 플렛폼 내에서 추천시스템의 역할 플렛폼의 사용자 좋은 추천시스템을 위해 고려해야할 사항 좋은 아이템을 추천하는 것만이 꼭 좋은 해결책은 아니다. 사용자와 플랫폼 간의 소통이 필요하다 정보 검색과 정보 추천 차이의 극대화 추천시스템의 성능을 확인하는 방법-1 1. Business 또는 Service 관점 추천시스템을 적용하기 전과 후에 따라 달라진 점 파악 매출, 구독 등 실제 수익 향상 여부 Click Through Rate(CTR) 등 방문자의 행동 변화 여부 2. Technique과 Ope..
-
추천시스템이란, MovieLens 데이터 분석카테고리 없음 2022. 4. 4. 19:41
추천 시스템이란? 사용자(User) 와 상품(Item) 특정 사용자가 좋아할 상품을 추천 비슷한 상품을 좋아할 사용자를 추천 사용자든 상품이든 관심 갖을만한 정보를 추천 검색 서비스 vs. 추천 서비스 Pull information vs. Push information 사용자가 요구한 후 작동 vs. 사용자가 요구하기 전 작동 사용자 스스로 원하는 바를 알고 있다. vs 사용자 스스로 원하는 바를 정확히 알지 못한다. User와 Item User와 Item 사이의 관계를 분석하고 연관관계를 찾는다. 해당 연관 관계를 점수화한다. User의 정보와 Item의 정보를 활용한다. User Profile User를 분석 가능한 요소로 프로파일링 User를 구분할 수 있는 정보를 활용 (개인 신상정보, 쿠키, 인..
-
ResNet 논문 리뷰study 2021. 12. 1. 15:42
깊은 neural networks 에서는 모델을 학습하기가 더 어려워진다. 그래서 이 논문에서 소개하고자 하는 것이 residual learning framework로, layer의 input을 참조하는 residual function을 학습하는 방법이다. 이 방법을 적용하면 optimize하기도 용이하며 깊은 network도 합리적인 정확도를 얻어낼 수 있다. 이 방법을 사용한 152 layer-residual nets로 ImageNet dataset에서 평가했을때 3.57%의 error를 가졌고 ILSVRC 2015 classification에서 1위를 했다. Deep network에서는 수렴을 방해하는 vanishing, exploding gradient 문제가 있었다. 이 문제들은 normaliz..
-
[DAYCON] 타이타닉 생존자 예측python/오늘의 파이썬 2021. 11. 24. 14:47
1. 라이브러리 및 데이터 라이브러리 불러오기 import pandas as pd #판다스 패키지 불러오기 from sklearn.linear_model import LogisticRegression # 로지스틱 회귀 모델 불러오기 from sklearn.tree import DecisionTreeClassifier # 의사결정 나무 모델 불러오기 data 불러오기(pd.read_csv()) train = pd.read_csv('/media/train.csv')# 모델 학습 파일 test = pd.read_csv('/media/test.csv')# 모델 시험지 파일 submission = pd.read_csv('/media/submission.csv') #답안지 파일 2. 탐색적 자료분석 pd.DataF..
-
[DAYCON][오늘의 파이썬] Lv4 교차검증과 모델 앙상블을 활용한 와인 품질 분류하기python/오늘의 파이썬 2021. 11. 22. 16:17
[EDA] 1. seaborn pairplot pairplot은 데이터에 들어 있는 각 컬럼(열)들의 모든 상관관계를 출력한다. 3차원 이상의 데이터라면 pairplot 함수를 사용해 분포도를 그려서 쉽게 모든 변수 간의 상관관계를 얻을 수 있다. pairplot은 grid(격자) 형태로 각 집합의 조합에 대해 히스토그램과 분포도를 그려준다. 'data' 변수에 train의 "fixed acidity"부터 "chlorides"까지의 변수를 저장한다. data = train.loc[:, 'fixed acidity' : 'chlorides'] 'data'의 pairplot을 그린다. sns.pairplot(data) 2. seaborn distplot distplot 함수는 데이터의 히스토그램을 그려준다. ..
-
[모두를 위한 딥러닝 시즌2][Lab 12](2) RNN TensorFlow모두를 위한 딥러닝 시즌2 2021. 11. 17. 16:43
tf keras를 사용해 RNN을 직접 코드로 구현해보자. 두 가지 방법 - 특정 셀을 선언하고 이를 LOOP 하는 방식 - 이 두가지를 결합한 api를 활용하는 방식 입력으로 전달 받는 데이터는 (betch size x sequence length x input dimension)으로 전 처리되어야 한다. sequence가 1인 데이터를 전처리해서 RNN을 적용하는 코드는 다음과 같다. hidden size가 2인 RNN을 만들어서 전처리해준 데이터들을 넣어준다. 이때 outputs 변수는 전체 sequence에 해당하는 hidden state 값들을 가지고 있고 states 변수는 마지막 hidden state 값만 가지고 있기 때문에 shape이 다르다. Unfolding to n sequences..
-
[모두를 위한 딥러닝 시즌2][Lab 12] RNN모두를 위한 딥러닝 시즌2 2021. 11. 17. 11:29
우리가 사용하는 데이터에는 Sequence data가 많다. 단어를 읽을 때 하나의 알파벳이 아닌 그 앞과 뒤의 알파벳들까지 이해해야 전체 한 단어를 이해할 수 있다. 입력이 있으면 연산을 통해 출력을 뽑는 간단한 NN이나 CNN으론 이것이 어렵다. 그래서 탄생한 것이 현재의 state가 그다음 state에 영향을 미치는 Recurrent Neural Network이다. x라는 입력값과 이전의 RNN에서 나온 old state 값을 같이 사용해서 함수 f를 적용한 것이 출력 값 ht다. Vanilla Recurrent Neural Network 최종 출력 y가 몇 개의 벡터로 나올 것인가는 W의 형태(벡터 사이즈)에 따라 정해진다. Language model 현재 글자가 주어졌을 때 다음에 올 글자가 뭔..