드라마 속 개발 이모저모

드라마 속 개발 이모저모

#Python #Numpy #AI #VSCode #해커톤 #GAN 

개발자라고 하면 어떤 모습이 가장 먼저 떠오르시나요? 영화 속 천재 해커처럼 어쩐지 괴짜 같은 모습? 하루종일 컴퓨터 앞에 앉아 복잡한 코드와 씨름하는 모습? 개발자라고 하면 막연하게 선입견을 가진 분들이 적지 않죠. 영화나 드라마 속 개발자는 흔히 ‘긱(Geek)’이나 ‘너드(Nerd)’처럼 그려지거나, 타이핑 몇 번으로 정부나 기업을 좌지우지하는 무시무시한 존재로 여겨지곤 하니까요. 하지만 정말 그럴까요?

최근 tvN 토일드라마 〈스타트업〉(2020)이 인기를 끌고 있어요. 그동안 한국 드라마에서 개발자를 깊이있게 묘사한 적이 드문데 이렇게 나와서 반갑다는 의견부터, ‘구구단 코딩’* 같은 장면만 있는 건 아니냐는 우려섞인 목소리까지 다양한 반응이 터져나오고 있습니다. 그만큼 IT 업계에 몸담은 많은 분들이 기대 반 두려움 반으로 지켜보고 있는데요. 이번 〈주간 인프런〉 #18에서는 드라마 〈스타트업〉 속에 등장하는 개발 풍경은 어떤지, 어떤 기술이 다뤄지고 있는지를 살펴봅니다.  

#전설은_아니고_레전드 😮 구구단 코딩

구구단 코딩 이미지

〈앙큼한 돌싱녀〉 속, 충격의 구구단 코딩 장면 ©MBC

MBC에서 2014년에 방영한 드라마 〈앙큼한 돌싱녀〉에서는 프로그래머인 남자 주인공(주상욱 분)이 서비스를 복구하는 장면이 등장합니다. 하지만 정작 화면에 비춰진 모습은 자바(Java)로 이루어진 구구단 출력 코드였죠. 클래스 이름마저 정직한 GuguClass라니, 개발자들 사이에서는 몇 년이 지난 지금까지도 종종 언급되는 명장면(!)이랍니다.

 

인공지능, 대세는 파이썬(Python)! 이미지 인식도 자신있어요.

파이썬 코드 화면

〈스타트업〉에는 종종 파이썬으로 쓰인 코드가 등장합니다. 실제로도 많은 개발자들이 사용하는 IDE(통합 개발 환경)인 비주얼 스튜디오 코드(Visual Studio Code)에서 텍스트 편집이 이루어지고 있네요. 화면 속 코드는 파이썬 선형대수 라이브러리인 넘파이(NumPy) 관련 코드로 보이고요. ©tvN

파이썬(Python)은 쉽고 간결한 문법, 그리고 다양한 프레임워크와 라이브러리를 활용한 높은 확장성으로 널리 사랑받는 프로그래밍 언어입니다. 웹 개발부터 사물인터넷(IoT), 통계 및 데이터 분석, 게임 개발 등에 이르기까지 수많은 분야의 개발 언어로 쓰이죠. 특히 딥러닝/머신러닝 등 인공지능 분야에서는 선두를 달리고 있다고 해도 과언이 아니에요.

이미지 인식 화면

도산이 만든 이미지 인식 프로그램은 아버지의 모습을 변기(Toilet)로 잘못 인식해버리고 말아요. 딥러닝은 반복 학습을 통해 이런 오류가 발생할 확률을 최소화하고 최적의 가중치를 찾아내는 걸 목표로 하죠! ©tvN

〈스타트업〉 2화에서 스타트업 삼산텍을 이끄는 개발자 남도산(남주혁 분)은 자신의 아버지(남성환 분)에게 인공지능에 대해 설명하면서 자신이 짠 이미지 인식 프로그램을 선보입니다. 이미지 인식은 인공지능 분야에서도 특히 각광받고 있는 컴퓨터 비전(Computer Vision)의 핵심 기술이죠. 구글과 페이스북이 선보인 텐서플로(TensorFlow) 그리고 파이토치(PyTorch)부터, 케라스(Keras), 오픈CV(OpenCV) 등 파이썬을 지원하는 딥러닝 관련 다양한 프레임워크/라이브러리가 널리 공개되어 있어요.

자바스크립트 코드 화면 코발트 스트라이크(Cobalt Strike)

물론 〈스타트업〉엔 파이썬 코드나 인공지능 관련 기술만 등장하지는 않아요. 자바스크립트 코드가 스쳐지나가기도 하고, 보안 취약점을 확인하기 위해 침투 테스팅을 진행하는 툴인 코발트 스트라이크(Cobalt Strike)도 모습을 비춥니다. (그밖에 온갖 기술을 찾아내는 재미가 쏠쏠!) ©tvN

