brunch

You can make anything
by writing

C.S.Lewis

by 코딩하는 수학쌤 Jul 12. 2021

25. 인공지능에서 사용하는 다양한 알고리즘

[4악장 - Cadenza] 머신러닝의 알고리즘과 수학


 먼저 큰 틀부터 한 번 정리해볼까요? 인공지능의 학습은 데이터의 특성과 사용 목적에 따라 크게 지도 학습과 비지도 학습으로 구분할 수 있다고 앞에서 설명했습니다.


머신러닝의 차이라면 데이터의 처리 규칙을 하나하나 정하지 않아도 된다는 점입니다. 머신러닝에는 데이터를 처리하기 위한 수많은 알고리즘이 개발이 되어있는데 각 알고리즘에는 통계 모델들이 사용됩니다. 여기서 통계모델이란 데이터와 이를 처리하기 위한 통계적인 방법을 설명해놓은 매뉴얼이라고 할 수 있습니다.


 예를 들어 데이터를 공장 한편에 쌓여있는 수많은 옷들이라고 해보겠습니다. 이 옷들은 사이즈, 반팔, 상하의, 스타일 등의 특성을 가지고 있습니다. 그리고 그 분류된 결과는 결괏값에 해당합니다. 우리의 목적은 다양한 옷들을 상의는 상의대로, 하의는 하의대로, 반 팔, 반 바지, 후드티 등 옷의 종류에 따라 따로 분류를 해야 합니다. 이 분류된 카테고리가 바로 결괏값 혹은 데이터의 레이블입니다.


 이런 옷들을 분류하는 방법은 사람마다 다를 수 있습니다. 옷이 분류되는 결과는 동일하겠지만 즉 일을 처리하는 방법들은 각자의 경험과 노하우에 영향을 받기 때문입니다. 때로는 크게 분류를 해놓고 처리를 하는 것이 좋을 수도 있고, 때로는 손에 잡히는 대로 구분하는 것이 좋을 수도 있죠. 때로는 경험이 쌓이면서 새로운 방법을 발견하기도 합니다. 예를 들어 상의의 옷감이 두꺼우면 만지는 순간 긴 팔 옷일 가능성이 높을 수 있습니다.


 마찬가지로 같은 데이터라고 하더라도 ‘원하는 결과가 분류인가, 예측인가?’에 따라 데이터를 다루는 방법이 달라집니다. 또한 데이터의 특성이나 데이터 전처리 과정, 사용하는 알고리즘에 따라 모델 성능의 결과가 다르게 나오기도 합니다. 아래의 표는 2019년 대한 임베디드 공학회 논문지(대한 임베디드공학회 논문지 제14권 제4호)에 실린 논문 텐서플로우 튜토리얼 방식의 머신러닝 신규 모델 개발 : 캐글 타이타닉 데이터 셋을 중심으로 (김동길 외)의 내용입니다. 이 논문에서는 캐글에서 공개한 타이타닉 생존자 데이터를 6가지 방법으로 전처리를 하여 6개의 머신러닝 튜토리얼을 바탕으로 다양한 알고리즘을 적용해서 각각의 모델의 성능을 비교한 결과를 아래와 같이 발표하였습니다.



 위의 결과는 분류를 위한 모델이 이렇게 다양하며, 각각의 모델마다 성능이 다를 수 있고, 데이터의 전처리 방법에 따라 성능이 차이가 난다는 것을 잘 보여주고 있습니다. 다만 여기서 가장 좋은 성능을 보인 모델과 데이터 처리 방법이 다른 데이터에도 동일하게 가장 좋은 성능을 낸다는 것을 보장하는 것은 아닙니다. 이를 인공지능에서는 ‘No free lunch theorem’이라고 부르는데 공짜 점심은 없다는 뜻이죠. 즉 인공지능에서는 모든 문제에 적용할 수 있는 무적의 특정한 알고리즘은 없다는 의미입니다.


 이 논문에서 분류를 위한 알고리즘만 해도 여러 개 존재하는 것처럼 머신러닝에는 수많은 알고리즘이 존재합니다. 지금까지 개발된 머신러닝 알고리즘만 해도 수백 가지가 넘으며 지금도 계속 새로운 알고리즘을 찾고자 연구가 계속되고 있습니다.


다음 글에서는 대표적이고 분류가 직관적인 결정 트리 알고리즘에 대해 좀 더 살펴보도록 하겠습니다.

매거진의 이전글 24. 전처리와 통계-2, 필수 대학 수학 기초 3과목
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari