레이블이 머신러닝인 게시물을 표시합니다. 모든 게시물 표시
레이블이 머신러닝인 게시물을 표시합니다. 모든 게시물 표시

LightGBM 카테고리 변수 (Categorical Variables) 트리기반 그라이던트 부스팅 Telco Customer Churn (통신회사 고객 이탈)

   현업에 있으면,  직면하는 데이터는 항상 범주형(카테고리) 데이터 셋이다.   다른 모델로 하였을 경우 범주형 데이터는 항상 원-핫 인코딩을 하여 계산 하여야 만 했다.   하지만, 원-핫 인코딩을 하지 않고,  범주형 데이터를 이용하는 것에 대하여 매우 인상 적이다.  

 하지만 그라이언트 부스팅 방법은 과대적합(overfitting)의 문제를 가지고 있으므로, 각종 파라미터를 잘 검토하여,  실행 하여야 하며,  모델을 실행한 후에 모델 평가를 통해 반드시 검증해야 하는 알고리즘이다.    


Light GBM


R 기초 데이터 표준화 (Standardization) 및 데이터 정규화(Normalization) 방법, 유방암 데이터 셋 머신러닝

  데이터 표준화 및 정규화는  머신러닝에 있어서,  매우 중요한 사항이다.   서로 데이터의 크기가 맞지 않을 경우 정확 한 계산을 할 수 없다.    아래는 유방암 데이터 세트이다.  이 데이터는 머신러닝으로 모델 만들기 전에 반드시,  표준화 및 정규화 작업을 해야 하다. 


데이터 스케일



위의 그림을 보면  데이터의 크기 차이가 많이 난다.  이럴 경우에는 전부 스케일 하여,  훈련셋과 테스트 셋을 만들어야 한다. 

R 중급 R을 이용한 결측치 회귀분석 예측 후 전치 , KNN 전치

  네이버 지식인에서 아래와 같은 이메일이 왔다. 

R을 이용한 결측치 예측

제가 가지고 있는 데이터셋은 연속형 변수인  x1,x2,x3과 y로 이루어져 있는데, y 변수에 결측치들이 군데군데 존재합니다. 이 결측치를 제거하지 않는 방법을 찾아보니 회귀 모형으로 예측을 하는 것이 가능하다고 하는데, 회귀모형을 어떤 식으로 만들면 위에서 말한대로 결측치를 예측할 수 있는 걸까요? train set과 test set을 나눠서 회귀 예측 모형을 만들 수 있나요?

결측치 전치




하긴 했는데,  회귀모형 진단을 해보니,   R squared 값이 0.3866 이 나왔다.   회귀모형으로 예측은 가능 한데,  설명력이 떨어져 결측치를 전치 해도 별로 좋아 보이지는 않는다.



R기초 trees 데이터 셋을 이용한 예측치와 실측치 분석

 predict를 이용한 예측은 현업 실무 할 때 매우 중요하다.  모델을 만들었는데,  그것을 예측하여,  결과값을 만들어 전사 DB에 업데이트 하였다. 

회귀분석 Predict Observation


  trees 데이터 셋에 대해 다음의 문제를 해결 하는 R 코드를 작성 하시오.

   (1) 나무 둘레(Girth)와 나무의 키(,Height)로 나무의 볼륨을 예측 하는 다중 선형 회귀모델을 만드시오. 

  (2) 다중선형 회귀모델을 이용하여 trees 데이터셋의 나무 둘레(Girth)와 나무의 키(Height)로 나무의 볼륨을 예측 하시오. 

 (3) (2)에서 예측한 볼륨과 실제 trees 데이터 셋의 볼륨(Volume)이 얼마나 차이가 나는지 보이시오( 예측값, 실제값,  예측값-실제값을 나타낸다.)

