해당 글은 교재 'Python을 이용한 개인화 추천시스템' 실습 과정을 정리한 글로, 이전 글과 이어집니다! 자세한 내용이 궁금하시면 교재와 글을 참고해주세요! https://jhklee-coder.tistory.com/75 MF (matrix factorization) 기반 추천 1 [ReSys] 추천을 위한 알고리즘은 크게 메모리 기반(memory-based)과 모델 기반(model-based)으로 나눌 수 있다. 메모리 기반 알고리즘은 추천을 위한 데이터를 모두 메모리에 갖고 있으면서 추천이 필요할 때마 jhklee-coder.tistory.com 🔍 SGD MF 기본 알고리즘 # 데이터 불러오기 import numpy as np import pandas as pd r_cols = ['user_id..
추천을 위한 알고리즘은 크게 메모리 기반(memory-based)과 모델 기반(model-based)으로 나눌 수 있다. 메모리 기반 알고리즘은 추천을 위한 데이터를 모두 메모리에 갖고 있으면서 추천이 필요할 때마다 이 데이터를 사용해서 계산을 하고, 적절한 상품을 추천한다. (대표적인 예가 협업 필터링 CF.) 모델 기반 추천은 데이터로부터 추천을 위한 모델을 구성한 후에 모델만 저장하고 (> 데이터 x.) 실제 추천할 때에는 이 모델을 사용해서 추천을 하는 방식을 말한다. 이번 글에서는 기존에 다루었던 CF, IDF와는 다른 행렬요인화 기반 추천 알고리즘을 소개한다. 📌 행렬요인화 (Matrix Factorization : MF) 메모리 기반 추천은 모든 데이터를 메모리에 저장하고 있기..
토큰화란 문장을 토큰 시퀀스로 나누는 과정. 대상에 따라 문자, 단어, 서브워드 등 세 가지 방법이 있다. 그렇다면, 각 토큰화마다 장단점이 있을까?? 토큰화란 무엇일까?? 자연어 처리 데이터의 기본 단위는 텍스트 형태의 문장. 트랜스포머 모델은 토큰 시퀀스를 입력받으므로, 문장마다 토큰화를 수행한다! ‘토크나이저’ 토큰화를 수행하는 프로그램. '은전한닢(mecab)', '꼬꼬마(kkma)' (대표적인 한국어 토크나이저.) 1️⃣ ‘단어 단위의 토큰화’ : 단어(어절) 단위로 토큰화를 수행하는 방법. (’공백으로 분리하기’) 별도로 토크나이저를 사용하지 않아도 됨. → 하지만 ‘어휘 집합의 크기가 매우 커질 수 있다.’ Ex) ‘갔었어’, ‘갔었는데요’ → 표현 상의 차이가 모든 경우의 수로 어휘 집합에..
# 두 원 사이의 정수 쌍 # 181187 # lv2 # Python # 문제 x축과 y축으로 이루어진 2차원 직교 좌표계에 중심이 원점인 서로 다른 크기의 원이 두 개 주어집니다. 반지름을 나타내는 두 정수 r1, r2가 매개변수로 주어질 때, 두 원 사이의 공간에 x좌표와 y좌표가 모두 정수인 점의 개수를 return하도록 solution 함수를 완성해주세요. ※ 각 원 위의 점도 포함하여 셉니다. # 제한사항 1 ≤ r1 좌표값 리스트는 불필요함!! for i in xy_list: x, y = i length = math.sqrt(x ** 2 + y ** 2) # (x, y) 까지의 거리를 피타고라스 정리(length = sqrt(x^2 + y^2)로 구함. if length >= r1 and le..
이번엔 "여러 후보 가운데 가치 있는 것을 선정"하는 과정, '프로세스 (추천설계)' 과정을 알아보자. 추천 시스템의 알고리즘은 각기 다른 특징과 함께 다양한 방법을 갖고 있다. 때문에 적절한 알고리즘을 채택하기 위해 각 알고리즘 별 특징을 파악하고 설계하는 과정이 필요하다!! 📌 내용 기반 필터링(Content-based filtering) 유저가 어떤 아이템을 좋아하는지 나타내는 '유저 프로필'과 아이템의 다양한 성질을 담은 '아이템 특징'과의 유사도를 계산한다. 이 유사도를 바탕으로 유저에게 아이템을 추천하는 알고리즘이 바로 컨텐츠 기반 필터링이다. 그러면 이 필터링 기법을 예시와 함께 그 과정을 알아보자. 1️⃣ 아이템 특징의 획득 컨텐츠 기반 필터링에서 사용할 아이템의 특징 획득 방법은 성질에 ..
✅ 편리하고 예쁜 UI / UX 추천시스템은 실제 서비스에 도입하기 전 고도화된 추천 알고리즘을 사용한다. 그러나 개인 유저마다 추천시스템이 가치 있는 아이템을 제공한다고 하더라도, 유저에게 가장 최적의 형태와 편리한 기능을 갖추지 못하면 그 가치도 전달되지 않는다. 그렇기 때문에 UI/UX (User Interface/Experience)는 서비스에 있어 매우 중요한 요소로 작용한다. 유저나 시스템이 달성하고자 하는 목적 또한 다양하고, 도메인에 따라 서비스마다 상이하게 드러나기도 한다. 결국 구축하고자 하는 추천 시스템에 적합한 UI/UX는 어떤 것이 있는지, 또 해당 서비스에서는 무엇이 가장 적절할지 기획자는 계속해서 고민하고 숙고하며, 공부할 필요가 있다. ✅ 사용자의 목적에 맞는가? 우린 추천시..