본문 바로가기

분류 전체보기36

추천 시스템 7장 행렬분해 : 평갓값 행렬을 저차원의 사용자 인자 행렬과 아이템 인자 행렬로 분해하는 것행렬분해를 사용할 때는 라이브러리를 사용, 이들을 다루는 방법에 대해 이해한 뒤 적절한 데이터를 입력해 학습시켜야 한다.평갓값이 명시적이다. = 사용자가 아이템에 대해 명시적으로 평가한 데이터를 말함.ex) 각 영화와의 상성은 벡터의 내적을 사용해서 계산, 이렇게 정보를 압축해서 영화와 사용자를 저차원의 베터로 표현하고 그 벡터 공간 안에서 사용자의 상성을 측정하는 것이 행렬분해의 핵심 비음수 행렬 분해 : 행렬 분해 시 사용자와 아이템 각 벡터의 요소가 0 이상 되는 제약을 추가한다.제약에 따라 각 사용자나 아이템의 벡터해석특성이 향상된다. 명시적인 평갓값에 대한 행렬 분해 : 결손값을 메꾸지 않고 관측된 평갓값만 사.. 2025. 5. 28.
추천 시스템 입문 5~6장 MovieLens 데이터셋은 미네소타 대학의 그룹 렌즈 연구소가 구축한 영화 평가 데이터셋 여기서는 주로 다음 파일을 사용함. 데이터의 특징을 탐색적으로 조사하는 것을 탐색적 데이터 분석이라고 한다. 실무에서는 데이터를 샘플링하여 작은 데이터셋으로 빠르게 실험을 반복하고 좋아 보이는 알고리즘을 발견하면 데이터를 늘려 시험하는 방법을 많이 사용함. 평가 방법Precision@K, Recall@K라는 순위 지표로 추천 알고리즘을 평가함.Precision@K : 사용자에게 K개의 아이템을 추천했을 때 그중 실제로 선호하는 아이템의 비율이 얼마나 되는가에 관한 지표Recall@K : 사용자에게 K개의 아이템을 추천했을 때 사용자가 선호하는 아이템 그룹 중 몇 개 맞았는가를 나타내는 비율 통일된 포맷을 .. 2025. 5. 21.
추천 시스템 입문 1-4장 1.1 추천 시스템추천 시스템 : 우리가 다음에 무엇을 하면 좋을지 의사 결정을 지원하는 기술이 책에서는 추천 시스템을 여러 후보 가운데 가치 있는 것을 선정해서 의사 결정을 지원하는 시스템이라 정의하고 설명'여러 후보 가운데 가치 있는 것을 선정한다' = 비즈니스 목적에 맞춰 알고리즘을 적절하게 선택해서 사용해야 한다는 의미 1.2 추천 시스템의 역사1990년대 인터넷 발전과 함께 정보화되고 여러 후보 가운데 가치 있는 것을 선정하는 기술이 중요해짐.제록스 팔로알토 연구소의 연구자 골드버그는 대표적인 추천 알고리즘의 하나인 협조 필터링을 처음으로 조합한 추천 시스템을 제안했음.그가 제안한 추천 시스템은 태피스트리라 불렸으며 날로 늘어나는 전자 메일중 유익한 메일을 선택하는 것.협조필터링을 사용한 메일.. 2025. 5. 14.
실전 데이터 분석 2주차 13장 텍스트 유사성 자연어 처리빠른 텍스트 분석에 중점을 둔 데이터 과학의한 분야일반적으로 대량의 텍스트 데이터셋에 적용되는 편텍스트 간 유사점과 차이점을 분석하는 데 의존적이다.  텍스트 비교텍스트 간 유사도를 비교하려면 텍스트 간 차이를 정량화 해야한다.기본 접근법 : 각 텍스트 쌍에 공유되는 단어 수를 단순히 계산하는 것.각 텍스트를 단어 단위로 분할하여 단어 리스트를 만들어야 한다.토큰화 : 텍스트를 개별 단어로 분할하는 과정 정확한 단어를 비교하는 것이 불가능한 이유일관성 없는 대문자일관성 없는 구두점(특수문자 등) 합집합 : 텍스트 간 겹치는 단어와 겹치지 않는 단어를 모두 결합할 때 사용    두 텍스트의 유사성을 평가하는 간단한 지표의 작동 방식( 자카드 유사도 혹은 자카드 지수 )두 텍.. 2025. 4. 8.
실전 데이터분석 1주차 7, 9장 바로가기 5장 사이파이를 사용한 기본 확률 및 통계 분석 예산이 제한된다면 데이터도 제한 될 수 밖에 없고, 데이터와 투입 가능한 자원 간 절충이 현대 통계의 핵심.통계의 목적 : 데이터 크기가 제한된 경우에서도 데이터에서 숨겨진 의미를 찾는 것 5.1 사이파이로 데이터와 확률 간 관계 탐색하기사이파이from scipy import stats과학적 파이썬의 줄인말과학적 분석에 유용한 여러 기능을 제공확률과 통계 문제 해결용으로 만들어진 전용 모듈 scipy.stats를 포함함 scipy.stats 모듈은 데이터의 임의성 평가에 매우 유용stats.binom_test 메서드 : 이항 분포, 확률을 측정할 수 있음. num_heads = 16num_flips = 20prob_head = 0.5pr.. 2025. 4. 2.
머신러닝 9주차 - RNN과 어텐션을 사용한 자연어 처리 자연어 문제에 많이 사용되는 방법은 순환 신경망이다. 먼저 Char-RNN 모델을 어떻게 만드는지 살펴본다. 1. 훈련 데이터셋을 만들어준다.import tensorflow as tfshakespeare_url = "https://homl.info/shakespeare"  # 단축 URLfilepath = tf.keras.utils.get_file("shakespeare.txt", shakespeare_url)with open(filepath) as f:    shakespeare_text = f.read() 2.  tf.keras.layers.TextVectorization층을 사용해 텍스트를 인코딩 한다.text_vec_layer = tf.keras.layers.TextVectorization(spl.. 2025. 3. 26.