학습
- 지도학습
: 학습데이터를 통해 학습하는 방법 (사진과 결과를 입력)
: 다층퍼셉트론, 심층 신경망, 순환 신경망
- 자율학습
: 데이터의 유사도를 클러스터링(군집화)하여 그룹을 나누는 학습 (일반적으로 성능이 떨어짐)
: 볼츠만 머신, 오토인코더, 심층 볼츠만 머신, 심층 신외 신경망
- 선행학습
: 어느정도 학습된 데이터를 이용하여 학습하는 방법
: 기울기 소실문제가 발생하면 가중치의 초기값이 무작위로 지정되는 등의 문제 발생을 해결
자율학습
자율학습 (비지도 학습)
- 데이터에 대한 정보가 없는 상태에서 학습을 통해 모델을 만드는 것
- 데이터마이닝
: 클러스터 분석, 차원 압축을 이용하여 데이터를 시각화 한 것
- 주성분 분석 (차원 압축)
: 다차원의 분포를 가장 잘 설명하는 데이터를 찾기 위해 고차원의 데이터를 저차원의 데이터로 환원 (차원 압축)
- 클러스터 분석 (t-SNE)
: 유사한 특성을 가진 데이터끼리 군집화
- 특잇값 분해
: 데이터를 행렬로 나타낸 후 공분산 행렬을 계산하여 고유 값과 고유벡터를 구하는 방법
: 주성분 분석 대신 사용하여 역행렬을 구하여 최소 제곱법 식 계산 가능
- 독립 성분 분석
: 통계 독립성을 극대화 하기 위해 예측 성분을 찾는 것
: 제거할 수 없는 데이터를 다루는 목적
- 자기 조직화 지도
: 자율학습의 출력 결과를 이용하여 유사한 데이터끼리 군집화 한 것
지도학습
지도학습
- training data로 모델을 만들고 test data로 검증을 마치는 방식의 학습
- 서포트 벡터 머신(SVM)
: 데이터 분포를 나누는 기준을 결정하는 지도학습 모델
: 어떤 패턴으로 데이터를 분류 한후 데이터 사이의 거리에 따라 어떤 카테고리에 속하는지 판단
: 잘못 식별된 데이터에 패널티를 설정하여 오차에 대응하여 margin을 최대화하고 패널티를 함께 고려하여 최적화
: 경첩손실 함수라고도 함
- 베이즈 필터
: 학습과의 친화성이 높은 모델로 베이즈 분류가 이에 속함
- ID3
: 정답 데이터를 이용하여 결정트리를 만드는 알고리즘
ex) 색상과 채도를 기준으로 진짜와 가짜를 계산
- 랜덤포레스트
: 여러개의 데이터를 무작위로 뽑아내어 학습
: 데이터의 오류가 많거나 불안정할때 주로 사용
: SVM과 함께 데이터의 분포를 분류하는 유명한 알고리즘
타당성검증 (for 지도학습)
- 모델의 정확도를 측정하기 위해 실행하는 것
- ROC곡선
: 정답 결과 데이터 셋과 식별 결과 데이터 셋으로 혼동행렬을 만들어 검증
: True Positive와 False Nagative로 구분하여 식별결과를 혼동행렬로 작성
- 홀드아웃 검증
: 데이터를 훈련데이터와 테스트데이터로 나눈 후 테스트 데이터를 사용하지 않는 방법
- K겹 교차검증
: 데이터를 K개의 그룹으로 나눈 후 하나의 그룹을 제외한 모든 데이터를 훈련 데이터로 설정
: 제외된 하나의 그룹은 테스트 데이터로 사용
훈련오차 & 테스트오차
- 훈련오차 : 학습 데이터의 오차를 나타내는 값
- 테스트오차 : 테스트 데이터의 오차를 나타내는 값
- 오차제어
: 정규화 = 가중치 계수에 패널티를 가하여 과적합 방지
: 드롭아웃 = 계층 내의 가중치를 0으로 취급하여 과적합 방지
: 데이터 정규화 = 데이터의 평균과 분산을 이용
: 데이터확장 = 이미지 평행이동, 대칭, 회전, 명암변경, 노이즈 추가 등으로 낮은 품질의 이미지의 인식정도 향상
: 여러가지 네트워크 이용 = 여러개의 신경망을 학습하고 모델의 평균을 구해 일반화 성능 향상
: 학습률 결정 = 학습진행 상황에 따라 학습률을 증감
오차역 전파법
- 하나 이상의 중간계층을 가진 계층형 신경망의 출력계층에서 학습데이터와 오차를 이용하여
중간 계층의 뉴런(노드)을 변화시키는 구조
자기조직화
- 신경망의 학습과정에서 데이터 입력과 가중치를 업데이트 해서 스스로 일관성 있게 변화하는 것
강화학습
강화학습
- 2개 이상의 학습모델을 합쳐서 성능을 강화시키는 학습
- 미지의 데이터에도 대응하도록 스스로 학습기를 변화 시킬 수 있는 구조
- 시행착오와 보상을 통해 행동패턴을 학습하는 과정을 모델화 한 것
- 보상과 가치함수
: 행동가치 함수 = 행동에서 얻어지는 기대 값
: 상태가치 함수 = 상태의 변화에 따른 기대 값
ㆍ벨먼 방정식 = 상태가치 함수의 재귀적 표현
- 마르코프 결정
: 최근의 일을 통해 다음의 일을 예측하는 방법으로 강화학습의 기본 컨셉
Q학습
- 탐욕알고리즘을 이용한 학습 (보유한 데이터 중 최적의 데이터를 선택)
- Q값이 가장 높은 행동을 선택하여 학습
앙상블
- 하나의 학습기에서 원하는 성능을 낼 수 있도록 설계하는 학습
- 학습기가 적은 모델을 구축할때 주로 사용
- 개별로 학습한 여러개의 학습기를 조합하여 일반화 성능을 향상
배깅
- 부트스트랩을 이용하여 m개의 복원 추출을 B회 반복하여 학습
- 랜덤포레스트와 유사한 방식으로 가장 안정적인 학습 성능 보장
- 부트스트랩 : 적은 데이터를 복원 추출하여 여러번 뽑아내는 것
부스팅
- 약 학습기를 결합하여 강 학습기를 얻는 방법
- 성능이 높은 학습기에 가중치를 추가
- 데이터가 안정적일 수 록 성능이 좋음
- 에이다부스트 (ada boost)
기타학습
전이학습
- 기존 작업에서 얻은 학습 데이터와 학습 결과를 재사용 하는 방법
- 도메인 적응 : 전이학습을 통해 문제를 해결하는 방법
- 원 도메인 : 학습한 작업에 특화된 지식과 학습기 영역
- 목표 도메인 : 앞으로 대응해야할 새로운 영역
- 멀티태스킹 학습
: 원 도메인과 목표 도메인 사이에서 지식을 주고 받으면서 공통 부분의 지식을 향상 시키는 학습
메타학습
- 학습방법을 학습하는 방법
분산인공지능
- 지능형 에이전트 : 학습하는 능력을 얻은 프로그램
- 합리적 에이전트 : 축적한 이력과 얻은 지식을 모델을 이용해 성능이 최대가 디도록 행동하는 프로그램
- 자율 에이전트 : 자신의 경험을 우선으로 학습하는 프로그램
- 멀티 에이전트 : 같은 처리를 나누거나 데이터를 다른 기준으로 식별하여 협업하는 프로그램
- 칠판 모델 : 여러 개의 에이전트가 협업할때 기억 영역을 공유하는 모델
'Computer Science > DeepLearning' 카테고리의 다른 글
머신러닝 기초 2 - 머신러닝과 학습 / 학습을 위한 최적화 이론 (0) | 2020.12.10 |
---|---|
머신러닝 기초 1 - 머신러닝의 기초 개념과 신경망 (0) | 2020.12.10 |
인공지능 기초 9 - 머신러닝과 수학 3 (0) | 2020.12.10 |
인공지능 기초 8 - 머신러닝과 수학 2 (0) | 2020.12.10 |
인공지능 기초 7 - 머신러닝과 수학 1 (0) | 2020.12.10 |