마마 카지노

[유동우의 경제옹알이(34·끝)]ChatGPT로 YOLO하기

컴퓨터 비전분야에서의 ‘YOLO’ You Only Look Once의 약자로 동영상 보고 내용을 분석·결정 정확도 만큼 빠른 판단 요구돼 사람과 사물 인식, 거리 측정까지 자율주행 등 활용 범위 무궁무진

2023-12-15     경상일보
▲ 유동우 울산대학교 경제학과 교수

YOLO는 You Only Live Once의 줄임말이다. 이 말은 다양한 의미로 해석될 수 있다. 한국에서는 주로 “인생 한 번만 사니 즐기자”는 뜻으로 사용된다. 미국에서는 부정적인 의미가 강해, “인생 한 번 사는데 (사고를 쳤어도) 뭐 어때”라는 자기합리화에 가깝다. 인생을 소중하게 여기라는 긍정적 표현은 You only have one life와 같은 방식이 더 적합하다.

컴퓨터 비전 분야에서 YOLO는 You Only Look Once의 약자다. 실시간 동영상에서는 상황을 빨리 판단해야 한다. 따라서 한 번 보고 동영상에서 나오는 내용을 분석해야 한다. 바다에서 사람이 수영을 하고 있는지, 물에 빠져 어려움을 겪고 있는지를 구분하는 인공지능 알고리즘은 정확도만큼 빠르게 판단하는 것도 중요하다. 그래서 한 번 보고 결정을 내려야 한다.

2023년 2학기 학생들에게 인공지능과 관련된 다양한 파이썬 코드를 소개해주었다. 그 중 학생들이 비교적 많은 관심을 보인 분야는 데이터 3차원 시각화, API를 통해 통계청에서 데이터를 가져오고, 다양한 데이터를 합치는 빅데이터 생성과정, 그리고 동영상에 나오는 정보를 처리하는 YOLO였다. 데이터분석에 익숙한 나에게 3차원 시각화와 빅데이터 생성은 비교적 익숙했지만, 동영상 정보를 처리하는 YOLO는 새로운 분야였다.

YOLO를 시작한 것은 중소기업의 의견 때문이었다. 중소기업의 어려운 점을 울산경제자유구역청과 함께 해결해주는 프로젝트를 하고 있다. 중소기업을 방문해 관계자의 이야기를 들어보면 기업들은 인공지능에 관심이 많았다. 중소기업들은 회사를 소개할 때, 사업분야에서 인공지능을 활용한다는 점을 대부분 홍보하고 있었다. 내가 학생들에게 인공지능을 강의하고 있다고 하자, 중소기업의 관계자가 YOLO를 잘하는 것이 중요하다는 개인적 의견을 강하게 피력했다. 그래서 YOLO를 배우고, 파이썬 코드를 만들었다.

ChatGPT는 YOLO도 잘 했다. 사진으로 기초적 YOLO를 하고, 동영상으로 진행했다. 사진과 동영상에서 사람과 자동차 등을 구분해 낼 수 있게 되었다. 그 다음으로는 동영상 정보의 사후적 처리를 진행했다. 동영상에서 사람과 자동차가 나오는 부분을 사진으로 추출해 냈고, 추출해낸 사진의 위치와 크기를 엑셀 파일 형태로 정리했다. 그리고 사람과 자동차가 동시에 있는 부분이 나오면 “자동차가 있으니 조심하라”는 경고문을 표시하도록 했다.

그리고 컴퓨터 비전을 전공하신 교수께 가르침을 청했다. 감사하게도 흔쾌히 많은 것을 알려주시고 참고자료를 소개해 주셨다. 예를 들어, 사람과 자동차를 인식한 이후에는 사람과 자동차의 거리를 측정하는 단계로 넘어갈 수 있다고 했다. 그리고 자동차의 속도를 고려해서, 사람과 자동차가 충돌할 위험이 있으면, 자동차의 속도를 줄여야 한다고 했다. 그리고 컴퓨터는 작은 물체를 멀리 있다고 인식하게 되는데, 아이의 경우 어른 보다 작기 때문에, 거리 측정 방식을 다르게 해야 한다고 했다. 그리고 공학의 경우 YOLO로 측정한 거리와 실제 거리가 얼마나 일치하는 지를 실험을 통해 판단하는 것도 중요하다고 했다.

우선 강의에 주로 사용하는 동영상에서 자동차와 사람의 거리측정을 할 수 있게 해달라고 ChatGPT에게 요청했다. 그러자 ChatGPT는 사진처럼 자동차와 사람의 거리를 측정해주는 파이썬 코드를 만들어 주었다. 사진에서 보면 아이 두 명이 person으로, 그리고 자동차 두 대가 car로 인식되어 있다. 그리고 사람과 가장 가까이 있는 자동차와의 거리를 파란색 선으로 표시하고 측정해 준다.

물론 매우 기초적인 알고리즘이다. 정확도를 높이기 위해 개선해야할 부분이 끝도 없이 많다. 또한, 아이들이 오픈카에 탑승하고 있는 상황이라 아이들의 위치와 크기가 고정되어 편하다. 그리고 뒤로 보이는 자동차의 폭이 일정하다는 점을 쉽게 이용하여 거리를 측정한다. 하지만 실험을 통해 알고리즘으로 계산된 거리와 실제 거리의 차이를 측정하고 정확도를 개선하는 것은 이 영상에서는 불가능하다.

그래도 학생들에게 인공지능 학습동기를 불러일으키는 것에는 아무 문제가 없다. 실제로 몇몇 학생들이 이제는 내가 권유하지 않아도, 경제학과 대학원 과정에 지원하기 시작했다. 그러면 이제는 내가 강의하는 통계학이, 인공지능에 그리고 공학에 대략적으로나마 어떻게 적용될 수 있는지를, 좀 더 구체성을 가지고 설명하는 방법을, 전문가의 도움을 얻고, ChatGPT에게 물어보며, 배우고 가르치면 된다. 꼭 자율주행이 아니어도 된다. 동영상이 사용되는 분야는 무척이나 넓다.

유동우 울산대학교 경제학과 교수