‘삼산텍과 한지평의 목적함수가 같다’?

도산의 GAN - 삼산텍 - 한지평 비유 장면

도산은 용산과 철산에게 삼산텍과 한지평(김선호 분) 팀장의 관계를 GAN 도식으로 빗대 설명해요. 달미(배수지 분)를 실망시키지 않기 위해 삼산텍을 성공을 바란다는 목적이 같으니까 성과가 좋을 거란 뜻에서 한 말이지만, 사실 정확한 비유는 아니랍니다. ©tvN

도산은 삼산텍 동료인 용산과 철산에게 SH벤처캐피탈 팀장 한지평이 자신들에게 가장 좋은 투자자가 될 거라고 주장하면서, “한지평씨는 우리랑 목적함수가 같다”고 합니다. ‘투자자와 삼산텍을 두 신경망이라고 볼 때, 목적함수가 같으면 어떻겠냐’는 도산의 질문에 용산과 철산은 하나의 손실함수 텀만 쓰면 되니 수렴이 잘 될 거란 말을 덧붙이죠. 이때 도산의 뒤에 있는 화이트보드에는 Generator와 Discriminator로 구성된 GAN(Generative Adversarial Network, 생성적 적대 신경망) 도식이 그려져 있어요. 

GAN은 인공지능 알고리즘의 한 종류로, 주어진 데이터 속에서 일일이 정답과 오답을 지정하지 않아도 경쟁 과정을 통해 스스로 데이터를 학습하는 ‘비지도 학습’ 알고리즘이에요. AI로 만들어낸 허구의 인물 사진을 본 적이 있나요? GAN은 실제 이미지를 기반으로 데이터를 스스로 학습해내는 이미지 생성, 영상 합성, 텍스트 생성 분야에 주로 활용되는 딥러닝 기술이랍니다.

틱톡(TikTok) 필터 홍보 이미지

bryandlee, 침착한 생성모델 학습기

사람 얼굴을 일본 애니메이션(アニメ) 풍으로 바꿔주는 틱톡(TikTok)의 만화 필터 ©TikTok, 웹툰 작가 이말년의 그림체로 그려내는 깃허브 유저 ‘bryandlee’의 ‘침착한 생성모델 학습기(Face2Malnyun, malnyun_faces)’ ©bryandlee 가 모두 GAN을 활용한 기술이에요. 

다만, GAN은 ‘생성적 적대(경쟁) 신경망’이라는 이름처럼 생성자와 식별자가 서로 대립하는 관계로 경쟁(Adversarial)하면서 서로의 성능을 개선해나가며 데이터를 생성해내는 모델이므로, ‘하나의 손실함수 텀만 쓴다’는 건 사실이지만 ‘서로 같은 목표를 바라보고 있다’는 설명에는 비약이 있어요. 오히려 경쟁 관계이니 그 반대에 가까우니까요. 인공지능을 공부하는 분들이 이 장면을 과연 어떻게 바라봤을지 궁금하네요!

드라마 속 대회가 현실에도? 이미지 인식 대회 & 해커톤

CODA가 주최한 대회 정보를 확인하는 삼산텍 팀원들 CODA가 주최한 대회 정보를 확인하는 삼산텍 팀원들

극중 CODA에서 주최한 대회 이름은 ‘Large Scale Visual Recognition Competition(LSVRC)’으로, 실제로 개최되고 있는 이미지넷 이미지 인식 대회(‘ILSVRC’)와 이름도, 내용도 닮아 있어요. ©tvN

창립 이래 오랫동안 이렇다할 성과를 내지 못한 채 위기에 빠져 있었던 삼산텍은 CODA(코다)라는 인공지능 협회가 주최한 국제 이미지 인식 대회에서 우승하면서 처음으로 투자자들의 관심을 받게 되죠. 드라마 속 CODA라는 단체가 실존하지는 않지만, 비슷한 대회는 있습니다. 컴퓨터가 이미지를 인식할 수 있도록 방대한 이미지 데이터베이스를 학습시키는 ‘이미지넷 프로젝트(ImageNet Project)’의 일환으로 주최된 ‘이미지넷 이미지 인식 대회(ILSVRC, ImageNet Large Scale Visual Recognition Competition)’죠. 전세계 기업 및 팀이 이미지 인식률 개선을 놓고 겨룸으로써 오늘날 딥러닝 기술이 비약적으로 발전하는 토대를 마련한 대회입니다.

해커톤에 참가한 삼산텍 팀원들

짧게는 몇 시간에서 길게는 몇 박 몇 일까지, 주어진 시간 내에 프로젝트를 완수해야 하는 해커톤에서는 핑거 푸드, 에너지 드링크 등 각종 다과나 식사를 제공하곤 해요. ©tvN

