본문 바로가기

Home > 열린마당 > 공개SW 소식

공개SW 소식

부산대 한국어 맞춤법 검사기, 모두의 자산이 되려면

OSS 게시글 작성 시각 2016-08-19 16:54:54 게시글 조회수 4296

2016년 08월 18일 (목)

ⓒ 블로터닷넷



한국어 맞춤법/문법 검사기’를 개발한 부산대 권혁철 교수의 제자였던 정휘웅 연구원이 포털의 한국어 맞춤법/문법 검사기 베끼기 논란에 대한 의견을 <블로터>에 보내왔습니다. 필자 동의를 얻어 게재합니다._편집자


저는 권혁철 교수님을 지도교수님으로 모셨고, 제대로 박사논문도 쓰지 못하고 연구실을 나온 나쁜 제자임을 밝힙니다. 이와 관련된 몇몇 의견과 과거·현재 기사 링크를 먼저 올립니다.


이 글들을 토대로 제 의견을 내 볼까 합니다.


1. 형태소 분석기와 용어 사전의 중요성


다음의 예를 살펴보겠습니다. 얼마전 요청이 있어서 약 한 달 전 모 검색업체의 형태소 분석기를 돌린 결과입니다.


인천공항에서  인천 ***  공항 ***  에서 ***
출발하는  출발 ***  하 ***  는 ***
말레이시아로  말레이 ***  시아 ***  로 ***


***로 표현한 것은 형태소 분석 태깅이 각 엔진의 특성을 보여주기 때문에 그것을 숨기기 위해서임을 밝힙니다. 이 짧은 문장에서 문제가 되는 것은 ‘인천’과 ‘공항’이 구분돼 있다는 것이고, ‘말레이’와 ‘시아’가 구분돼 있다는 것입니다. 인천과 공항은 합쳐서 고유명사로 분석되면 시스템의 효율성이 매우 좋아집니다. 만약 이 경우라 한다면 인천이라는 지명과 공항이라는 명사를 다시 추출·분석하는 모듈이 필요합니다. 다음으로는 말레이시아입니다. 과거에는 말레이시아를 말레이 혹은 말련이라 쓴 경우들이 많아서 형태소 분석기가 이렇게 분석을 한 것이겠죠.


첫 번째 분석의 경우는 문제가 있지만 형태소 분석기가 오류 없이 분석한 경우입니다. 그러나 정밀한 정보분석을 위해서는 가공을 반드시 거쳐야 하는 경우입니다. 이 경우 시스템 설계자는 고민합니다. ‘인천공항’을 고유명사로 등록해야 하는가, 그렇다면 일반명사가 들어간 회사 이름은 어떻게 할 것인가 등 여러가지 고민을 하게 됩니다. 첫 번째 경우에는 형태소 분석 이후에 검색 키워드 매칭 과정에서 인천공항을 넣어두고 인덱스를 만들어둬야 바르게 검색이 됩니다. 유사어 검색 이전에 하나의 키워드가 라이브러리에 저장돼야 하는 것이죠. 그렇지 않으면 내용어 추출이라는 엔진을 다시 반영해 형태소 분석기 위에 다시 처리 엔진을 달아줘야 합니다. 이때도 역시 “지명+공항_일반명사”라는 규칙을 넣어줘야만 시스템이 잘 찾아냅니다.


세 번째 단어는 매우 틀리게 분석됐는데 말레이시아라는 고유명사_지명을 라이브러리에 추가해줘야만 바르게 추출됩니다. 그렇지 않으면 저 형태소 분석기 기능으로는 ‘말레이시아’를 하나의 단일 지명으로 검색하거나 분석할 수 없습니다. 아마도 정부기관의 많은 홈페이지 검색 기능을 써본 경험들이 있으실 것입니다. 이는 용어사전이 정교하지 못하거나 부족한 데서 출발합니다. 용어사전은 형태소 분석기의 성능을 좌우하는 핵심 요소이며, 매우 큰 투자를 해야 합니다. 일반 검색엔진 기업들도 두려워서 이 부분에 투자를 제대로 못하고 있는 것이 현실입니다.


2. 온라인 맞춤법 검사기 비교


저는 2016년 초부터 브런치를 사용하기 시작하면서 여기에 장착된 맞춤법 검사기 성능이 꽤 쓸만하고 좋다는 것을 확인했습니다. 도움도 많이 받았고요. 포털에서 자체 솔루션으로 그 기능을 구현하는 것은 앞으로 클라우드 전략에서도 매우 중요한 부분이자, 올바른 한글 쓰기 측면에서 시사하는 바가 크다고 생각했습니다. 서비스 품질을 개선하기 위한 자체 라이브러리 개발과 내재화는 좋은 것이라 생각합니다. 여기에 필요한 라이브러리의 개발은 정말로 어렵고도 힘든 일입니다. 끊임없이 발생하는 새 단어, 전문용어들은 언제나 시스템 설계자들을 괴롭힙니다. 올해만 하더라도 ‘지카 바이러스’ 같은 전문용어들이 대중에 알려졌지요. 그렇다면 분석 결과는 어떨까요? 오늘 아침 네이버의 분석 결과, 다음의 분석 결과, 권혁철 교수님의 시스템 분석 결과를 비교해보겠습니다. 바로 이 문단을 넣어서 분석했습니다.


