SOL 프로젝트는 트위그팜 LETR팀이 NIA 그리고 멀티캠퍼스와 손 잡고 우수한 인공지능 인재 양성을 지원하는 프로그램입니다. 교육생들이 현업 실무 프로젝트를 경험하고, LETR팀 연구 개발 문화를 가까이에서 체험해 볼 수 있는 기회입니다.
프로젝트 1기에는 지난 8월부터 9명의 예비 개발자들이 3개월이 넘는 기간 동안 LETR팀과 함께했습니다. 실제 현장을 더 밀접하게 경험할 수 있도록 3개 조로 나뉘어 팀 프로젝트를 진행하였는데요. 프로젝트 멘토링을 통해 현업에 있는 LETR팀 연구원들과 교류, 협력하는 시간도 있었습니다.
그렇게 얼마전 마무리 된 1기 참가자 9명의 이야기를 들어봤습니다. 실제로 프로젝트를 진행하면서 각자가 느낀 바가 달랐을 것 같은데요. 이 경험을 통해 무엇을 배우고, 생각하고, 느꼈는지 솔직한 이야기를 남겨주셨습니다.
이번에는 두 번째 순서로 ‘욕설, 혐오 표현 분류’ 프로젝트에 참여한 택현님, 구홍님, 지수님 3명의 이야기를 소개해 드립니다. 더불어 혹시 아직 지난번 ‘자연스러운 한국어’ 팀 인터뷰를 보지 않았다면 함께 읽어 보시는 것을 추천합니다.
내일의 AI 개발자의 씨앗을 심다, SOL 프로젝트 인턴 인터뷰 1
인공지능은 처음(?)이라서
안녕하세요. 자기소개 부탁드려요!
택현: 안녕하세요. '욕설 및 혐오 표현 분류' 프로젝트에 참여한 김택현입니다. 국민대학교에서 영어영문학과를 전공했고, 언어학 중 화용론과 통사론에 관심이 많았습니다. 언어학과 관련이 많은 자연어처리를 접하게 되면서 인공지능 공부도 시작하게 됐습니다.
구홍: 일본 와세다대학교 국제교양학부를 나왔습니다. 미국과 일본 양쪽에서 약 10년의 해외생활을 하고 돌아왔네요.
지수: 저는 컴퓨터공학을 전공했어요. 인공지능에 관심이 많아 멀티캠퍼스에서 자연어처리 과정을 수강했습니다.
인공지능, 그 중에서도 자연어처리에 관심을 갖게 된 이유는 무엇인가요?
택현: 원래는 언어학 석사 진학을 목표로 했는데, 소프트웨어 관련 교양 수업을 듣다 자연어처리에 대해 알게 됐습니다. 당시에 통사론 수업을 재미있게 들었는데, 문장의 중의성 문제를 인공지능이 어떻게 해결할 수 있을지 호기심이 생겼어요. '실제 사람과 대화하는 수준의 담화도 가능할까?', '풍자처럼 발화 의도와 다르게 표현되는 어려운 문장도 만들 수 있을까?’ 같은 궁금함을 안고 자연어처리에 입문했습니다.
구홍: 예전부터 IT 분야에 관심이 많았는데, 자연스럽게 인공지능에도 관심을 갖게 되었네요. 멀티캠퍼스 교육과정 수강을 계기로 자연어처리를 배우게 됐습니다.
지수: 학교에서 우연히 인공지능 분야 산학협력 프로젝트에 참여한 적이 있어요. 당시 결과물이 흥미로웠는데, 그때부터 인공지능에 관심이 생긴 것 같네요. 그때 참여한 프로젝트는 비전 분야였는데, 더 다양한 분야를 경험해보고 싶어 멀티캠퍼스의 자연어처리 과정도 수강하게 됐습니다.
SOL 프로젝트를 경험해보니
SOL 프로젝트에 지원하게 된 계기는 무엇인가요?
택현: AI Hub, 모두의 말뭉치 등 양질의 데이터가 공개되어 있지만, 일반인 입장에서 다룰 수 있는 것은 제한적인 것 같았습니다.하지만 현업에서는 직접 기업 데이터를 만져볼 수 있고, 컴퓨팅 자원도 지원받을 수 있으니까 더 다양한 연구가 가능하지 않을까 기대했습니다. 그런 점에서 SOL 프로젝트는 연구 역량을 키울 수 있는 좋은 기회라 생각했던 것 같아요.
구홍: 실제 현업에서는 어떻게 프로젝트를 진행하는지 궁금했고, 기왕이면 직접 경험해보고 싶어 지원했습니다. 회사 수준의 자원을 사용해보고, 현업에 있는 멘토님들과 같이 일해 보면 더 많이 배울 수 있을 것 같았고요.
지수: 멀티캠퍼스에서 자연어 처리 과정을 수강하다 알게 됐어요. 교육과정 중 트위그팜 LETR팀에서 오신 멘토분들과 이야기할 기회가 있었는데 연구분야가 흥미롭고, 분위기도 좋아 보였습니다. SOL 프로젝트는 현업에 있는 멘토님들과 함께 실무를 경험할 좋은 기회라 생각해 지원했습니다.
SOL 프로젝트를 통해 어떤 경험을 하셨나요?
택현: 커뮤니티, SNS, 뉴스 기사 댓글에 자주 보이는 혐오 표현 및 공격 발언에 대응할 수 있는 욕설 및 혐오 표현 분류기를 목표로 진행했습니다. 우선 관련 선행 연구를 분석하고, 적합한 데이터를 수집해 전처리 과정을 거쳤고, 총 9천 6백만 개의 데이터를 사용한 사전학습 모델을 한국어 혐오 표현 데이터셋에 파인튜닝하여 분류기를 완성했습니다.
그리고 저희가 사전학습시킨 모델과 욕설 및 혐오 표현 분류 모델은 허깅페이스(Hugging Face)에 업로드해 관심있는 분들이 사용할 수 있도록 오픈 소스로 배포했고요. 더불어 사용자가 직접 문장을 입력하여 욕설 및 혐오 표현 탐지를 테스트해 볼 수 있는 데모 사이트까지 제작했습니다.
구홍: BERT 기반으로 사전학습 모델을 만들고, 파인튜닝하여 욕설 및 혐오 표현 분류기를 만들었습니다. 숭실대에서 만든 Soongsil-BERT를 벤치마킹했고, 다른 사례들도 함께 참고해 저희 프로젝트에 맞게 수정도 했고요. 중간에 여러가지 에러가 많아 시간이 지체되기도 했지만, 하나하나 풀어가며 아웃풋을 만들 수 있었습니다.
지수: 참고할 선행연구와 데이터셋을 찾아 분석하고, 사전 학습 모델을 구현하기 위한 모델을 연구했습니다. 그리고 EDA(탐색적 데이터 분석)와 전처리 과정을 거쳐 사전학습 및 파인튜닝하는 작업까지 마무리했네요.
서버에서 개발한 덕분에 다양한 리눅스 명령어를 접할 수 있었는데, 아직까지도 ‘screen’ 명령어가 기억에 남아있습니다. 서버 접속을 안 해도 세션이 유지되는 것이 정말 유용했거든요.👍 또한 사전학습으로 사용한 모델은 BERT 기반 모델이었고, 대표적인 딥러닝 프레임워크인 파이토치와 텐서플로우를 이용해 GPU 환경에서 작업했습니다. 아! 최종 사전학습 모델과 파인튜닝 모델은 허깅페이스에 공개되어 있답니다.😊
팀원들과 함께 프로젝트를 진행하며 느낀 것은 무엇인가요?
택현: 계획한대로만 되는 일은 없다는 것을 깨달았어요. 저는 평소 어느정도 계획을 세우고 실행에 옮기는 편인데, 이번에 사전학습 모델을 구축하며 미처 예상하지 못한 오류를 잡느라 많은 시간을 써야했습니다. 그래도 처음에는 오류가 발생하면 많이 당황했지만, 시간이 지나며 익숙해지게 되었고, 그 때 마다 팀원들이나 멘토님들과 의논하며 문제를 해결할 수 있었죠. 이 과정에서 오류 관련 정보를 검색하는 방법이나 문제를 일목요연하게 정리해서 질문하는 방법에 대해서도 배울 수 있었습니다.
구홍: 제가 아직 많이 부족하다 생각하고 있었는데, 팀원들과 함께하며 많이 배울 수 있었습니다. 사전 학습 코드를 프로젝트에 맞게 수정할 때는 큰 도움이 되지 못해 많이 아쉬웠는데, 그래도 그 과정에서 많은 것을 배운 것 같아 좋았어요. 이번 프로젝트 참여를 계기도 부족한 코딩 실력을 더 키워야겠다고 결심했습니다.
지수: 프로젝트를 진행하다 보면 놓치는 부분이 있기 마련인데, 팀원들과 함께한 덕분에 서로 부족한 부분을 채워준다는 것이 무엇인지 느낄 수 있었어요. 내가 아는 것은 공유하고, 모르는 것은 배워가며 함께 좋은 결과를 만들어내는 소중한 경험을 할 수 있었습니다.
프로젝트를 마무리하며 가장 가장 기억에 남는 일은 무엇인가요?
택현: 처음 팀원들을 만났을 때부터 마지막 순간까지 전부 다 잊지 못할 소중한 추억이 되었습니다. 또래 친구들이라 말이 잘 통해 편안한 분위기에서 작업할 수 있었고, 서로 많은 대화를 하며 친밀감도 쌓을 수 있었죠. 누구 하나 게을리 하는 사람이 없었고, 서로 호흡도 잘 맞은 덕분에 좋은 결과가 나올 수 있지 않았나 생각합니다. 열정적이고 도전적인 사람들과 함께 한 덕분에 많이 배웠고, 또 즐거웠습니다.
구홍: 직접 참여한 프로젝트로 결과물까지 발표할 수 있어 좋았습니다. 진행 과정에서 에러도 많았는데, 어느날은 팀원들과 새벽까지 수정한 끝에 결국은 잘 돌아가는 것을 보며 정말 뿌듯해했던 기억이 있습니다.
지수: 작업 환경을 3번이나 바꿔야했던 일이 가장 기억에 남네요. 사전학습 모델을 구축하며 크고 작은 오류가 정말 많았거든요. 그 중 가장 큰 오류가 OOM(Out Of Memory)이였는데 서버 환경의 메모리가 사전 학습을 감당하지 못해 다른 서버로 이동해보고, 가지고 있는 자원을 최대한 활용하는 방법을 찾아보기도 했습니다. 결국은 AI Hub에서 제공하는 고성능 컴퓨팅 서버를 신청해 해결했는데, 그래서 총 3번이나 작업 환경을 바꾸게 되었답니다.😂 덕분에 사전학습이 정말 많은 많은 자원을 필요로 하는 작업이라는 것을 깨달았습니다. 고성능 컴퓨팅 자원을 확보해 잘 마무리할 수 있도록 도와주신 LETR팀에 다시 한번 감사드립니다!
SOL 프로젝트, 그 이후
앞으로 도전하고 싶은 분야, 이루고 싶은 목표는 무엇인가요?
택현: 인공지능과 사람이 원활히 소통할 수 있는 대화 시스템을 연구하고 싶어요. 실제 사람과 대화하는 수준의 담화가 가능한 인공지능, 풍자와 같은 어려운 표현을 사용한 문장까지 생성하는 인공지능, 상식을 기반으로 상호작용할 수 있는 대화 시스템을 개발하는 것이 목표입니다.
구홍: 제가 도전하고 싶은 분야는 머신러닝, 딥러닝 입니다. 자연어처리를 하면서 정말 어렵고, 저와는 좀 맞지 않는다는 것을 알게 됐어요. 멀티캠퍼스에서 머신러닝, 딥러닝을 재미있게 배웠기 때문에 그 분야의 대학원에 진학할 생각입니다.
지수: 개인적으로 영상처리와 자연어처리를 모두 경험해보고 나니 이 두 분야가 결합된 이미지 캡셔닝에 흥미가 생겼습니다. 예를 들면 자막 자동 생성이나 영상 컨텐츠 줄거리 요약 같은 것이 있더라구요! 이처럼 저는 편리한 기술로 누군가에게 도움이 되는 서비스를 연구, 개발하는 것이 꿈입니다.
마지막으로 앞으로 프로젝트를 경험하게 될 후배들에게도 한 마디 남겨주세요.
택현: 자유로운 분위기인 만큼 개인의 노력이 중요하다고 생각합니다. 특히 구체적인 목표가 없으면 초반에 많이 헤맬 수 밖에 없어요. 팀원들과 함께 소통하면서 문제를 정의하고, 어떤 결과물을 만들어낼지 우선 큰 그림을 그려보는 것이 중요합니다.
그리고 멘토님들을 많이 괴롭혀드리는 것을 추천합니다! 저희보다 연구, 개발 경험이 풍부한 분들이니 망설이지 말고 적극적으로 질문하시면 좋을 것 같아요.
구홍: 이리 치이고, 저리 치이며 많은 것을 배우고, 느끼게 될 겁니다. 팀원들에게 피해가 가지 않도록 서로를 배려하며 작업하다 보면 좋은 결과물을 만들어낼 수 있을 거에요.
지수: 진행과정을 차근차근 기록해두는 것을 추천합니다. 아마 여러가지 오류들을 만나게 될 텐데, 노션 같은 툴을 이용해 해결 방법을 잘 정리해두면 나중에 꼭 도움이 될 겁니다.
함께보면 좋은 콘텐츠
언어처리 엔진 LETR는 왜 텍스트 언어에 집중할까?내일의 AI 개발자의 씨앗을 심다, SOL 프로젝트 인턴 인터뷰 1