한편, 달미&인재(강한나 분) 자매는 초기 스타트업의 성장을 돕는 엑셀러레이팅 센터인 ‘샌드박스’ 입주를 놓고 해커톤(Hackathon)으로 맞붙게 되죠. 해킹(Hacking)과 마라톤(Marathon)을 합친 이름인 해커톤은 프로그래머, 디자이너, 프로젝트 오너/프로젝트 매니저(PO/PM) 등이 모여 제한된 시간 내에 주제에 맞게 서비스를 개발하고 승부를 겨루는 일종의 공모전이에요. 드라마에서는 달미가 PO, 삼산텍의 세 멤버가 개발자, 달미가 무릎을 꿇고 마지막 팀원으로 영입해온 사하(스테파니 리 분)가 디자이너 역할을 맡았죠. 실제로도 고등학교/대학교 기업, 기관 등에서 다양한 해커톤을 실시하고 있습니다. 드라마처럼 해커톤으로 창업지원 기관이나 엑셀러레이터/인큐베이팅 센터 입주가 정해지는 경우는 거의 없지만요.

주위를 둘러보세요, 인공지능 기반 기술 플랫폼

온글잎 웹페이지 메인 화면

온글잎은 인공지능이 손글씨를 인식해 폰트로 만드는 서비스로, 일정 비용을 내면 영리적으로 사용할 수 있는 폰트를 만들어 줘요. 〈스타트업〉 5화 속 인재컴퍼니의 해커톤 피칭 내용과 꼭 닮았죠! ©VoyazerX

손글씨로 만든 폰트 제작부터 필적 감정, 시각장애인 음성 안내까지... 〈스타트업〉에 등장하는 각종 인공지능 기술 관련 사업 아이템은 과연 현실성이 있을까요? 물론이죠! 실제로 논문 등을 통해 시도되었거나, 출시되어 시장에 나온 아이템이 대부분이에요. 

2019년, 네이버 인공지능 플랫폼 클로바(CLOVA)에서는 한글날을 맞아 109종의 ‘나눔손글씨 글꼴’을 공개했어요. 이미지 생성 기술을 통해 256자의 손글씨를 인식하고, 특징을 반영해 만든 폰트를 누구나 내려받을 수 있게 했죠. 한편, 스타트업 보이저엑스(VoyazerX)에서 선보인 ‘온글잎(Ownglyph)’ 역시 인공지능을 통해 300여자의 손글씨만으로 영리 목적의 폰트를 제작할 수 있는 서비스입니다.

이외에도 시각장애인 음성 안내 서비스로는 구글의 ‘Lookout(룩아웃)’ , 마이크로소프트의 ‘Seeing AI(씨잉 AI)’, LG U+와 투아트의 ‘설리번+’ 등이 있고, 지평의 집에 놓인 AI 스마트 스피커 ‘장영실’ 역시 아마존 ‘에코(Echo)’, 구글 ‘네스트(Nest)’, KT ‘기가지니(GiGA Genie)‘, SK텔레콤 ‘누구(NUGU)’, 카카오 ‘미니(Mini)’ 등을 떠올리게 합니다. 사람의 힘만으로는 하기 어려운 삶의 불편을 해소해 주는 인공지능 기술, 이제는 더이상 브라운관이나 스크린 속에만 존재하는 이야기가 아닌 셈이죠.

기술을 통해 더 나은 미래로! 🐣

맥북이 놓인 탁자 이미지

우리의 성장은 기술의 발전과 함께!

〈스타트업〉은 어느새 중반을 지나 절정으로 달려가고 있어요. ‘청춘 코딩 로맨스’를 표방하고 나온 이 드라마를 둘러싸고 비판부터 공감까지 여러 목소리가 오가고 있죠.

그럼에도 드라마를 계기로 더 많은 사람들이 IT에 대해 이야기하고 의견을 주고받는 풍경만큼은 무척 반갑습니다. 비록 현실은 픽션처럼 달콤하진 않지만, 드라마 속 이야기처럼 기술을 통해 더 나은 미래에 한 걸음 가까워질 수 있다면 정말 좋겠네요!

드라마 속 AI 만드는 법, 배우고 싶나요? 👀
인프런과 함께 학습해보세요.
👇 (클릭)

인프런 인공지능 큐레이션 이미지


이번 [주간 인프런] 어떠셨나요?
솔직한 의견을 들려주세요!

유익해요 | 아쉬워요

지난 [주간 인프런] 이 궁금하다면? (클릭)

댓글 3

댓글을 작성해보세요.

  • 도농역
    도농역

    좋은내용 감사합니다

  • pji219
    pji219

    프로그래밍 공부하는 사람으로써 드라마에 개발자와 코딩 관련 내용이 나오니 정말 좋네요^^ 스타트업 재밌더라구요 ㅎㅎ

    현실적으로 잘만들어진거 같아요 ㅎㅎ

  • hjoo

    ㅋㅋㅋㅋㅋ주상욱 카리스마 구구단 코딩인 커뮤니티에서도 많이 회자됐었어요. ㅎㅎ 웃겼는뎅.