han_01


han_02


han_03


han_04


han_05


제가 보기에 분석 성능은 권혁철 교수님 시스템이 가장 뛰어나고 다음, 네이버 순서인 것 같습니다. 도움말에 있어서 다음은 자체적으로 라이브러리를 구축한 것으로 보이며, 아직 다음의 용어사전 규모는 권혁철 교수님 시스템에 미치지 못하는 것 같습니다. ‘솔루션’ 같은 용어를 그 예로 들 수 있습니다.


이 예제에서 권혁철 교수님께서는 이미 지카 바이러스를 분석해두셨고 라이브러리에 반영하셨습니다. 다음도 반영했지만 말이죠. 이러한 용어의 개수는 상상할 수 없을 만큼 다양하고 많습니다. 게다가 새롭게 만들어지는 단어도 많지요. 이 각각을 입력하고 시스템에 반영하려면 한 사람의 힘으로는 되지 않습니다. 연구실의 연구생들이 알고리즘을 설계하고 코딩을 할 수 있지만, 라이브러리를 관리하고 규칙에 맞게 정보를 입력하는 것은 하루종일 붙어서 작업하는 이들이 없으면 불가능합니다.


3. 지도교수님을 위한 변론


앞서 언급한 작업들은 아주 오래 전부터 매주, 매일 꾸준히 이뤄져 왔습니다. 대학원 시절에도 매주 신문을 보면서 새로운 용어가 있는지 매일매일 작업하셨고, 핵심 규칙 작업은 손수 하셨습니다. 매우 어렵고 규칙 하나를 잘 못 설계하면 나비효과처럼 연쇄작용이 일어나 시스템이 망가져버리므로 매우 신중하게 설계해야 하는 작업입니다. 20년 이상을 이런 작업에 매진한 것은 우리말 처리에 그만큼 사명감을 가지고 계셨기 때문입니다. 매우 아쉬운 것은, 정부 연구 예산에서는 이런 인력에 대한 지원이 불가하다는 점입니다. 교수님이 작은 회사를 만드신 이유지요. 교수님께서는 열악한 연구 지원환경에서 어렵게 회사를 운영하셨습니다. 수익을 바라고 하신 것이 아니라, 이 라이브러리를 구축하고 엔진을 다듬을 최소 필요비용을 확보하기 위해서였습니다.


권혁철 교수님은 이 시스템을 누구나 와서 쉽게 쓸 수 있게 지금까지 무료로 제공해 왔습니다. 지금도 많은 이들이 이 시스템을 사용하고 있으며, 지금 위의 분석 결과도 보다시피 권혁철 교수님 시스템이 가장 뛰어난 성능을 보여준다는 것을 알 수 있을 것입니다. 그러나 포털의 그것에 비해서 예쁘지는 않지요. 당연합니다. 웹디자이너를 고용할 수도 없고, 포털의 고급 개발자 수준의 개발자도 없으며, 급여도 많이 줄 수 없습니다. 그럼에도 불구하고 지금까지 묵묵히 이 라이브러리를 구축해오셨고, 누구나 들어와서 쓸 수 있게 하셨습니다. 라이브러리를 구축할 비용은 언론사나 알음알음 영업을 하시며 지금까지 명맥을 이어온 것이고요.


저는 포털들이 자체 기술로 각 엔진들을 개발해왔다고는 생각합니다. 위에 분석한 결과를 보면 이해하시리라 봅니다. 다음은 꽤 유사하기는 하지만 말이죠. 도움말 내용을 보았을 때 자체적으로 구축한 것도 맞다고 봅니다. 그러나 저는 자체 기술보다는, 오히려 권혁철 교수님께 기술 협약을 맺고 기술에 대한 가치를 인정했다면 이런 일까지 오지는 않았을 것이라 생각합니다. 대기업-중소기업 상생이 아닙니다. 기술에 대한 가치를 인정하자는 얘깁니다.


그 핵심에는 용어사전을 포함한 언어 라이브러리가 있습니다. 언어 라이브러리는 국가 기초과학에 포함되는 핵심 영역이라 생각합니다. 정부가 구축하지 못하고, 포털은 핵심 기술이라 생각해 절대 오픈하지 않는 것이 바로 언어 라이브러리입니다. 매우 핵심 기술이기 때문에 그 누구도 형태소 분석기의 라이브러리는 오픈하지 않고 있습니다. 그런 라이브러리와 도움말들을 묵묵히 구축해온 분이 권혁철 교수님이며, 지금까지 국내에서 가장 뛰어난 성능의 형태소 분석기와 라이브러리를 보유하고 있다고 생각합니다.


