Interview 딥러닝 알고리즘 개발자가 되는 방법

👩‍🚀 안녕하세요! 본인과 팀 소개 부탁 드려요!


권용혜: 
콘텐츠 사업부 지능화R&D팀에서 딥러닝 알고리즘 개발을 담당하고 있는 권용혜입니다. 콘텐츠 사업부는 ‘지능형 선별관제’라고 부르는 인공지능을 개발하고 있는데요.

 

CCTV를 똑똑하게 만들어서 사건, 사고, 재난을 예방하고 빠르게 대응할 수 있게 하는 기술이에요.  CCTV영상에서 특정 상황이나 물체, 특정 행위가 발생했을 때만 ‘선별’해서 관제센터에 알려주는 걸 ‘지능형 선별관제’라고 해요. 예를들어 길을 걸어가던 ‘사람이 갑자기 쓰러졌을 때’ 119에 바로 알려서 구급대원이 빠르게 출동할 수 있게 하는 식이에요. 저는 팀에서 인공지능을 더 똑똑하게 만드는 일을 주로 하고 있어요.

알고리즘 개발을 담당하고 있는데요. 컴퓨터가 이미지를 보고 특정 개체나 특정 행위를 정확하게 검출 하도록 모델을 설계하는 역할이요.

인공지능이 영상에서 고양이를 보면 “고양이!”, 강아지를 보면 “강아지!” 라고 해야 하는데, 한번씩 고양이를 보고 “강아지”라고 하면 잘못 검출한 상황이잖아요. 이럴 때 인공지능이 왜 잘못 판단했는지 살펴보고 헷갈렸을 만한 특징을 바로 잡아주는 일이라고 하면 이해가 쉬우실 거에요.

 
👩‍🚀 인공지능 분야 취업을 희망하는 분들이 많은데요. 어떤 것부터 시작하면 좋을지,
준비 과정 팁이 있을까요?

 

권용혜: 각자 처한 상황이나 수준이 다를테니까 제가 어떻게 준비했는지를 말씀드려 볼게요.
딥러닝 공부를 할 때 처음에는 전체적인 개념을 파악하려고 유튜브에서 딥러닝 강의를 하나 정해서 처음부터 끝까지 봤어요.
(유명한 교수님들이 올려주신 좋은 강의 영상들이 많아요!)

 

한번 보고 완벽히 이해하는 건 불가능하기 때문에 ‘어떤 내용들이 나오고, 어떤 것들을 공부하겠구나’ 훑어보는 수준으로 접근했어요. 이렇게 강의를 다 보고나면 딥러닝 이론에 대한 맥락이 잡히는데, 감이 어느정도 왔을 때부터는 관심분야 논문을 찾아봤어요. 딥러닝에도 분야가 많거든요. 객체 검출, 이미지 분류, 자연어 처리 이런식으로 분야가 나뉘는데, 저는 ‘객체 검출‘쪽이 재미있어 보였어요.

 

논문을 읽다보면 그 논문이 나오기 이전에 어떤 연구들이 진행됐는지를 파악할 수 있어요. 과거 연구들을 거슬러 가다보면 자연스럽게 공부가 되고 차츰 익숙해지더라고요. 연구자들이 수많은 시간을 써서 정리한 내용들이기 때문에 삽질도 줄일 수 있고요.(웃음)

 

대회나 공모전은 꼭 참가해보시라고 말씀드리고 싶어요.

대회, 공모전에 나가서 시행착오 겪으면서 얻은 노하우들이 회사에서 도움이 많이 되더라고요. 공부 하다보면 기존에 만들어진 걸 가져다 쓰는 걸 주로 하게 돼요.

 

가져다 쓰기만 해서는 잘 안되고, 하고 있는 주제에 잘 맞게끔 일련의 노력을 하게 되는데, 연구(연습)용 데이터셋만 가지고 하는거랑 실제 세상에서 사용되는 데이터들을 처리하는 과정에서 터득하게 되는 노하우 수준이 달라요.

 

적절한 비유는 아닐 수 있지만, 요리하기 좋게 다듬어진 실습용 재료들을 가지고 조리법 대로 요리 해보던거랑 요리 대회에 나가서 제철 재료들을 가지고 손님들 주문을 받아서 요리해보는 차이랄까요.

딥러닝 알고리즘 개발자가 되는 방법
딥러닝 알고리즘 개발자 권용혜 님
👩‍🚀 논문이랑 대회, 공모전은 어디서 찾아볼 수 있나요?

 

권용혜: 논문은 주로 구글링 해서 찾았어요. 저같은 경우에는 객체 검출에 쓰인 알고리즘을 구글에 검색하고, 검색 결과 중에서 대표 논문들 소개한 글들을 보고 참고했어요.

공모전이랑 대회는 유명한 딥러닝 커뮤니티에 올라오는 걸 보고 지원했고요. 저는 페이스북 텐서플로우 코리아 라는 커뮤니티에 올라온걸 보고 여러개 지원했었고, 네이버에서 주최한 AI RUSH 라는 AI 모델링 챌린지가 좋았어요.

👉 용혜님이 직접 작성한 2020 NAVER AI RUSH 후기 보러가기 👀

 
👩‍🚀프로그래밍, 수학, 통계 공부도 해야하고 꾸준히 공부를 많이 해야한다고 하던데,
석사도 꼭 해야 하나요?

 

권용혜: 먼저, 참고로 말씀드리자면 저는 컴퓨터공학 전공으로 석사까지 했어요.

학위논문은 객체 검출 분야로 했고요. 대학원이라는 곳이 특정 분야를 깊게 공부 하려고, 작정하고 몇년동안 다니는 곳이니까 당연히 공부를 많이 할 수 밖에 없었어요.

 

논문을 찾아보면서 공부하는 습관도 대학원에서 갖게 됐고요. 하지만 ‘석사를 꼭 해야하는가’에 대한 대답을 제가 확실히 못해드릴 것 같아요. 아무래도 관련 경험이 하나도 없어서 취업이 어려운건 학사/석사 문제는 아니니까요.

 

만약에 딥러닝 입문 단계라면 대학원을 꼭 갈 필요는 없다고 생각해요.
질문을 바꿔서 ‘함께 일할 동료가 꼭 석사여야 하는가?’로 생각해보면 전 차라리 대회, 공모전에 많이 나가본 사람이 더 좋아요. 공모전을 많이 참가하면서 실제 필드에 있는 데이터로 경험을 쌓고, 논문에 공개한 소스코드, 알고리즘을 구현해본 사람이라면 더 좋고요.

‘딥러닝으로 어떤 문제를 풀어 봤는지’, ‘문제를 풀 때 어떤 식으로 접근해 봤는지’가 더 중요하다고 생각해요. 설명하기 어려운 복잡한 모델링이나 알고리즘을 엄청 공부한 사람 보다는 
사회에서 겪는 다양한 문제를 딥러닝으로 많이 풀어본 분이 더 매력적으로 다가오는것 같아요.

제가 생각하는 딥러닝 알고리즘 개발자는 현실세계에 있는 문제들을 잘 분석하고, 그 문제를 처리하기 위한 과정들을 정의하고, 데이터를 어떻게 구축하고, 모델이 데이터들을 가지고 어떻게 할 수 있게 만드는 지를 설계할 수 있는 사람이거든요.

딥러닝이 처음부터 프로그래밍, 수학, 통계 전부 다 깊이 알아야만 할 수 있는 건 아니라고 생각해요. 텐서플로, 파이토치 같은 머신러닝 프레임워크를 사용해서 일단 해보는 게 먼저에요.

