Br) ML - 나이브 베이즈

Br) ML - 나이브 베이즈

브라이틱스(Brightics)에서 나이브 베이즈(Naive Bayes)를 하는 방법을 알아본다.


Machine Learning

※ 본 내용은 Load 함수 블럭에서 diabetes.csv 파일을 불러온 후에 진행한다.
diabetes.csv 다운받기 [클릭]
사전 준비


개요

Brightics에서 제공하는 나이브 베이즈 분류기 관련 함수 블럭인 Naive Bayes Train은 파이썬(Python)의 Scikit Learn 라이브러리의 GaussianNB() 함수로 구현되었다고 추정된다.

이론

향후 보충 예정


설정

Naive Bayes Train 블럭의 설정 창은 다음과 같다.
Naive Bayes Train 블럭 설정 창

-Feature Columns: 독립변수 지정
-Label Column: 종속변수 지정
-Lambda: 평활화 설정값
-Fit Class Prior Probabilities: 사전확률 적합 여부. 기본값은 True이며 False로 하는 경우 균등 사전확률 적용
-Group By: 특정 변수를 기준으로 연산을 별도로 실시

Naive Bayes Predict 블럭의 설정 창은 다음과 같다.
Naive Bayes Predict 블럭 설정 창

-Prediction Column Name: 예측 변수명. 기본값은 prediction
-Probability Column Prefix: 예측 확률값이 할당되는 변수의 접두사. 기본값은 probability
-Display Log Probability: (상용)로그 예측 확률값 표기 여부. 기본값은 False
-Log Probability Column Prefix: (상요)로그 예측 확률값이 할당되는 변수의 접두사. 기본값은 False
-Display Joint Log Likelihood: 결합 로그 우도의 표기 여부. 기본값은 False
-Joint Log Likelihood Column Prefix: 결합 로그 우도 변수의 접두사. 기본값은 joint_log_likelihood
-Suffix Type: 예측 확률값이 할당되는 변수의 접미사. 기본값은 Index

Evaluate Classification 블럭의 설정 창은 다음과 같다.
Evaluate Classification 블럭 설정 창

-Label Column: 종속변수 지정
-Prediction Column: 예측값이 있는 변수 지정
-Average: 명목 로지스틱 회귀인 경우에 사용하는 설정
-Group By: 특정 변수를 기준으로 연산을 별도로 실시


결과

다음은 혈당, 혈압, BMI를 독립변수로 하고 당뇨병 발병여부인 Outcome 변수를 독립변수로 분석을 실시한 결과이다. 표에 보이는 숫자는 각 변수별 모수 추정치이다.
Naive Bayes Train 결과

Naive Bayes Train 블럭으로 학습한 모델 기반으로 예측값을 생산한 결과는 다음과 같으며 prediction 변수는 목표값의 확률이 0.5 이상이면 1, 미만이면 0을 출력한다.
Naive Bayes Predict 결과
Evaluate Classification 결과

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×