인공지능 용어에 대해서 설명해주세요?

인공지능 용어중에 교차 검증(cross validation)이 있다고 합니다.

용어에 대한 정의와 언제 사용하는 것인지? 어떤 의미를 담고 있는지 알려주세요!

    4개의 답변이 있어요!

    • A.I.(Artificial Intelligence)는 일반적으로 인간의 학습능력, 추론능력, 지각능력이 필요한 작업을 할 수 있도록  컴퓨터 시스템을 구현하려는  세부분야 중 하나입니다.. 인간을 포함한 동물이 갖고 있는 지능 즉, natural intelligence와는 다른 개념입니다..

      지능을 갖고 있는 기능을 갖춘 컴퓨터 스템이며, 인간의 지능을 기계 등에 인공적으로 시연(구현)한 것이다. 일반적으로 범용 컴퓨터에 적용한다고 가정합니다. 이 용어는 또한 그와 같은 지능을 만들 수 있는 방법론이나 실현 가능성 등을 연구하는 과학 기술 분야를 지칭하기도 합니다.

    • 안녕하세요. 김태경 과학전문가입니다.

      교차 검증이란 쉽게 말해 데이터를 여러 번 반복해서 나누고 여러 모델을 학습하여 성능을 평가하는 방법이다. 이렇게 하는 이유는 데이터를 학습용/평가용 데이터 세트로 여러 번 나눈 것의 평균적인 성능을 계산하면, 한 번 나누어서 학습하는 것에 비해 일반화된 성능을 얻을 수 있기 때문이다.

    • 안녕하세요. 류경범 과학전문가입니다.

      인공지능이 무엇인가 학습을 했다면 학습의 평가는 필수적이라 할 수 있습니다.

      인공지능 역시 사람처럼 배운 것들의 시험을 본다고 생각하면 편하실겁니다.

      그렇게 생각해보시면

      • 학습 데이터 - 배워야 할 것

      • 검증 데이터 - 모의고사(학습에는 활용되지 않습니다.) 

      • 시험 데이터 - 실제 시험 

      이렇게 보시면 됩니다.

      그런데 사람도 마찬가지이지만 동일한 문제지로 계속 모의고사를 보면 그 모의고사의 답을 외워버립니다.

      인공지능도 마찬가지입니다.

      그래서 다양한 형태의 모의고사가 준비됩니다. 이것이 교차검증입니다.

      교차검증에도 다양한 종류가 있다고 합니다.

      1. K-겹 교차 검증(K-fold cross validation)
        전체 데이터 셋을 K등분의 부분집합으로 분할하고, K-1개의 부분집합은 학습 데이터셋으로, 나머지 1개의 부분집합은 테스트 데이터셋을 할당한다. 교차 검증을 총 K번만큼 반복한다.

      2. Holdout 교차 검증
        전체 데이터셋을 학습 데이터셋과 테스트 데이터셋으로 나누고, 분리된 학습 데이터셋에서 다시 검증 데이터셋을 따로 떼어내어 교차 검증하는 방법이다. 교차 검증을 한 번만 진행하기에 계산 시간이 적은 것이 장점이다.

      3. Leave-one-out 교차 검증
        전체 N개의 샘플 데이터셋을 N-1개의 학습 데이터셋과 1개의 테스트 데이터셋으로 나누어, 총 N번만큼 교차 검증을 반복한다. 계산량이 많다는 단점이 존재한다.

      4. Leave-p-out 교차 검증
        전체 N개의 샘플 데이터셋을 N-p개의 학습 데이터셋과 p개의 테스트 데이터셋으로 나누어, 총 nCp번만큼 교차 검증을 반복한다. Leave-one-out 교차 검증 기법보다 더 계산량이 많기 때문에 교차 검증 반복 횟수를 늘리고자 할 때 사용한다.

      이렇게 다양한 종류로 진행이 된다고 합니다.

    • 안녕하세요. 송종민 과학전문가입니다.

      테스트 세트는 최종 모델을 선택할 때까지 사용하지 말아야 한다. 테스트 세트를 사용하지 않고 모델을 평가하려면 또 다른 세트가 필요한데, 이를 검증 세트라 한다. 검증 세트는 훈련 세트 중 일부를 다시 덜어 내어 만든다.


      ​


      검증 세트가 크지 않다면 데이터를 나눈 방식에 따라 검증 점수가 들쭉날쭉할 것이다. 훈련한 모델의 성능을 안정적으로 평가하기 위해 검증 세트를 한 번 나누어 모델을 평가하는 것에 그치지 않고 여러 번 반복할 수 있다. 이를 교차 검증이라고 한다.


      ​


      보통 훈련 세트를 5등분 혹은 10등분 한다. 나누어진 한 덩어리를 폴드라고 부르며 한 폴드씩 돌아가면서 검증 세트의 역할을 한다. 따라서 전체적으로 5개 혹은 10개의 모델을 만든다. 최종 검증 점수는 모든 폴드의 검증 점수를 평균하여 계산한다.


      ​


      교차 검증을 사용해 다양한 하이퍼파라미터를 탐색한다. 머신러닝 라이브러리에서는 클래스와 메서드의 매개변수를 바꾸어 모델을 훈련하고 평가해 보는 작업이다. 이때 테스트하고 싶은 매개변수 리스트를 만들어 이 과정을 자동화하는 그리드 서치를 사용하면 편리하다.


      ​


      매개변수 값이 수치형이고 특히 연속적인 실숫값이라면 싸이파이의 확률 분포 객체를 전달하여 특정 범위 내에서 지정된 횟수만큼 매개변수 후보 값을 샘플링하여 교차 검증을 시도할 수 있다. 이는 한정된 자원을 최대한 활용하여 효율적으로 하이퍼파라미터 공간을 탐색할 수 있는 아주 좋은 도구이다.