R 고급 caret을 이용한 머신러닝(로지스틱 회귀 colon 데이터 셋 )

  caret은  대표적인 머신러닝 패키지이다.  이것이 있어서,  R에서는 파이썬 보다 좋은 경쟁력을 가지고 분석 할 수 있다.      즉 파이썬에서 경쟁력이 있는 것은 비정형 자료 즉,  이미지,  문자, 음성등 과 같은 것이다.  개인 적으로는 파이썬의 사이킷런 보다,  이것이 더욱 좋다. 


아래의 예제 코드는 아래의 책을 참고 하여 작성 하였다. 


로지스틱 회귀 실전 예측분석 모델링

야나두 딥러닝 [ 많이 사용되어 지는 통계 및 인공지능]

   모형에 많이 사용 되어 지는 통계 및 인공지능은 아래와 같다.     선형 예측 보다는 Classifier 들이 더 많이 존재 한다.   실무에서는 Classifier가 거의 없다.   거의 대부분은 변화 하는 수가 아니라,   정의 되어 있는 수 (즉 Information 정보) 데이터 이다.   

  종속 변수에 영향을 주는 독립 변수가 대부분 1개 ~2개 정도 되기 때문에 Classifier를 사용하기가 어렵다.   변수들의 구성을 보았을때, 정보성 변수등 등급이 있는 경우가 있다.  회사내에서는 직급, 근속년수, 근무지역 별로 나누어 지는데,   어떤 것을 분석 하느냐에 따라서,  전부 달라 진다. 



위의  PPT 자료는 선형 회귀 빼고는 모두 Classifier를 사용한 모형이다.  하지만, Random forest 랜덤 포레스트는   Classifier 말고 회귀 분석을 하는 경우가 있다.  

 

    Linear Regression :  종속변수  y와 한 개 이상의 독립변수 X와의 선형상관관계 모델링 

    Logistic Regression  :  독립변수의 선형 결합을 이용하여 사건의 발생 가능성 예측

                                 종속변수가 범주형 데이터를 대상으로 하여 분류문제로 봄

   


    Decision Tree :  입력 변수를 바탕으로 목표변수의 값을 예측 하는 분류 모델

   K-Nearest Neighbor :  입력이 특징 공간 내 k개의 가장 가까운 훈련 데이터로 구성되어 있다. 


Support Vector Machine :  기계 학습의 분야 중 하나로 패턴 인식, 자료 분석을 위한 지도 학습 모델이며, 주로 분류와 회귀 분석을 위해 사용한다.

Random forest :  분류 , 회귀 분석 등에 사용되는 앙상블 학습 방법의 일종으로 훈련 과정에서 다수의 결정트리로 부터 분류 또는 평균 예측치를 출력 함으로 동작됨


  

  분석하는 데이터 성격에 따라 다르기는 하지만, 일반적으로 데이터를 돌리면 Random forest가 제일 잘 나온다.  하지만,  컴퓨터 연산도 많이 이루어 진다.    

 위 부분을 사용하기 위해서는 다수의 독립변수들이 존재 하여야 한다.  하지만,  실제 데이터들은 독립 변수들이 존재 하지 않는 경우가 대부분이다.   독립 변수가 존재 하는 대표적인 것은 부동산과,  사람의 신용정보 인데,  산업 현장에서 이런 데이터가 나오기는 매우 어렵다. 

하지만, 분류가 기계학습에서 머신러닝으로 발전 하게 된것은 바로,  이미지를 인식할 수 있는 딥러닝이 나오기 시작 하면서 였다.   즉 사진을 분류 할 수 있는데,  정확도가 높아 졌다는 것은 획기적인 것이다.   즉 산업 현장에서도 사용 할 수 있는 것이 많다는 것이다.   대표적인 산업군에서는 자동차 기술 등이다.    이번 강좌가 생겨난 것도 이 때문이다.    

  

css cheat sheet 클래스 선택자, margin(마진), display , center 조정 간단한 구성 요소

 앞에서는 html의 간단한 sheet를 소개 하였습니다.   html은  주로 골격을 나타나는 것이라, 디자인을 하는데는 css로 하여야 합니다.  아래 코드와 같이 css 관련 하여 매우 간단하게 코딩 하겠습니다.  body 부분의 css 코딩  ...