728x90
Data Science
4차 산업 시대: 빅데이터, 인공지능
- 데이터 과학: 다양한 데이터로부터 지식과 인사이트를 추출하는 과학적 방법론. 프로세스,알고리즘,시스템을 통합하는 융합분야. -데이터 마이닝, 빅데이터
- 머신러닝: 기계에게 데이터를 학습시켜 규칙성을 찾아내 미래를 에측하거나 분류,인식하는 기술 - 인공지능, 딥러닝
빅데이터의 특징
3V
- 규모(Volume)
- 속도(Velocity)
- 다양성(Variety)
+5V
- 신뢰성(Veracity)
- 가치(Value)
데이터 분석 방법(론)
- 기술 통계: 수집,축적한 데이터를 묘사,설명하는 통계 기법. 대표값 분석 - 평균,중앙값,최빈값/ 분산 분석 - 표준편차, 분산, 사분위값
- 추론 통계: 수집,축적한 데이터를 기반으로 일반적인 상황을 추론,예측하는 통계기법. - 회귀분석, 가설검증, 분산분석, 상관분석 등
- 데이터마이닝: 대규모 데이터에 숨어있는 패턴을 발견하여 의미있는 규칙을 도출하는 기법. - 군집분석, 연관분석, 분류 분석, 텍스트 마이닝 등
데이터로 할 수 있는 것
- 현재 상태를 객관적으로 파악: 기술통계량, 시각화, 대쉬보드 등
- 비정상적인 사건을 탐지: 이상점, 이상점 탐지, 사기 탐지
- 특정 사건과 행태에 대한 원인을 파악하고 진단: 통계적 검정, 인과관계
- 미래 사건을 예측: 예측모형, 분류모형, 기계학습
인공지능, 머신러닝, 딥러닝
AI >머신러닝> 신경망, 인공신경망> 딥러닝, 심층학습
가장 큰 AI라는 틀 안에 머신러닝, 그 안에 신경망,인공신경망, 그 안에 딥러닝이 있다.
튜링 테스트: 컴퓨터가 지능을 가지고 있는지 판단하는 테스트
학습, 기계학습 정의
학습: 경험의 결과로 나타나는 행동의 변화, 또는 지식을 습득하는 과정
기계학습: 성능 개선이나 정확한 예층을 위해 경험을 이용하는 프로그래밍 방법론
인공지능 추구 방법
지식 공학
- 지식을 인간이 직접 컴퓨터에 구축해 넣음 => 하향식 지식 운용
- 합리주의적(이성적) 사고방식
- 연역적(deductive) 추론방식(일반적인 원리로 특정상황을 유추)
- 시스템이 지식표현구조와 추론시스템으로 구성
기계 학습:
- 컴퓨터가 데이터로부터 직접 지식을 추출함 => 상향식 지식 운용
- 경험주의적 사고방식
- 귀납적(inductive) 추론 방식(특정 사례를 통해 일반적인 원리를 도출)
- 시스템이 데이터 처리와 학습기(학습 모델)로 구성
기호주의 AI와 연결주의 AI
기호주의 AI: 논리와 규칙을 중심으로 하는 AI
연결주의 AI: 학습 모델을 신경망 모델 사용. 대량의 데이터를 활용하여 패턴을 학습하고, 병렬 분산 처리를 통해 문제를 해
기계학습의 분류
학습의 방법
- 지도학습: 학습 데이터마다 레이블을 가짐. 학습이 쉽고 효과적. - 분류, 회귀 문제 등
- 비지도학습: 학습 데이터가 레이블을 가지고있지 않음.- 데이터 군집화, 특징 분석
- 준지도학습: 학습 데이터가 약간의 레이블을 가지고 있음
- 강화학습: 레이블이 없는 데이터 학습 가능. 에이전트가 어떠한 환경에서 행동을 수행했을 때 보상을 줌.(에이전트는 보상을 최대로하는 행동을 수행하도록 학습함. 보상은 바로 주어지지 않음)
지도 학습
주어진 입/출력 쌍들을 매핑해주는 함수를 학습(출력:답, label)
D={X,Y}로부터 F(X)=Y를 만족시키는 F를 학습
- 딥러닝이 대표적인 예
- 사용할 수 있는 데이터에 한계가 많음
- 데이터를 생성하는 데 비용이 많이 듦
비지도 학습
입력만 있고 출력(label)은 없는 상태에서 이루어지는 학습
=> 데이터에 내재되어있는 고유의 공통된 특징을 탐색하고자 함
D={X}로 부터 F(X)=X그룹을 만족시키는 F함수를 학습
- 군집(clustering)이 주로 사용됨: 비슷한 특성을 가진 데이터끼리 묶음
- 지도학습에 비해 학습이 어려움
- 실세계의 데이터는 대부분 레이블이 없음
- 기계학습 분야에서 많은 연구가 필요
강화 학습
현재의 상태에서 어떤 행동을 취하는 것이 최적인지를 학습
보상은 바로 주어지지 않고 시간이 지나서 주어지는 경우가 대부분
- 바둑, 체스, 게임, 미로 찾기 등에 효과적
- 매 action이 주어질 때마다 보상을 결정하기 어려울 때 사용(바둑은 한 수를 둘 때마다 승패가 결정되는것이 아님)
- 어떤 action이 최종 출력에 영향을 주었는지 불명확한 문제에 사용됨
기계 학습의 활용
강화 학습 활용
- 컴퓨터 게임(벽돌 깨기 등)
- 로봇 관절 움직임
- 비즈니스 측면의 재고 관리 및 자원 할당 관리
- 주식 투자 및 모의 투자
- 이커머스 컨텐츠 및 광고 미디어 결정 등
넷플릭스 추천 시스템, 미국 국가안보국 SKYNET, 인터넷검색, 그래픽, 비전...
기계학습 구성요소
데이터(Data preparation) + 학습 모델 + 모델 평가
데이터 준비
훈련(학습) 데이터 + 검증 데이터 -> 모델 <- 테스트 데이터
- 훈련 데이터: 모델 학습을 위해 사용하는 데이터
- 검증 데이터: 모델 검증을 위한 데이터. 검증 데이터에 대한 성능에 따라 모델을 바꿔보고, 통상적으로 성능이 제일 높은 모델을 선택
- 테스트 데이터: 학습된 모델의 최종 성능 검사를 위해 따로 구별해놓은 데이터
학습 모델(알고리즘)
- 회귀부선/로지스틱 회귀
- 의사결정 트리
- K-NN
- SVM
- 앙상블
- K-Means Clustering
- 신경망/딥러닝
모델 평가
- 손실/비용 평가(학습 시)
- 성능 평가(학습 후)
손실/비용 평가
- 에러의 제곱(MSE)
- 크로스 엔트로피 : 0,1로 분류하는 신경망의 출력이 0과1사이의 값일 때 손실 함수 계산 방
성능 평가
- 정확도(accuracy): 맞힌 데이터 개수/전체 데이터 개수. (오류률 = 1-정확도)
- 정밀도: 모델이 True로 분류한 것 중 진짜 True인 것의 비율(TP/(TP+FP))
- 재현율: 실제로 True인 데이터 중에서 모델이 True로 출력한 비율(TP/(TP+FN))
- F1 score: 정밀도(p), 재현률(r)의 결합. \(조화평균: 역수평균의 역수). F1=2*p*r/(p+r)
728x90
'2023-2 > 데이터 분석과 머신러닝' 카테고리의 다른 글
기계 학습 (1) | 2023.10.21 |
---|---|
Python summary (2) | 2023.10.18 |
댓글