인공지능 윤리 > Chapter 1. 인공지능의 신뢰성

[실습하기(2)] 인공지능의 정확도 높이기



길을 걷다 보면 보이는 수많은 간판 중에는 가끔 조금 특이한 글씨체로 적혀 있거나 혹은 글자가 기울어져 적혀있는 경우가 있습니다. 우리는 조금 기울어진 형태여도 그 간판을 보고 어떤 글자인지 쉽게 구분할 수 있습니다. 우리가 만든 미음과 비읍을 구분하는 인공지능도 그럴까요? 활동을 통해 직접 확인해봅시다.

1. 새로운 데이터로 정확도 다시 측정하기

새로운 테스트 데이터를 이용해 우리가 만든 인공지능 모델의 정확도를 평가해봅시다. 테스트 데이터는 ‘미음 비읍 분류 모델 – 테스트 데이터 2’의 데이터를 사용하면 됩니다.

◆ ‘테스트 데이터 셋 1’과 비교했을 때 '테스트 데이터 셋 2'는 데이터에 어떠한 차이가 있나요?

◆ 정확도는 몇 %가 나왔나요?

◆ 왜 이러한 결과가 발생하였을까요?

◆ 이러한 문제를 해결하기 위한 방안을 생각해 봅시다.

두 번째 테스트 데이터는 이전의 테스트 데이터 세트를 회전하거나 약간 변형한 데이터들로 이루어져 있습니다. 분명 우리 눈에는 비읍으로 보이는데 인공지능 모델은 제대로 인식하지 못하는 모습을 보여줍니다. 데이터 기반 인공지능 모델은 과거의 데이터를 통하여 학습하기 때문에 새로운 상황에서 조금이라도 생소한 데이터를 만나면 정확도가 많이 떨어질 수 있습니다.

예를 들어, 손글씨를 인식하는 인공지능을 개발한다고 생각해봅시다. 손글씨가 항상 바른 방향으로만 되어있다면 좋겠지만 어떤 사람은 글씨를 많이 기울여서 쓰거나 혹은 남들과는 사뭇 다른 방식으로 글씨를 쓰는 사람들도 있을 것입니다. 이렇게 다양한 상황에서도 항상 높은 정확도를 보여주기 위해서는 학습 데이터를 잘 구성하는 것이 중요합니다. 

2. 데이터 확장을 통해 정확도 향상하기

이번에는 우리의 인공지능 모델이 기울여진 글씨도 잘 인식할 수 있도록 파워포인트를 이용하여 학습데이터를 조금 변형해봅시다. 그리고 인공지능 모델을 다시 한번 학습 시켜 정확도가 어떻게 변하는지 확인해 보도록 하겠습니다. (*본 활동은 직접 빈 종이에 다양한 형태 및 각도의 ‘ㅂ(비읍)’을 그려 웹 카메라를 이용하여 학습시키는 활동으로 대체해도 무방합니다.) 

 

1. 파워포인트를 실행하세요. (파워포인트가 없다면 그림판 등 다른 사용 가능한 이미지 편집 프로그램을 사용해도 됩니다.)

 

 

 2. 삽입에서 그림을 클릭한 후 변형할 학습 데이터를 선택해주세요. 학습 데이터는 ‘미음 비읍 분류 모델 – 학습 데이터’를 사용하면 됩니다.

 

 

3. 학습 데이터 이미지를 클릭하고 위의 회전 모양 버튼을 클릭하여 원하는 만큼 회전시켜 보세요.


 

4. 새롭게 만든 데이터 셋을 선택한 뒤, 마우스 오른쪽 버튼을 클릭합니다. ‘그림으로 저장’을 클릭하여 png, jpeg 등의 형식으로 저장합니다. 같은 방법으로 몇 개의 학습 데이터를 더 변형한 뒤 다른 이름으로 저장합니다.

 

5. 새롭게 만든 학습 데이터를 이용하여 인공지능 모델을 다시 학습시켜 보고 정확도를 측정해 봅시다.







 

◆ 새로운 인공지능 모델의 정확도(%)는 얼마인가요?

◆ 회전 이외에 어떤 방법으로 학습 데이터를 변형할 수 있을까요?

◆ 인공지능 모델을 학습 시킬 때 학습 데이터를 어떻게 구성해야 할지 생각해 봅시다.

[참고자료] - 데이터 확장(Data Augmentation)

데이터 확장(Data Augmentation)은 적은 양의 데이터를 이용하여 효과적으로 기계학습 모델을 만들고자 할 때 사용되는 방법의 하나입니다. 인위적으로 학습 데이터를 재생성하여 학습 데이터의 수를 늘려 사용하는 방법으로, 이미지 데이터의 경우 이미지의 크기 조절, 이미지 반전, 이미지 자르기, 회전 등 기하학적인 변환을 이용할 수 있습니다. 혹은 GAN(Generative Adversarial Network, 생성적 적대 신경망)을 이용해 비슷한 이미지를 생성하여 학습 데이터의 수를 늘리는 것도 데이터 확장의 한 방법입니다.