텍스트 분석 도구 개발하기

2023. 1. 5. 07:50Re-design!
이어진 (Eojin Lee)

텍스트 분석 도구 '모라고'를 만들고 있습니다. 

PXD UX 테크랩은 자연어 처리 기술을 이용해 텍스트를 분석하는 도구 '모라고'를 만들고 있습니다. CSV 형식의 데이터를 업로드하면 '모라고'가 워드 클라우드처럼 키워드를 추출해 주고, 사용자는 키워드별로 중요한 문장을 선별해 다시 텍스트로 복사하는 방식으로 사용할 수 있습니다. 

간단한 사용 예시로 금융 토스의 최근 6개월 iOS 리뷰 46개를 분석 도구로 돌려보았습니다. 분석 도구가 비슷한 주제의 문장을 모아주고 사용자는 그 중에서 눈에 띄는 주제를 살펴봅니다. 주제에서 중요하다고 생각하는 문장을 저장하고, 저장한 문장과 키워드를 복사해 추가로 편집할 수 있습니다. 

(현재 개발 중인 모라고 베타 버전을 이용하실  있도록 신청을 받고있습니다. 관심이 있으시다면 베타 버전 신청 링크 들어오세요.)

텍스트 분석 도구 '모라고'로 금융 앱 토스의 최근 6개월간 iOS 앱 리뷰를 분석하는 화면이다.
금융 앱 토스의 최근 6개월간 iOS 앱 리뷰 46개를 모라고에 업로드한 결과.

 

왜 텍스트 분석 도구를 만들고 있나요?

사용자 보이스를 더 자주 분석하고 싶었습니다.

PXD의 UX 리서처는 사용자 보이스, 주관식 설문 답변, 사용자 인터뷰 기록 등 정제되지 않은 텍스트에서 인사이트를 발견하고 공유합니다. 이러한 정성 텍스트 데이터를 분석하는 데에는 여러 문제점이 있습니다. 텍스트 분석은 텍스트 양에 비례해 전처리와 분석에 드는 시간이 늘어납니다. 분석 시간이 너무 오래 걸려서 여러 명의 사용자 보이스 분석을 자주 하기 어렵습니다. 결국 최대한 효율을 낼 수 있는 적은 수의 사용자 보이스를 분석하면 다양한 인사이트를 뽑아내기 어렵습니다. 여기에 더해 정량 데이터와 정성 데이터를 동시에 엮어서 보는 것도 아직 불편했습니다. 제한된 시간과 비용은 사용자 보이스 분석을 자주 시도할  없게 하고, 인사이트의 다양함과 깊이에 한계를 만들었습니다. 테크팀은 이 상황에 아쉬움을 느꼈고, 이 문제를 해결할 있는 도구를 직접 만들어보기로 했습니다.

 

여러 번의 실험과 다양한 시행착오

테크팀은 사용자 인터뷰 등의 리서치를 자주 하는 그룹이 아니었기 때문에, 사용자를 어느 정도 상상하며 서비스를 만들어야 했습니다. 2021 초부터 2022 말까지 2 동안 테크랩은 내부 또는 외부 리서처들의 피드백을 받으며 텍스트 분석 업무에서 사용자에게 필요한 기능이 무엇인지, 사용성을 높이는 기획과 디자인은 무엇인지 계속 실험했습니다. 그 과정에서 여러 버전의 '모라고'를 개발했습니다.

  • v1.0   어피니티 다이어그램을 웹에 그대로 옮겨놓기
  • v1.5   UI 없는 CLI 도구로 분석 기술 실험
  • v1.8   다른 회사와의 협업 시도, 실제 리서치 업무에 활용될 수 있을지 실험
  • v2.0  흥미를 끌기 위해 소셜 분석 도구 만들기
  • v3.0  데이터 분석에 익숙한 사람들을 위한 구글 스프레드시트 애드온
  • v4.0  시계열 탐색이 가능한 뉴스 대시보드
  • v4.5  채팅 분석 및 워드 클라우드 실험
  • v4.8  CSV 파일 형식을 지원 (현재 개발 중)

넘어지는 이유는 다양했습니다.

여러 버전을 개발하며 공통으로 아쉬웠던 건 로딩이 길고 상호작용 피드백 속도가 느려 사용성이 좋지 못한 것이었습니다. 분석을 위해 생성된 많은 양의 데이터를 실시간으로 처리하는 기술이 없어 발생하는 이슈였습니다. 기술적인 문제 외에도 참 다양한 시행착오를 겪었습니다. 예를 들어 원본 텍스트들을 모아 오는 크롤러를 만드는 데 집중했던 적이 있습니다. 다양한 소스의 데이터를 일반화해서 함께 분석한다는 당시 기획은 나쁘지 않았지만, 적은 인원 대비 우리가 잘할 수 있는 분야는 아니었습니다. 그리고 대부분의 실험은 텍스트 데이터 유형과 구조에 알맞은 전처리 방식을 찾느라, 또는 데이터 원본의 퀄리티 문제를 해결하지 못해 의미 있는 인사이트를 얻기 어려웠습니다.

잘할 수 있는 것에 집중하기

