본문 바로가기

[Machine Learning] Django Rest Framework를 이용한 학습, 예측 웹페이지 구성 * Page 구성 (https://honeyteacs.tistory.com/6) 참조 1. Train page - 학습 매개변수 post하여(Jason) 학습 모델링 - 앞선 글에서와 같이(https://honeyteacs.tistory.com/30) CSV 데이터를 기반으로 array 형태로 진행 - 각 모델별 매개변수 설정(KNN, RFC, GBC) 2. Predict page - 앞서 만들어진 모델들을 기반으로 예측할 데이터(Jason --> DataFrame)를 post후 예측 결과 출력 - 예측에 쓰이는 데이터는 Jason 형태로 주고 받는 Django Rest Framework 특성상 DataFrame 형태로 예측에 사용되어야함(array x)
[Machine Learning] 다차원적 학습을 위한 데이터 전처리(Target 기반) 및 모델링, 모델링 과정 추출 * DataFrame을 통한 다차원 학습 실패(단 1:1 매칭 학습 및 예측은 가능) --> 일반 arrary 형태 사용 1. 일반 array형태를 통한 다차원적 학습(KNN 학습 모델 기반) 진행 및 예시를 통한 예측 진행 - Matplotlib를 통한 모델링 과정 분석 (하나의 매개 변수의 Target값들에 대한 시각화만 가능) 2. 일반 array형태를 통한 다차원적 학습(Decision Tree 학습 모델 기반) 진행 및 예시를 통한 예측 진행 - Graphviz를 통한 트리형태의 모델링 과정 추출 (export dot --> render png) - 단, Decision Tree의 경우에는 모델링 과정 추출이 가능하지만 Random Forest, Gradient Boosting의 경우에는 모델링..
Machine Learning 프로젝트 최종 시스템 구조도 * 프로젝트 주제 : 다양한 데이터들을 묶어 학습하여, 분류 모델을 만들며 그 과정을 추출하여 모델의 합당성을 평가한다. * (다중 클래스)분류용 선형 모델 (Ex.LinearSVC, Naivebayes)의 한계 1. 타겟(등급)설정 개수의 한계 2. 다양한 데이터를 묶어 분류 모델을 만드는 특성상 데이터의 시각화 및 분석이 불가능 --> KNN, DecisionTree(RFC, GBC) 모델 사용 - KNN: 기본 모델로서 좋고 설명하기 용이 - Random Forest 1)결정 트리 하나보다 거의 항상 좋은 성능을 냄 2)매우 안정적이며 데이터 스케일 조정(전처리)필요 없음 3)주요 매개 변수 : n_estimators(사용되는 트리의 개수.클수록 안정적이며 random_state값의 변화에 따른 변..
[개발자 리뷰] 리액트를 다루는 기술 개발자 리뷰어로서 요번에 소개해드릴 책은 '리액트를 다루는 기술' 이라는 책입니다. 우선 해당 책에서는 리엑트에 대한 기본적인 개념들에 대한 설명부터 시작합니다. 리액트는 자바스크립트 라이브러리로 사용자 인터페이스를 만드는데 사용합니다. 구조가 MVC(Model-View-Controller), MVW(Model-View-Whatever) 등인 프레임워크와 달리, 오직 V(view)만 신경 쓰는 라이브러리입니다. 리액트 프로젝트에서 특정 부분이 어떻게 생길지 정하는 선언체가 있는데, 이를 컨포넌트(Component)라고 합니다. 컴포넌트는 다른 프레임워크에서 User Interface를 다룰 때 사용하는 템플릿과는 다소 다른 개념입니다. 템플릿은 보통 데이터셋이 주어지면 HTML 태그 형식을 문자열로 반환..
[개발자 리뷰] 머신 러닝 교과서 with 파이썬, 사이킷런, 텐서플로 개발자 리뷰어로서 요번에 소개해드릴 책은 '머신 러닝 교과서 with 파이썬, 사이킷런, 텐서플로' 라는 책입니다. 현재 해당 책은 머신 러닝 관련 분야에서 베스트셀러로서 꾸준한 관심을 받고 있는 책인데요, 책을 보며 왜 베스트셀러인지를 느낄 수 있었습니다! 1. 환경 설정 부록 책에 나와있는 알고리즘들을 실습해 보기에 앞서 환경 설정(윈도우에 아나콘다, 사이킷런, 텐서플로 설치 및 주피터 노트북 뷰어와 코랩 사용)을 해야하는 부분을 간략하면서도 이해하기 쉽게 설명해 주었다. 2. 알고리즘 학습에 앞선 머신 러닝 기본 지식과 시스템 구축 로드맵 제시 본격적으로 알고리즘을 접하기에 앞서 머신 러닝과 관련된 기본 지식(기본 용어, 표기법 등) 뿐만 아니라 머신 러닝 시스템 구축 로드맵을 제시해 주고 있다. ..
CSV파일 읽어 오기 CSV(Comma-Separated Values) : 각각의 데이터를 콤마(,)로 구분하는 파일 형식으로서, 메모장을 통하여 열어보면 콤마(,)로 데이터가 구분되어 있는 것을 확인할 수 있으며 엑셀 파일로도 사용이 가능하다. 1. csv모듈을 import 한다. 2. open()함수를 통하여 csv파일을 열어 f(파일 핸들러)에 저장한다. 3. f를 reader 함수에 넣어 csv reader객체인 data를 생성한다. 4. data를 원하는 형태대로 출력한다. *인코딩 타입이 유니코드 또는 UTF-8인 문서를 읽을 때 파일의 처음에 /ufeff가 추가되는데, 이는 인코딩 옵션을 utf-8-sig로 변경해 줌으로서 제거 가능하다. *UTF-8 : 어느 국가의 문자라도 표현할 수 있도록 만든 유니코드를 표..
[Machine Learning] 선형 모델(Linear model) 을 이용한 예측 모델 만들기 *K-최근접 이웃 알고리즘을 이용한 모델은 예측이 느리고 많은 특성을 처리하는 능력이 부족하다. 이러한 단점이 없는 모델이 바로 선형 모델(Linear model)이다. 선형 모델(Linear model) : 각 특성에 해당하는 기울기들을 곱한 후(특성 1개당 기울기 1개를 가지게 됨) 이를 모두 더하여 예측에 사용하게 된다. 특성이 하나일 경우 직선, 두 개일 경우에는 평면, 그 이상의 평우 초 평면 형태가 된다. 1. 선형 회귀(Linear Regression, 최소제곱법) : 예측과 훈련 세트에 있는 타깃 y 사이의 평균제곱오차를 최소화하는 파라미터 w, b를 찾는 알고리즘. (평균 제곱오차 : (예측값-타깃값)^2 / 샘플의 개수 ) 1) 데이터 셋이 단순하여 과소적합인 상태 2) 데이터 셋이 복..
DTI, 신DTI, DSR란? DTI(Debt to Income, 총부채상환비율) : ('해당' 주택담보대출의 원리금 상환액 + 기타 대출의 이자 상환액) / 연간 소득 신DTI : ('모든' 주택담보대출의 원리금 상환액 + 기타 대출의 이자 상환액) / 연간 소득 * 기존 DTI와 달리 기존에 있는 주택을 담보로 주택담보대출을 계속해서 받을 수 없도록 만든 대출 구조 * 집을 두채 이상 소유하는 것을 목적으로 하는 경우에는 예전보다 제한적이지만, 실질적인 거주 목적의 대출을 알아보는 경우 미래예상소득을 최대 10%까지 늘려서 인정해주는 만큼 처음 집을 장만하는 경우에는 오히려 높은 비율의 대출이 가능 DSR(Debt Service Ratio, 총부채원리금상환비율) : 모든 금융기관을 대상으로 한 대출 상환액이 연간 소득에서 차지하는..