머신러닝:개요: 두 판 사이의 차이
(새 문서: {{머신러닝}} == 개요 == 목표는 새로운 데이터에서 잘 작동하는 일반화된 모델을 얻는 것. == 학습방법 == 사실, 다음의 학습방법은 어디에...) |
(→비지도학습) |
||
(다른 사용자 한 명의 중간 판 하나는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
{{머신러닝}} | {{머신러닝}} | ||
== 개요 == | ==개요== | ||
목표는 새로운 데이터에서 잘 작동하는 일반화된 모델을 얻는 것. | 목표는 새로운 데이터에서 잘 작동하는 일반화된 모델을 얻는 것. | ||
== 학습방법 == | ==학습방법== | ||
사실, 다음의 학습방법은 어디에 중점을 두느냐에 따라 달리 해석되어 경계가 모호하다. | 사실, 다음의 학습방법은 어디에 중점을 두느냐에 따라 달리 해석되어 경계가 모호하다. | ||
=== 지도학습 === | ===지도학습=== | ||
훈련데이터와 타깃 사이의 관계를 학습하게 된다. 데이터가 주어지면, 주어진 타깃에 매핑하는 방법 학습. | 훈련데이터와 타깃 사이의 관계를 학습하게 된다. 데이터가 주어지면, 주어진 타깃에 매핑하는 방법 학습. | ||
문자판독, 음성인식, 이미지분류, 언어번역 등. 이미지분할, 캡션 등을 자동으로 다는 데에도 사용 | 문자판독, 음성인식, 이미지분류, 언어번역 등. 이미지분할, 캡션 등을 자동으로 다는 데에도 사용 | ||
=== 비지도학습 === | ===비지도학습=== | ||
어떤 타깃도 사용하지 않고, 입력데이터에 대한 변환을 검색. 지도학습을 하기 전에 데이터셋을 잘 이해하기 위해 거치는 단계로 주로 사용된다. 차원축소, 군집문제. | 어떤 타깃도 사용하지 않고, 입력데이터에 대한 변환을 검색. 지도학습을 하기 전에 데이터셋을 잘 이해하기 위해 거치는 단계로 주로 사용된다. 숨겨진 규칙을 발견하기 위한 목적으로. 차원축소, 군집문제. | ||
데이터시각화, 압축, 노이즈제거 등 데이터의 상관관계를 이해하기 위해 사용. | 데이터시각화, 압축, 노이즈제거 등 데이터의 상관관계를 이해하기 위해 사용. | ||
=== 자기지도학습 === | ====자기지도학습==== | ||
지도학습이지만, 사람이 만든 레이블을 사용하지 않음. 사람이 개입하지 않는 지도학습. 경험적인 알고리즘을 사용하여 입력데이터로부터 레이블 생성. | 지도학습이지만, 사람이 만든 레이블을 사용하지 않음. 사람이 개입하지 않는 지도학습. 경험적인 알고리즘을 사용하여 입력데이터로부터 레이블 생성. | ||
23번째 줄: | 23번째 줄: | ||
<br /> | <br /> | ||
=== 강화학습 === | ===강화학습=== | ||
오랫동안 관심을 끌지 못했던 방법인데, 구글의 딥마인드가 게임플레이를 학습하는데 사용하며 많은 관심을 받기 시작했다. 알파고의 기반이 되었던 학습. | 오랫동안 관심을 끌지 못했던 방법인데, 구글의 딥마인드가 게임플레이를 학습하는데 사용하며 많은 관심을 받기 시작했다. 알파고의 기반이 되었던 학습. | ||
환경에 대한 정보를 받아 보상을 최대화 하는 행동을 선택하게끔 학습하는 형태. | 환경에 대한 정보를 받아 보상을 최대화 하는 행동을 선택하게끔 학습하는 형태. | ||
== 성능측정방법 == | ==성능측정방법== | ||
데이터를 훈련세트, 검증세트, 테스트세트로 나누어 사용한다. 검증세트와 테스트세트는 거의 유사하지만, 검증세트는 모델의 성능을 평가하며 층 수나 유닛 수를 설정하기 때문에 완전히 깨끗하게 검증을 위한 자료라 보기 어렵다.(하이퍼파라미터를 조정할 때마다 검증데이터에 대한 정보가 모델에 누설된다 본다.) 때문에 최후에 테스트세트를 두어 최대한 정확한 성능측정을 꾀한다. | 데이터를 훈련세트, 검증세트, 테스트세트로 나누어 사용한다. 검증세트와 테스트세트는 거의 유사하지만, 검증세트는 모델의 성능을 평가하며 층 수나 유닛 수를 설정하기 때문에 완전히 깨끗하게 검증을 위한 자료라 보기 어렵다.(하이퍼파라미터를 조정할 때마다 검증데이터에 대한 정보가 모델에 누설된다 본다.) 때문에 최후에 테스트세트를 두어 최대한 정확한 성능측정을 꾀한다. | ||
=== 단순 홀드아웃 검증(hold-out-validation) === | ===단순 홀드아웃 검증(hold-out-validation)=== | ||
데이터의 일정량을 테스트 세트로 분리. | 데이터의 일정량을 테스트 세트로 분리. | ||
데이터가 적을 땐 검증, 테스트세트의 샘플이 너무 적어 전체데이터를 통계적으로 대표한다고 보기 어렵다. | 데이터가 적을 땐 검증, 테스트세트의 샘플이 너무 적어 전체데이터를 통계적으로 대표한다고 보기 어렵다. | ||
=== K-겹 교차검증 === | ===K-겹 교차검증=== | ||
k는 숫자. 데이터를 k개로 분할, 각 분할모델에서 각자 평가, | k는 숫자. 데이터를 k개로 분할, 각 분할모델에서 각자 평가, | ||
=== 셔플링을 사용한 반복 K-겹 교차검증 === | ===셔플링을 사용한 반복 K-겹 교차검증=== | ||
<br /> |
2021년 4월 22일 (목) 23:25 기준 최신판
개요[편집 | 원본 편집]
목표는 새로운 데이터에서 잘 작동하는 일반화된 모델을 얻는 것.
학습방법[편집 | 원본 편집]
사실, 다음의 학습방법은 어디에 중점을 두느냐에 따라 달리 해석되어 경계가 모호하다.
지도학습[편집 | 원본 편집]
훈련데이터와 타깃 사이의 관계를 학습하게 된다. 데이터가 주어지면, 주어진 타깃에 매핑하는 방법 학습.
문자판독, 음성인식, 이미지분류, 언어번역 등. 이미지분할, 캡션 등을 자동으로 다는 데에도 사용
비지도학습[편집 | 원본 편집]
어떤 타깃도 사용하지 않고, 입력데이터에 대한 변환을 검색. 지도학습을 하기 전에 데이터셋을 잘 이해하기 위해 거치는 단계로 주로 사용된다. 숨겨진 규칙을 발견하기 위한 목적으로. 차원축소, 군집문제.
데이터시각화, 압축, 노이즈제거 등 데이터의 상관관계를 이해하기 위해 사용.
자기지도학습[편집 | 원본 편집]
지도학습이지만, 사람이 만든 레이블을 사용하지 않음. 사람이 개입하지 않는 지도학습. 경험적인 알고리즘을 사용하여 입력데이터로부터 레이블 생성.
오토인코더가 잘 알려진 도구. 수정하지 않은 원본을 입력한다.
강화학습[편집 | 원본 편집]
오랫동안 관심을 끌지 못했던 방법인데, 구글의 딥마인드가 게임플레이를 학습하는데 사용하며 많은 관심을 받기 시작했다. 알파고의 기반이 되었던 학습.
환경에 대한 정보를 받아 보상을 최대화 하는 행동을 선택하게끔 학습하는 형태.
성능측정방법[편집 | 원본 편집]
데이터를 훈련세트, 검증세트, 테스트세트로 나누어 사용한다. 검증세트와 테스트세트는 거의 유사하지만, 검증세트는 모델의 성능을 평가하며 층 수나 유닛 수를 설정하기 때문에 완전히 깨끗하게 검증을 위한 자료라 보기 어렵다.(하이퍼파라미터를 조정할 때마다 검증데이터에 대한 정보가 모델에 누설된다 본다.) 때문에 최후에 테스트세트를 두어 최대한 정확한 성능측정을 꾀한다.
단순 홀드아웃 검증(hold-out-validation)[편집 | 원본 편집]
데이터의 일정량을 테스트 세트로 분리.
데이터가 적을 땐 검증, 테스트세트의 샘플이 너무 적어 전체데이터를 통계적으로 대표한다고 보기 어렵다.
K-겹 교차검증[편집 | 원본 편집]
k는 숫자. 데이터를 k개로 분할, 각 분할모델에서 각자 평가,
셔플링을 사용한 반복 K-겹 교차검증[편집 | 원본 편집]