하다가 막히거나 어려운 부분은 논문 찾아서 공부 하다보면, 스스로 발전시켜야 할 순간이 와요 그 때 수학이랑 통계지식이 필요하더라고요. 프레임워크를 능숙히 다루려면 많이 해봐야하고, 기술이 워낙 빠르게 발전하고 바뀌어서 꾸준히 공부를 해야하는건 필수에요.
(이건 적성에 맞아야 하는 부분 같아요)

 

 

👩‍🚀 신입 딥러닝 개발자 생활은 어떤가요?

권용혜: 내가 성장하고 있구나를 많이 느끼고 있어요.
참여하고 있던 프로젝트에 발생한 문제를 며칠 동안 고민하고 논문 찾아가면서 해결하면 재미있어요. 기존 개발된 딥러닝 알고리즘을 가져와서 우리 서비스에 적용해서 튜닝 하면서 차츰 성능을 높이는 과정도 희열 있고요.

이런 실전 경험들이 확실히 누적되더라고요. 
협업이 중요하다는 것도 경험하고 있어요.
대학원에서 연구할 때는 알고리즘이 얼마나 유효한 지에 대해서 검증을 굉장히 까다롭게 했었어요. 알고리즘 성능이 잘나오는 것만 신경 쓰면 됐거든요.

회사에서는 알고리즘 성능만 잘나온다고 되는 게 아니더라고요. 그렇게 만들기 힘들기도 하고…(웃음)

‘서비스’라는 게 하나만 잘한다고 되는 게 아니라서 하드웨어, 사용자 화면, 백엔드, 알고리즘 등등 여러가지 요소들이랑 조화로워야 한다는 걸 항상 염두 하게 됐어요. 
힘든 점은 다양한 CCTV 영상에 높은 성능 알고리즘을 만드는 게 생각보다 어려워요. 신경써야 할 게 엄청 많거든요.

CCTV가 설치된 위치도 다양하고, 각도도 다르고, 밝기도 다르고요. 예를 들면 실외에 설치된 CCTV 카메라에서는 해, 구름이 움직이면 하루에도 몇 번씩 밝기가 변하면서 보이던 게 안보이기도 해요.

비가 와서 우산을 쓰거나, 눈에 덮이는 상황까지 모두 감안해야 해요. 마네킹이랑 사람도 구분해야 하고… 사람은 이미 어느 정도 다 감안하고 금방 판단하지만, 딥러닝 모델에서는 개별 상황(case)에 대한 학습을 미리 시켜두지 않으면 전혀 엉뚱한 결과가 나와서 황당할 때도 있어요
인공지능이 제주도 돌하르방을 사람이라고 검출한 적도 있었어요.(웃음)

 
👩‍🚀 일 하는 동안 기억에 남는 경험이 있으신가요?

권용혜: 마크애니 지능형 선별관제가 들어가 있는 제주도 CCTV통합관제센터 소식이 KBS 뉴스에 소개 된 적이 있어요. 취객을 상대로 가방을 훔쳐가던 사람을 CCTV카메라가 실시간으로 감시해서 10분 만에 현장 검거했다는 뉴스였어요.

CCTV 인공지능이 절도 움직임을 감지하고, 관제센터 직원은 112에 신고해서 경찰이 바로 출동해서 잡아낸거죠. 처음에 설명 드린 지능형 선별관제 실제 상황이었어요. 

팀에서 만든 알고리즘으로 진짜 도둑을 잡아냈다는 게 새삼 신기했어요. 내가 개발한 알고리즘이 실생활에 쓰이고, 사회가 더 나아지게 만드는데 기여하고 있다는 걸 눈으로 확인할 수 있는 건, 정말 형언할 수 없는 뿌듯함이랑 동기부여가 돼요.

CCTV영상
CCTV에 포착된 취객 가방을 훔치는 장면. 마크애니 지능형 선별관제가 잡아내다. (제공: 제주도)
👩‍🚀 주변 사람들에게 자랑 할만한 마크애니 좋은 점이 있을까요?

 

