모형 구축의 기법
- 통계분석 : 정보 추출, 데이터 관계 이해, 예측모델 생성으로 진행되는 전통적 방법으로 데이터의 패턴 식별, 가설 검증에 주로 사용
- 데이터 마이닝 : 큰 데이터 세트에서 유용한 패턴, 상관관계, 트렌드 등을 찾는 과정으로 기존 DB관리 도구의 용량을 넘어서는 큰 데이터 집합과 복잡한 구조에서 정보를 발견하기 위해 사용
- 머신러닝 : 데이터로부터 학습하고 예측을 수행하는 알고리즘과 모델을 개발하는 과정으로 다음과 같이 구분
- 지도학습
- 비지도학습
- 강화학습 - 비정형 데이터 분석 : 텍스트, 이미지, 오디오 등 비정형 데이터를 분석하는 기법
통계분석
- 선형 회귀 모델
- 하나 이상의 독립변수와 연속적인 종속 변수 간의 선형 관계를 모델링
- 가장 간단하면서도 널리 사용되는 예측 기법
- 경제학, 생물학 등 다양한 분야에서 추세 예측, 인과 관계 분석에 사용 - 로지스틱 회귀 모델
- 이진 결과를 가지는(0, 1)종속변수와 하나 이상의 독립변수간에 관계를 설명하는데(분류) 사용되는 모델
- 결과는 로지스틱 함수를 통해 확률로 표현
- 의료 분야에서 질병 발생 가능성 예측, 이메일 스팸 여부 예측 등에 사용 - 다변량 분석
- 두 개 이상의 종속 변수를 동시에 분석하여 변수간의 관계를 파악
- 주요 기법으로는 주성분 분석(PCA), 요인 분석, 판별 분석, 클러스터 분석 등이 존재
- 대규모 데이터셋에서 데이터 차원을 축소하거나 숨겨진 요인을 발견할 때 사용
-> 주로 정형화된 소규모 데이터셋을 다룸
-> 모집단에서 추출한 표본을 기반으로 추론하는 것이 중점
-> 데이터의 구조와 관계를 이해하고 가설 검정으로 모델을 검증하는 데 주로 사용
-> 데이터의 분포, 통계적 가정을 확인하거나 데이터를 요약하고 설명하는 것이 중점
데이터 마이닝
대용량 데이터로부터 패턴과 관계를 탐색, 다양한 기법으로 모델링하고 여기서 데이터 분석 및 유용한 정보들을 추출하는 과정
- 분류
- 주어진 입력 데이터를 기반으로 여러 클래스 중 하나로 할당
- 로지스틱 회귀, 나이브 베이즈, K-NN, 의사결정트리, 랜덤 포레스트, 부스팅, 서포트 벡터 머신, 인공신경망 - 예측
- 데이터의 기존 특성을 분석하여 미래의 값, 연속적인 수치치를 예측하는 과정
- 선형 회귀, 시계열 분석, 의사 결정 트리, 랜덤 포레스트, 부스팅, 서포트 벡터 머신, 인공신경망 - 연관 규칙 학습
- 데이터 항목간 종종 발생하는 관계, 규칙을 찾는 과정
- Apriori, Eclat - 군집화
- 레이블이 지정되지 않은 데이터를 유사성에 따라 그룹화하는 비지도학습 기법
- K-means, 계층적 군집화, DBSCAN
-> 주로 대규모 데이터셋을 다룸
-> 예측 모델, 패턴 인식, 분류 등을 포함하여 데이터로부터 새로운 패턴을 발견
-> 비정형, 구조화되지 않은 데이터를 다룰 수 있음
-> 자동화된 프로세스가 많고 새로운 데이터에 대한 예측 능력이 강조
-> 출력은 데이터에서 발견된 패턴이나 규칙, 이를 통해 얻은 지식
머신러닝
컴퓨터가 명시적인 프로그래밍 없이 데이터로부터 학습할 수 있는 능력으로 데이터 분석, 패턴 발견으로 예측과 결정을 수행하는 모델을 자동으로 구축하는 과정임
- 지도학습
- 입력 데이터(학습 데이터)와 정답(label)을 사용하여 모델을 학습시키는 방법
- 모델은 주어진 입력으로부터 예측을 수행하고 이 예측이 실제 레이블과 얼마나 일치하는지를 통해 점진적으로 개선
- 주 목적은 학습 데이터로 새로운 데이터에 대한 정확한 예측, 분류를 할 수 있는 모델을 구축하는 것
- 분류 : 입력 데이터를 사전에 정의된 클래스 중 하나로 분류
- 회귀 : 연석적인 수치의 값을 예측 - 비지도 학습
- 레이블이 지정되지 않은 데이터로 모델을 학습시키는 방법
- 데이터 내의 숨겨진 구조, 패턴, 그룹 등을 자동으로 발견하는데 주로 사용
- 레이블, 보상시스템 없이 입력데이터만 학습하여 데이터의 특성, 구조 파악
- 군집화 : 유사한 특성을 가진 데이터들을 그룹으로 묶는 과정
- 차원 축소 : 데이터 차원을 줄이면서 가능한 많은 정보를 보존 -> 데이터 간소화로 계산비용을 줄이고 노이즈제거에 유용
- 연관 규칙 : 데이터간의 흥미로운 관계를 찾아내는 방법 -> 트랜잭션 데이터에서 특정 조합의 빈번함을 식별 - 강화학습
- 에이전트가 환경과 상호작용하여 어떤 목표달성을 위한 최적의 행동을 배우는 과정
- 보상시스템에 기반하며 보상을 최대화하는 방법을 학습하고 자동으로 의사결정을 개선함
- 각 행동에 대한 결과를 통해 더 나은 행동 전략을 개발
- 가치 기반 강화학습 : 에이전트는 각 상태의 가치를 학습, 이를 기반으로 최적의 행동을 결정(Q러닝, Value Iteration)
- 정책 기반 강화학습 : 에이전트는 행동을 직접 매핑하는 정책을 최적화(state에서 어떤 행동을 취할지를 직접 학습)
- 액터-크리틱 방법 : 가치기반, 정책기반을 결합한 형태로 행동을 결정하는 액터와 행동을 평가하는 크리틱으로 구
-> 모델을 생성하는 것에 중점을 두며, 새로운 데이터에 대한 예측 및 결정을 내림
-> 데이터로부터 모델을 자동으로 개선하는 알고리즘 개발에 더 집중, 오류의 최소화와 성능 최적화를 포함
-> 출력은 일반적으로 새로운 데이터에 대한 예측이나 분류 결과
비정형 데이터 분석
- 텍스트 마이닝
- 텍스트 데이터에서 유용한 정보를 추출, 패턴과 트렌드를 식별하는 기술
- 자연어처리(NLP)기술을 이용하여 텍스트를 분석하고 주요 키워드, 토픽 모델링, 감정 분석등을 수행 - 웹 마이닝
- 웹에서 정보를 추출하여 웹페이지 내용 분석, 웹사이트 링크들의 구조 분석, 웹의 사용 데이터를 분석 - 오피니언마이닝(감정분석)
- 소비자 리뷰, SNS 포스트, 뉴스 기사 등의 텍스트 데이터에서 의견, 감정, 평가들을 분석 - 리얼리티 마이닝
- 모바일 기기, 센서, 로그파일 등에서 사용자의 행동 패턴을 실시간으로 분석하는 기술
- 실생활에서의 인간 행동과 상호작용을 이해, 예측 - 소셜 네트워크 분석(SNA)
- 소셜 네트워크에서 개인, 집단간의 관계를 분석하는 기술
- 네트워크 이론으로 사람,조직(노드)과 관계(엣지)를 분석하고 해당 네트워크의 구조적 특성을 파악
분석모형 선정 기준
- 분석 목표 이해
- 성능 요구 사항 : 실시간 처리, 배치 처리
- 데이터 유형 : structed, unstructed
- 데이터의 품질 : 결측, 이상, 노이즈값 등 데이터 품질 평가 후 전처리 단계 계획
- 데이터의 양 : 데이터의 양이 많으면 복잡한 모델을 사용할 수 있지만, 처리속도와 컴퓨팅자원 고려 필요
- 변수의 수와 종류 : 사용할 수 있는 feature의 수와 종류(범주, 연속)도 모델 선택에 중요
- 모델의 정확성 : 특정 문제에 대해 과거 어떤 모델이 좋은 성능을 보였는지 리서치
- 모델의 해석 가능성 : 프로젝트 요구에 따라 모델의 해석 가능성이 중요할 수 있음
- 유지 보수 및 확장성 : 모델이 시간이 지나도 지속적으로 좋은 성능이 나오도록 유지보수가 용이하고 확장가능해야함
빅데이터 주요 분석 기법
- 기술적 분석 : 데이터 이해, 요약과 현재와 과거의 데이터 패턴 파악
- 데이터 시각화, 대시보드, 보고서 작성, 요약 통계 등 - 진단적 분석 : 패턴, 이상치, 상관관계 등을 분석하여 원인에 대한 결과를 찾음
- 상관분석, 회귀분석, 인과분석, 다변량 통계 등 - 예측적 분석 : 과거 및 현재 데이터를 바탕으로 미래 이벤트 예측
- 기계학습모델, 시계열분석, 회귀모델, 분류알고리즘 등 - 규범적 분석 : 예측 결과를 바탕으로 최적의 행동 방안 제시
- 최적화, 시뮬레이션, 의사결정 분석, 복잡 시스템 모델링 등 - 탐색적 분석 : 데이터 내 숨겨진 패턴이나 정보를 찾는데 초점
- 클러스터링, 주성분분석(PCA), 고급 데이터마이닝 기법 등 - 실시간 분석 : 실시간 데이터의 처리 분석으로 즉각적인 피드백 제공
- 스트림 데이터 분석, 이벤트 기반 분석, 동적 대시보드 등
통계 기반 분석 모형 선정
척도와 분석 방법 간의 관계 | 독립변수 | ||
범주형 | 연속형 | ||
종속변수 | 범주형 | 교차분석 | 로지스틱 회귀분석 프로빗 분석 판별 분석 군집 분석 |
연속형 | 독립표본 t-test 일원배치분산분석 |
상관관계분석 선형회귀분석 구조방정식 모델분 |
데이터 활용 목적에 따른 모델 분류
- 예측이 목적 : 분류, 회귀, 시계열분석, 예측
- 서술이 목적(Descriptive) : 연관규칙, 연속규칙, 군집화, 차원축소
변수 유형에 따른 모델 분류
- 연속형 종속 변수
- 수치적 값을 가지며 무한한 범위의 값을 취할 수 있는 데이터
- 모델로는 다중회귀, 다중선형회귀, 인공신경망, K-NN, K-Means, 의사결정트리, 랜덤포레스트 - 범주형 종속 변수
- 제한된 수의 분류된 값을 가지는 데이터
- 모델로는 로지스틱회귀, 판별 분석, 나이브 베이즈, SVM, K-NN, 인공신경망, 의사결정트리, 랜덤포레스트 - 시계열 데이터
- 시간에 따라 연속적으로 관찰되거나 측정된 데이터
- 모델로는 ARIMA, 지수 평활
데이터 유형에 따른 모델 분류
- 표 형식(Tabular) 데이터 : 데이터 마이닝, 머신러닝의 회귀, 분류, 앙상블 모델 적용
- XGBoost, LightCBM등의 부스팅기법이 좋은 성능 보임 - 텍스트 데이터 : 텍스트 마이닝, 언어 모델 적용
- 자연어 처리, 형태소 분석, LSTM, Transformer, GPT, BERT 등 - 그래프 데이터 : 그래프 마이닝, 그래프 신경망, 네트워크 분석 적용
- PageRank, 그래프 임베딩, 그래프 분류, 링크 예측, 커뮤니티 감지 알고리즘 등 - 이미지 데이터 : 컴퓨터 비전, 이미지 프로세싱
- CNN, YOLO, Segmentation, GAN, Diffusion 등 - 오디오 처리 + 다양한 모델 적용
- CNN, LSTM, MFCC, WaveNet, WaveFlow, Tacotron, Wave2vec 등
분석 모형 정의
- 모형의 사양을 정의하고 선정 : 모델의 구조, 알고리즘, 입출력 형식, 사용될 feature등을 명확히 정의
- 목적에 맞는 분석기법, 알고리즘 선정 : 프로젝트의 목적(예측, 분류, 군집화 등)과 데이터 특성에 따라 적합한 알고리즘 선정, 이를 비교하기위해 교차검증 사용
- 적합한 독립변수(feature) 및 종속변수(label)선택 : 올바른 feature와 label 선택은 모델의 정확성과 효율성을 크게 좌우함
- 데이터 준비 및 train, val, test 데이터 분할 : 결측치 처리, 이상치검출 및 처리, 데이터 스케일링 등 전처리를 수행하며 데이터를 적정 비율로 분할하여 과적합을 방지하고 모델 일반화 능력을 평가
- 분석기법별 최적의 파라미터, 하이퍼파라미터 탐색 : 모델 성능 최적화를 위해 여러 기법으로 최적 하이퍼파라미터 탐색
파라미터와 하이퍼파라미터
- 파라미터
- 모델이 데이터로부터 학습하는 내부 변수
- 모델 추론에 직접적으로 작용
- 측정되거나 데이터로부터 학습되고 모델의 성능이 결정
- 모델 훈련과정에서 자동으로 조절
- 학습된 모델로서 저장되어 사용(모델 저장 = 파라미터 저장) - 하이퍼 파라미터
- 사용자가 직접 설정해야 하는 모델의 외부 변수(설정 값)
- 모델의 학습과정과 성능에 영향
- 사용자 경험에 의해 결정 가능한 값
- 모델의 성능 문제를 위해 조절
- 그리드 서치, 랜덤 서치, 베이지안 최적화 등을 사용하여 모델의 하이퍼파라미터 최적화 가능
데이터 선정 및 분할
- 일반적 훈련 데이터는 전체 데이터 60~80%, 테스트 데이터는 40~20%로 선정
- 검증데이터(Validation)가 필요한 경우, 훈련 데이터에서 일부를 분리하여 사용
- 훈련 데이터의 성능에만 초점을 둘 경우 과대적합(Overfitting)이 일어날 수 있음
- 반대로 훈련 데이터를 소홀히한다면 과소적합(Underfitting)이 일어날 수 있음
- K-Fold 교차검증을 포함한 다양하 교차검증기법을 이용하여 모델의 일반화 성능을 평가(데이터의 모든 측면 학습)
- Stratified K-Fold : 각 클래스의 비율을 유지하면서 데이터를 분할(K-Fold의 데이터 불균형 문제 해결에 유용)
- LOOCV : 매우 정확한 검증을 위에 단 하나의 데이터포인트를 제외한 나머지를 전부 훈련 데이터로 사용
모형 평가
지도학습 | 분류 | 정확도 : 전체 예측 중 올바른 예측의 비율 정밀도 : 양성으로 예측된 사례 중 실제 양성인 사례의 비율 재현율 : 실제 양성 사례 중 예측된 사례의 비율 F1 점수 : 정밀도와 재현율의 조화 평균 ROC-AUC : ROC아래 면적 |
회귀 | 평균제곱오차(MSE) : 예측값과 실제값 차이의 제곱 평균 평균절대오차(MAE) : 예측값과 실제값 차이의 절대값 평균 |
|
비지도학습 | 군집화 | 실루엣 점수 : 클러스터 내 거리가 클러스터간 거리보다 얼마나 더 가까운지를 측정 던 지수 : 클러스터간 거리를 최대화하고 클러스터 내 거리를 최소화하는 지 |
모델링
- 모델링 기법 선택 및 결합
- 기법 선택 : 프로젝트 요구 사항을 고려하여 적합한 모델링 기법 선택
- 기법 결합 : 상황에 따라 하나의 기법으로 충분하지 않은 경우 여러 모델링 기법을 결합하여 사용 - 시뮬레이션 모델링
- 프로세스와 자원에 제약이 없으며 입력값이 확률분포를 가질 때 적합(불확실성 모델링에 효과적)
- 복잡한 시스템의 동작을 모델링하여 다양한 시나리오 하에서 성능 예측 가능 - 최적화 모델링
- 프로세스 및 자원에 대한 제약이 있고, 입력값이 상수값을 가질 때 사용
- 자원을 최적으로 할당하거나 비용을 최소화하는데 사용 - 시뮬레이션, 최적화의 결합
- 복잡한 시나리오에서 시뮬레이션으로 여러 가능성 탐색 후 최적화 기법으로 가장좋은 결과를 도출할 수 있는 조합을 찾아냄 - 데이터마이닝 모델링
- 지나치게 통계적 가설, 유의성에 집중하기 보다 데이터로부터 패턴과 통찰을 추출하는데 초점을 맞춤