빅데이터 관련 개념 정리

분석 모형 설계

은행털이 2024. 6. 13. 23:07

모형 구축의 기법

  • 통계분석 : 정보 추출, 데이터 관계 이해, 예측모델 생성으로 진행되는 전통적 방법으로 데이터의 패턴 식별, 가설 검증에 주로 사용
  • 데이터 마이닝 : 큰 데이터 세트에서 유용한 패턴, 상관관계, 트렌드 등을 찾는 과정으로 기존 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) : 예측값과 실제값 차이의 절대값 평균
비지도학습 군집화 실루엣 점수 : 클러스터 내 거리가 클러스터간 거리보다 얼마나 더 가까운지를 측정
던 지수 : 클러스터간 거리를 최대화하고 클러스터 내 거리를 최소화하는 지

 

 

 

 

 

모델링

  • 모델링 기법 선택 및 결합
    - 기법 선택 : 프로젝트 요구 사항을 고려하여 적합한 모델링 기법 선택
    - 기법 결합 : 상황에 따라 하나의 기법으로 충분하지 않은 경우 여러 모델링 기법을 결합하여 사용
  • 시뮬레이션 모델링
    - 프로세스와 자원에 제약이 없으며 입력값이 확률분포를 가질 때 적합(불확실성 모델링에 효과적)
    - 복잡한 시스템의 동작을 모델링하여 다양한 시나리오 하에서 성능 예측 가능
  • 최적화 모델링
    - 프로세스 및 자원에 대한 제약이 있고, 입력값이 상수값을 가질 때 사용
    - 자원을 최적으로 할당하거나 비용을 최소화하는데 사용
  • 시뮬레이션, 최적화의 결합
    - 복잡한 시나리오에서 시뮬레이션으로 여러 가능성 탐색 후 최적화 기법으로 가장좋은 결과를 도출할 수 있는 조합을 찾아냄
  • 데이터마이닝 모델링
    - 지나치게 통계적 가설, 유의성에 집중하기 보다 데이터로부터 패턴과 통찰을 추출하는데 초점을 맞춤

'빅데이터 관련 개념 정리' 카테고리의 다른 글

머신러닝  (0) 2024.10.14
인공지능 개념  (4) 2024.10.13
추정과 검정  (0) 2024.04.22
데이터 축소  (0) 2024.04.21
데이터 통합  (1) 2024.04.21