목록전체 글 (85)
working_helen
추천시스템 구축 전 키워드의 빈도수와 분포를 확인하기 위한 기초적인 EDA 과정을 진행했다. 1. 키워드별 빈도수 확인 2. 워드 클라우드 1. 키워드별 빈도수 확인 - '키워드'와 '책소개 키워드' 각각에 대하여 등장하는 모든 키워드에 대해 빈도수를 측정한다. - 가장 빈도수가 높은 키워드는 무엇인지, 빈도수가 현저히 적은 키워드는 무엇인지 확인한다. - CBF 알고리즘의 경우 데이터 간 키워드 중복 횟수 (키워드의 빈도수 count)가 너무 적은 경우 추천시스템의 성능이 떨어질 수 있다. 따라서 해당 키워드를 제외하거나 상위 키워드로 통합하는 과정이 필요하다. Counter 클래스 - 리스트나 셋에 등장하는 각 원소의 개수를 셀 때 사용 - 각 원소을 키로, 개수를 value로 하는 dictionar..
1. 웹 구현 1) 사이드바 만들기 2) predict 함수 3) get_info 함수 4) 기타 2. 폐업 여부 예측 과정 3. 느낀점 1. 웹 구현 1) 사이드바 만들기 st.selectbox => 선택한 option에 따라 3가지 웹 화면 중 하나 실행 '폐업 예측 서비스' : 생성한 예측 모델을 이용해 폐업 여부를 예측해주는 서비스 화면 '지역별 특성' : 모델에 사용된 feature들의 행정동별 시각화를 보여주는 화면 '예측 모델 설명' : 사용된 예측 모델에 대한 설명을 제시하는 화면 2) predict(gu, dong, lat, long) 함수 : 개업 카페 위치의 자치구명, 행정동명, 위도, 경도를 입력하면 폐업 여부를 예측해주는 함수 - encoder_info + dong_info + m..
1. 최종 모델링 데이터 2. 모델링 과정 1) XGBoost 2) Random Forest 3) Logistic Regression 4) KNN 3. 최종 모델 선정 1) 평가 지표 결정 4. KNN 1. 최종 모델링 데이터 총 6가지 설명변수 X Dataframe 데이터 전처리 파일 X 변수명 변수 선택 X > PCA X 미삭제_PCA안함.csv X1 변수 선택 X > PCA 1 미삭제_PCA1.csv X2 변수 선택 X > PCA 2 미삭제_PCA2.csv X3 변수 선택 O > PCA X 삭제_PCA안함.csv X4 변수 선택 O > PCA 1 삭제_PCA1.csv X5 변수 선택 O > PCA 2 삭제_PCA2.csv X6 2. 모델링 과정 Step 1. train / validation / t..
데이터 전치리 과정에서 학습한 내용 중 두 번째로 PCA에 대해 공부해본다. 본 프로젝트에서는 변수의 개수가 많고, 상관관계와 VIF를 보았을 때 다중공선성 문제가 존재한다고 판단되어 변수 선택 + PCA 전처리 과정을 진행했다. 1. 주성분 분석 PCA 1) 차원 축소 2) 주성분 분석 2. 주성분 분석 과정 3. 파이썬 코드 (4. 주성분 분석 수학적 이해) 1. 주성분 분석 PCA (Principal Component Analysis) 1) 데이터의 차원 = 설명변수(feature)의 개수 - 하나의 feature가 추가될 때마다 데이터의 차원이 하나씩 증가한다. - feature가 너무 많아져 차원이 증가하면 데이터를 표현하는 Feature Space의 부피가 기하 급수적으로 증가한다. - 이로 ..
데이터 전치리 과정에서 학습한 내용 중 첫 번째로 Encoding 인코딩 방법에 대해 공부해본다. 1. 인코딩이란? 2. One-Hot Encoding 원 핫 인코딩 3. Binary Encoding 바이너리 인코딩 4. Label Encoding 라벨 인코딩 5. Ordinal Encoding 오디널 인코딩 1. 인코딩이란? 인코딩 = 자연어 or 범주형 데이터를 수치적 데이터로 변환해주는 작업 : 기계는 수치형 데이터만을 처리할 수 있기 때문에 자연어나 범주형 데이터를 처리하기 위해선 이를 수치형 데이터로 변환시켜주는 작업이 필요하다. - 다양한 인코딩 방법 중 데이터의 특성에 맞춰 정보의 손실을 최소화할 수 있는 적합한 방법을 적용하는 것이 중요 - category_encoders은 범주형 데이터(..
전처리 데이터를 바탕으로 EDA를 진행하고, 모델링에 포함할 변수를 논의한 과정을 정리해본다. 본 프로젝트에서는 변수의 개수가 많고, 상관관계와 VIF를 보았을 때 다중공선성 문제가 존재한다고 판단되어 변수 선택 + PCA 전처리 과정을 진행했다. 이상치 확인 => 변수 제거 없음 상관관계 확인 => 아래의 칼럼을 제거하기로 결정 ['1년 생존율','5년 생존율','최근 30년 기준 평균영업기간', '주거인구','직장인구','반경500_대학개수','상권활성화지수등급','매출지수','인프라지수','가맹점지수','인구지수','금융지수'] import math import numpy as np import pandas as pd import seaborn as sns import matplotlib.pyplo..
1. 협업 필터링 2. 협업 필터링 과정 3. 협업 필터링 종류 1) Memory-based CF 2) Model-based CF 3) Hybrid CF 4) User-based CF 5) Model based CF 4. 행렬 분해 5. 행렬 분해 장단점 1. 협업 필터링(Collaborative Filtering CF) : 구매 이력, 평가 점수(후기)와 같은 사용자들의 행동 데이터를 기반으로 사용자 간 유사성을 분석하여 아이템을 추천하는 방법이다. 유사한 행동 패턴을 보이는 = 비슷한 관심사를 보이는 사용자들에게 같은 아이템을 추천해준다. CF는비슷한 취향을 가진 사용자들은 어떠한 아이템에 대해 비슷한 선호도를 가질 것이라는 가정 하에 이루어진다. 다루는 문제 : 개별 사용자마다의 아이템 호불호 분류..
1. 타겟 데이터 2. 데이터 수집 과정 1. 타겟 데이터 - 교보문고 4가지 분야 베스트셀러 도서 각 1000권씩 > 4000권 데이터 - 소설, 자기계발, 경제/경영, 인문 분야 - 교보문고 '키워드 픽' + '책 소개' 텍스트 크롤링 - '키워드 픽'은 그대로 사용 - '책 소개' 텍스트에서 핵심어 추출 진행 2. 데이터 수집 과정 도구 : Selenium을 이용한 크롤링 step 1. 베스트셀러 1000권 도서 링크 받아오기 - 분야별 베스트셀러 페이지 접속 - 한 페이지당 20권씩 보여주며, 1~50장까지 존재 (1000권) - find_element를 이용해 20권 도서 page_links 원소 추출 - get_attribute('href')를 이용해 각 도서의 page url을 추출한 후, ..
보호되어 있는 글입니다.
데이터 수집 단계에서 학습한 내용 중 세번째로 위경도 기반 지도상 반경 내 데이터를 수집하는 방법에 대해 공부해본다. 1. Haversine 하버사인 공식이란? 2. Haversine 하버사인 공식 코드 1. Haversine 하버사인 공식이란? - 구면에서 두 점 사이의 최단 거리 구할 때 쓰이는 공식 - 평면에서 두 지점을 이은 직선이 최단거리인 반면, 구면에선 곡률의 영향으로 인해 단순히 두 지점을 직선 경로가 최단거리가 되지 않는다. 원의 일부, 즉 호 모양의 경로가 최단거리가 된다. - 지도 상의 두 위치는 구형의 지구 위의 두 지점이므로 구면에서의 최단거리 공식을 통해 두 지점 간 거리를 구한다. - 하버사인 공식은 두 지점의 위도, 경도, 지구 반지름을 이용해 두 지점 간 호의 길이를 계산한..