이런 맥락을 토대로 권혁철 교수님이 페이스북에 올린 글을 다시 한 번 읽어주셨으면 합니다. 돈을 벌고자 하는 것도 아니고 지금까지 연구개발 성과를 인정해달라는 것도 아닌, 올바른 우리말을 지키고 가꾸기 위한 연구 열정을 이어가고 싶은 외침이라는 생각입니다. 네이버에서 2010년 찾아왔을 때 왜 협상이 결렬됐을까 제 나름대로 생각해 보았습니다만, 아마도 지도교수님의 생각을 제대로 이해하지 못했거나 개발에 들어간 열정을 너무 낮게 책정해서 화가 나서 그런 일이 발생하지는 않았나 추측해 봅니다.


4. 대안은 없는가


저는 오픈소스 SW의 저변 확산을 컨설팅하는 사람으로서 공유·개방과 같은 철학을 지지하고 있습니다. 그리고 오픈API는 제가 연구실에 있으면서 끊임없이 설계했던 부분이고요.(시스템은 다릅니다만) 교수님께서 이렇게 만들고 싶지 않으셨을까요? 오픈API로 열기 위해서는 우선 사용자마다 퍼블릭 키를 생성해야 하고, 사용자 관리를 해야 하며, 사용자마다 사용량을 모니터링 할 수 있어야 합니다. 그래야만 불필요한 정보 편취를 막을 수 있지요. 그리고 오픈API를 만들게 되면 이 시스템을 이용하는 외부 시스템이 늘어날 것이고, 당연히 따라야 하는 것은 서버 증설과 인프라 확보, 안정적이 서비스 보장입니다.


이 부분은 많은 분들이 지적했듯이 권혁철 교수님 전공은 아닙니다. 경영의 관점이지요. 그런 관점에서 저는 포털을 넘어서서 국가기관에서 전향적으로 이 문제를 생각해줬으면 한다고 봅니다. 인공지능이 아무리 뛰어나도 처음 정교하게 분석된 형태소 분석 결과와 용어사전이 없으면 빅데이터 분석은 사상누각입니다. 문화체육관광부 산하 국립국어원 그리고 미래창조과학부가 관심을 가진다면, 잘 할 수 있는 기술을 서로 보강한다면 한국어의 전산 처리기술은 큰 발전을 가져올 수 있다고 생각합니다. 카카오에서도 많은 노력을 기울였던 것으로 생각됩니다. 만들어진 시스템의 결과물을 보면 알 수 있습니다.


그러나 만약 권혁철 교수님 시스템이 네이버나 카카오와 협업해 UI 형태로 지금과 같이 많은 이들에게 서비스되고(인프라는 포털이 제공하고), 클라우드에 장착돼 공공기관이나 민간 기업들이 서비스를 구매해 사용하며, 속도 개선이나 기초 엔진 부분은 코드를 공개해 함께 개선한다면 국가 전체적인 비용을 줄일 뿐만 아니라 한국어 정보처리 발전에 큰 기여를 하게 될 것이라 생각합니다. 특히 2015년 제정된 클라우드 기본법에 따라 공공기관에서도 손쉽게 구매해 사용할 수 있도록 시스템을 보완할 수 있을 것입니다.


포털에서는 연구목적에 한해서 연구자들과 개별적인 계약을 통해 연구용 말뭉치 정보를 상호 공유하는 것도 생각해볼 수 있습니다. 국립국어원도 표준국어대사전의 세부적인 데이터베이스와 용어, 태깅된 세부 정보와 예문 정보 등 공개되지 않고 있는 고급 언어지식을 함께 공유할 수 있어야 한다고 봅니다.


여기저기서 클라우드 이야기도 하고 SaaS 이야기도 합니다. 만약 클라우드에서 기업 전자결재 솔루션을 제공한 뒤, 여기에 사용자에 따라 커스터마이징 작업을 통해서 클라우드의 맞춤법 검사기 서비스와 연계하면 기업의 기안문서들이 보다 매끄러워질 것입니다. 원하는 기업은 구매할 것이고, 그렇지 않은 기업은 기본 서비스만 활용하면 될 것입니다. 저는 분명히 새로운 상생모델이 있다고 생각합니다. 좀 더 발전적인 논의들이 함께 이어졌으면 하며 부족한 글을 마칠까 합니다.


[새소식]


권혁철 부산대 교수가 이번 논란에 대한 입장을 페이스북에 추가로 밝혔습니다. 아래 글을 참고하시기 바랍니다. (2016년 8월18일 오후 2시20분)





※ 본 내용은 (주)블로터 앤 미디어(http://www.bloter.net)의 저작권 동의에 의해 공유되고 있습니다.
Copyright ⓒ 블로터 앤 미디어. 무단전재 및 재배포 금지



[원문출처 : http://www.bloter.net/archives/261899]

맨 위로
맨 위로