형태소 분석이란 정확히 무엇을 하는 기술인가

형태소 분석(Morphological Analysis)은 문장을 더 이상 쪼갤 수 없는 의미 단위인 형태소로 나누고, 각 형태소에 품사(명사·동사·조사 등)를 붙이는 자연어 처리 기술입니다. "등드름이 사라졌어요"라는 리뷰 문장은 사람에게는 자연스럽지만, 컴퓨터가 곧바로 "등드름"이라는 명사와 "사라지다"라는 동사를 구분해내지는 못합니다. 형태소 분석은 이 문장을 "등드름(명사)+이(조사)+사라지(동사어간)+었(선어말어미)+어요(종결어미)"처럼 쪼개, 이후 단계에서 명사만 골라내거나 감성을 판단할 수 있는 기초 데이터를 만들어줍니다.

한국어 형태소 분석이 영어보다 까다로운 이유

영어는 띄어쓰기 단위가 대체로 하나의 단어와 일치해 텍스트 처리가 비교적 단순합니다. 반면 한국어는 조사·어미가 어간에 계속 붙는 교착어라서, 같은 명사라도 "제품이", "제품을", "제품에서"처럼 형태가 계속 바뀝니다. 이 조사·어미를 떼어내지 않고 빈도를 세면 "제품이"와 "제품을"이 서로 다른 단어로 집계되는 오류가 생깁니다. 그래서 한국어 텍스트 마이닝에는 영어권 NLP 라이브러리를 그대로 쓰지 않고, 한국어 문법 구조에 맞춘 별도의 형태소 분석기가 필요합니다.

KoNLPy에는 어떤 분석기들이 포함되어 있고 무엇이 다른가

파이썬 환경에서 가장 널리 쓰이는 한국어 형태소 분석 도구는 KoNLPy입니다. KoNLPy는 자체 분석 엔진이 아니라 여러 형태소 분석기를 하나의 인터페이스로 모아둔 오픈소스 라이브러리로, 한나눔(KAIST 개발), 꼬꼬마(서울대 개발), 코모란(Shineware 개발), Mecab(일본어용을 한국어에 맞게 수정), Open Korean Text(옛 트위터 형태소 분석기) 등을 포함합니다. 분석기마다 처리 속도와 신조어·구어체 대응력이 다르기 때문에, 표준적인 문어체 텍스트인지 리뷰처럼 구어체·신조어가 섞인 텍스트인지에 따라 적합한 분석기가 달라집니다.

명사만 따로 추출하는 이유는 무엇인가

리뷰 문장을 형태소 단위로 다 쪼갠 뒤에도, 실무에서 워드클라우드나 빈도 분석에 쓰는 것은 대개 명사만입니다. "이", "가", "을", "를" 같은 조사나 "있다", "하다" 같은 보조 동사는 거의 모든 문장에 등장해 빈도를 세도 의미 있는 정보를 주지 못하기 때문입니다. 반면 "등드름", "배송", "지퍼백", "냄새" 같은 명사는 고객이 실제로 언급한 제품의 부위·기능·문제 지점을 직접적으로 드러냅니다. 그래서 형태소 분석 결과에서 품사가 명사인 토큰만 걸러내는 것이 VOC 분석의 표준적인 전처리 절차입니다.

워드클라우드는 어떻게 만들어지고 무엇을 보여주는가

명사 추출과 빈도 집계가 끝나면, 등장 빈도가 높은 단어일수록 큰 글씨로 표시하는 워드클라우드로 시각화하는 것이 일반적입니다. 워드클라우드는 수천 개 리뷰를 하나하나 읽지 않아도 고객이 가장 많이 언급한 단어가 무엇인지 한눈에 보여주는 장점이 있습니다. 다만 워드클라우드는 단어가 얼마나 자주 나왔는지만 보여줄 뿐, 그 단어가 긍정 맥락에서 쓰였는지 부정 맥락에서 쓰였는지는 알려주지 않습니다. "배송"이라는 단어가 크게 나왔다고 해서 배송이 만족스러웠는지 불만족스러웠는지는 다음 편에서 다룰 감성 분석을 거쳐야 알 수 있습니다.

형태소 분석기를 고를 때 어떤 기준으로 판단해야 하는가

KoNLPy에 포함된 여러 분석기 중 하나를 고를 때는 처리 속도와 신조어·구어체 대응력을 함께 봐야 합니다. 학술 논문이나 뉴스 기사처럼 표준 문어체 텍스트를 다룬다면 정교한 분석기가 유리하지만, 고객 리뷰는 맞춤법이 틀리거나 줄임말·이모티콘이 섞인 구어체 문장이 많아 사정이 다릅니다. 처리 속도가 빠른 분석기는 대량의 리뷰를 빠르게 돌려볼 때 유리하고, 신조어 대응력이 강한 분석기는 "가성비", "존맛" 같은 신조어·유행어가 섞인 텍스트에서 더 정확한 결과를 냅니다. 실무에서는 처음부터 하나만 정해 쓰기보다, 보유한 리뷰 샘플 일부를 여러 분석기로 돌려보고 명사 추출 결과가 실제 문맥과 맞는지 비교한 뒤 하나를 표준으로 정하는 방식이 안전합니다.

형태소 분석 결과를 그대로 믿으면 안 되는 이유

형태소 분석기도 완벽하지 않습니다. 신조어나 브랜드 고유의 제품명(예: 자체 개발한 성분명이나 시리즈명)은 분석기가 하나의 단어로 인식하지 못하고 엉뚱하게 쪼개는 경우가 흔합니다. 이런 오류를 방치하면 워드클라우드에 의미 없는 조각 단어가 섞여 나오거나, 정작 중요한 제품명이 빈도 상위에 잡히지 않는 문제가 생깁니다. 그래서 실무에서는 분석기에 자사 제품명·브랜드 고유명사를 사용자 사전으로 미리 등록해 정확도를 높이는 작업을 함께 진행하는 것이 일반적입니다.