목록TAVE (11)
working_helen
데이터 수집 단계에서 학습한 내용 중 네번째로 주소 데이터를 위도/경도 값으로 전환하는 방법에 대해 공부해본다. 1. Geocoding 지오코딩 2. 위경도 변환 코드 분석 1. Geocoding 지오코딩 - 주소와 관련된 텍스트 데이터 (주소, 도로명, 산 이름 등 고유명칭)를 위도/경도 좌표 정보로 변환하는 것 - 네이버, 구글, 다음 등 위도와 경도 관련 서비스를 해주는 다양한 geocoding 오픈 API 존재한다. - 본 프로젝트에서는 네이버 클라우드 플랫폼 지도 API(Geocoding OpenAPI)를 활용했다. NAVER CLOUD PLATFORM에 접속해 네이버 지도 Geocoding에 대한 Application 활용 등록으로 API 사용을 위한 ID와 Key 정보를 발급받는다. [네이버..
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. Haversine 하버사인 공식이란? 2. Haversine 하버사인 공식 코드 1. Haversine 하버사인 공식이란? - 구면에서 두 점 사이의 최단 거리 구할 때 쓰이는 공식 - 평면에서 두 지점을 이은 직선이 최단거리인 반면, 구면에선 곡률의 영향으로 인해 단순히 두 지점을 직선 경로가 최단거리가 되지 않는다. 원의 일부, 즉 호 모양의 경로가 최단거리가 된다. - 지도 상의 두 위치는 구형의 지구 위의 두 지점이므로 구면에서의 최단거리 공식을 통해 두 지점 간 거리를 구한다. - 하버사인 공식은 두 지점의 위도, 경도, 지구 반지름을 이용해 두 지점 간 호의 길이를 계산한..
모델링 과정에서 학습한 내용 중 불균형 데이터 처리 방법에 대해 공부해본다. 1. 데이터 불균형 문제 2. Under Sampling 3. Over Sampling 4. SMOTH 5. 파이썬 코드 1. 데이터 불균형 문제 - 머신러닝 분류 문제는 새로운 데이터가 어떤 범주에 속하는지 판단하는 것을 목표로 한다. - 하지만 현실의 많은 데이터는 각 범주의 비율이 불균형한 경우가 많다. - 데이터의 불균형은 머신러닝 학습에 영향을 주며, 특히 적은 비율을 차지하는 소수 범주가 관심 대상인 경우 데이터의 불균형을 해소한 후 학습을 진행해야 한다. - 예를 들어 여성이 10%, 남성이 90%인 학습 데이터로 사용한다면, 다수 집단인 남성에 속할 것이라 예측하는 것이 맞을 확률이 높기 때문에 소수 집단인 여성을..
데이터 수집 단계에서 학습한 내용 중 두번째로 selenium package를 활용한 웹데이터 크롤링에 대해 공부해본다. 1. Selenium이란? 2. Selenium 코드 1) 브라우저 페이지 열기 2) element 요소 찾기 3) 상호작용 및 데이터 추출 4) 키보드 입력 5) 브라우저 이동 6) 브라우저 응답 기다리기 1. Selenium이란? requests 라이브러리로 웹 정보를 받고, BeautifulSoup로 정보 수집 Selenium 라이브러리로 브라우저를 열어 정보 수집 파이썬에서 크롤링 작업은 크게 위 두가지로 나뉜다. Beautifulsoup의 경우 고정된 웹 페이지 내에서 정보 트리를 탐색하는 정적 크롤링 방식이다. 반면 Selenium의 경우 페이지의 이동이나 클릭(click)..