테크랩은 여러 번의 실패를 겪고 적은 인원으로 모라고를 개발하기 위한 조건들을 정리해 나갔습니다.

  • 개발과 수정에 오랜 시간이 걸리지 않도록 최소한의 기능만 제공하기
  • 전처리 과정에서 데이터 원본을 훼손하지 않으며 데이터를 왜곡하지 않기
  • 데이터를 빠르게 탐색하기 위해 하나의 화면에서, 하나의 depth 안에서 탐색을 마치기
  • 데이터 구조와 유형에 제한받지 않고 분석하기

이 조건들을 지키면서 테크랩이 집중할 기능은 크게 요약과 탐색 두 가지로 압축되었습니다.

 

많은 텍스트를 한눈에 볼 수 있도록 요약하기

t-SNE 머신러닝을 이용해 손으로 쓴 숫자를 구분하는 과정을 시각화한 결과. 색으로 구분되어있는 숫자 점이 랜덤하게 흩뿌려져 있는 이미지(왼쪽) vs 머신러닝으로 비슷한 모양의 숫자를 모아놓은 이미지(오른쪽). (출처: https://observablehq.com/@mbostock/lets-try-t-sne)

리서처들이 많은 텍스트를 읽고 요약하는 업무 과정을 살펴보면, 전체 텍스트를 처음부터 끝까지 읽어 내려가면서 비슷한 문장들을 모아 그룹으로 분류합니다. 이 분류 과정을 여러 번 반복해 중요한 문장을 걸러내고, 최종 인사이트를 뽑아냅니다. 어피니티 다이어그램과 같은 기존의 리서치 방법론에서는 사람이 문장을 하나하나 읽고 선별하지만, 머신러닝을 이용하면 기계가 몇 분 안에 비슷해 보이는 문장을 묶어줄 수 있습니다. 물론 사람이 하는 것만큼 창의적이고 직관적인 분석은 기계에게 아직 어렵고, 약간의 오차도 발생하므로 머신러닝이 사람의 손길을 완전히 대체하기는 어렵습니다. 그래도 기계가 먼저 텍스트를 분류해주면 분석과정 초반 단순 분류에 드는 인지비용이 줄어들고, 그만큼 인사이트 도출에 많은 시간을 투자할 있다는 데 의의를 두었습니다.

 

다양한 각도로 탐색하기

텍스트에서 새로운 인사이트를 발견하려면 다양한 시선으로 텍스트를 탐색하며 문장을 여러 방식으로 나누고 묶어보아야 합니다. 데이터 분석 분야에서 특히 정량적 분석을 시작할 때는 EDA(Exploratory Data Analysis:탐색적 데이터 분석) 합니다. EDA란 데이터에서 평균, 중앙, 최소, 최댓값을 보고, 계절성 등의 패턴이 보이는지, 아웃라이어(이상치 데이터) 있는지 등을 전체적으로 파악하는 분석 방식입니다. EDA를 통해 어떤 식으로 데이터를 쪼개서 통계를 내보면 좋을지 감을 잡아가는 거죠. 정성적 데이터인 텍스트도 그룹화/필터링/정렬 다양한 방법으로 탐색하면 패턴을 쉽게 찾아낼 있을 거라 생각했습니다. 그래서 텍스트 검색, 문장 자동 분리 기능 외의 탐색 방법을 실험하고그중유효했던 방법들을 정리하고 있습니다.

단어 빈도수로 나열하기
텍스트의 단어들을 등장 빈도수 순서대로 나열하면 전체 유저 보이스에서 어떤 평이 많거나 적다는 통계적인 감을 얻을 수 있습니다.

발화 의도 구분하기
문장의 물음표(?)나 멘션 표시(@)등 발화 의도가 비교적 분명한 문장들로 가장 많이 질문한 내용, 가장 많이 멘션 되는 사람 등의 정보를 얻을 수 있습니다. 

시계열로 쪼개어 보기
데이터에 시간 정보가 포함되어 있다면, 시간별, 계절별 주제 및 시간의 흐름에 따라 주제가 변화하는 패턴을 파악할 수 있습니다.

긍부정 감성 분석
상업적 이용이 가능한 긍부정 감성 분석 API를 도입해 문장의 내용이 긍정적인 혹은 부정적일 확률을 계산할 수 있습니다. 다만, 직접 API를 개발하지 않기 때문에 외부 의존도가 높다는 아쉬움이 있었습니다.

테이블 뷰
별점, 성별, 연령대 등의 정량 데이터와 정성 데이터인 텍스트를 함께 탐색할 때 테이블 뷰를 도구에서 제공하면 엑셀을 열지 않아도 됩니다.

 

마치며

'모라고'는 리서처가 아닌 일반인 분들께도 유용할 거라고 생각합니다. 보고하기 위한 리서치용 분석이 아니더라도 사람들은 이미 수많은 텍스트를 분석하고 있습니다. 합리적인 구매를 위해 리뷰를 몇 페이지씩 읽거나, 새로운 주제에 대한 최신 커뮤니티 반응을 모아서 재공유하기도 합니다. 이때 텍스트를 읽는데 드는 인지 비용을 모라고가 줄여줄 수 있습니다. 베타 버전 신청으로 한 번 사용해 보세요.

궁금한 점이 있으시다면 <uxtechtf@pxd.co.kr>로 언제든지 메일을 보내주세요. 분께서 보내주시는 메일이 아직 부족한 모라고를 업그레이드하는 도움이 됩니다.