권용혜: 일상생활에 밀접하게 닿아 있는 서비스 개발에 기여할 수 있다는 점 아닐까요.
최근에는 서울 지하철 1,4호선 일부 역(station)에 부정 승차 적발, 마스크 미착용, 행인 쓰러짐, 시각장애인, 휠체어 탑승자를 검출하는 프로젝트에 참여하고 있는데, 내가 만든 알고리즘이 하루에도 몇 만 명이 다니는 곳에 쓰인다는 게 자랑스럽고 책임감도 느껴요.

동료들도 좋고 개발팀 문화도 좋아요. 새로운 알고리즘을 개발한다든가 기존 알고리즘을 수정 해야 할 일이 있을때 토의을 수평적으로 해요. 자유롭게 의견을 말하고 서로 끝까지 잘 들어줘요.

제가 참여하고 있다고 말씀드린 서울 지하철 1,4호선 서비스 개발 초기에 이미 서비스 배포에 쓰인 기존 시스템(라이브러리)이 있었는데, 성능 문제를 발견해서 다른 라이브러리로 바꾸는 게 어떻겠냐고 제안해서, 교체했어요.

기존에 있던 걸 완전 대체하는 것이었는데도 불구하고 열린 자세로 검토하고, 전적으로 맡겨주셔서, 성공적으로 구현까지 할 수 있었어요. 코드 리뷰 분위기도 좋아요.

모든 파트원들이 각자 짠 코드를 리뷰하고 업데이트 하는 식으로 해요. 코드 리뷰를 하다보니까 각자 방식으로 어렵게 짜여진 코드들이 많이 사라지기 시작했고, 상향 평준화되고 있는 느낌이에요. 다른 사람들 코드를 수정해야 할 일이 있을 때도 어느 정도 서로 코드에 대해서 인지하고 있기 때문에 담당자가 없을 때도 처리하기 수월하고요.

매달 개발자들이 지식을 전수해주는 지식 공유 세미나도 꾸준히 갖고 있고요. 자신이 맡고 있는 프로젝트에 어떤 기술을 적용했는지 발표하면서 노하우도 같이 알려줘요.

라이브러리 사용법에 대해서 알려주는 세미나가 되기도 하는데, 할 때 마다 다같이 더 잘하고 싶다는 생각이 생겨요.

 
👩‍🚀 앞으로 콘텐츠 사업부에서 개인적인 목표가 있으신가요?

 

권용혜: 딥러닝 모델을 경량화 하는 알고리즘을 개발해보고 싶어요. 딥러닝 서비스를 개발하고 배포하려면 서버가 필요한데 서버 비용이 만만치 않아요. 딥러닝 솔루션을 개발하는 모든 회사들이 겪고 있는 문제일거라 생각하는데요. 적당한(?) 서버에서도 잘 돌아갈 수 있는 경량화 알고리즘을 개발해보고 싶은 욕심이 있어요.

👩‍🚀마지막 질문입니다. 마크애니에서 함께 할 예비 동료에게 한마디 부탁 드려요!

 

권용혜: 정말 많은 곳에서 마크애니 지능형 선별관제를 사용하고 있어요.
이름만 들어도 아는 기업, 정부기관, 공공기관들에서 크고 작은 프로젝트 의뢰가 들어오고요.
단순히 딥러닝 성능이 좋아졌네 나빠졌네 숫자만 보던 때랑은 비교도 할수없는 보람을 느낄 수 있어요. 공모전, 대학원 연구 수준 개발을 넘어서 상용화에 필요한 실전 개발 기술들을 전반적으로 다 배 울 수 있는 것도 좋아요.

내가 만든 딥러닝 기술이 실제 상용 서비스에 적용되길 원한다면 마크애니를 강력하게 추천해요. CCTV영상이라는 굉장히 변수가 많은 영상 연구와 고난도 기술 개발을 하면서 재미를 느낄 수 있을 거에요.

관련기사 더보기

日 킨키대학, 마크애니 기업탐방 프로그램 진행
Healthcare Security Symposium 2023 마크애니 현장스케치
지식 블로그 리스트 보기