Offcanvas

AI / CIO / 검색|인터넷 / 로봇|자동화 / 머신러닝|딥러닝 / 신기술|미래 / 클라우드

정의, 원리, 사례, SW, 교육과정으로 알아보는 '자연어처리(NLP)'

2020.03.18 Terena Bell, Thor Olavsrud  |  CIO
마치 사람이 하는 것처럼 컴퓨터가 사람의 언어를 이해하고 처리하며 생성할 수 있는 인공지능(AI)의 한 갈래인 자연어처리의 비즈니스 적용이 최근 급격하게 늘고 있다. NLP의 정의, 원리, 비즈니스 사례, 관련 소프트웨어 등을 알아보자. 
 
ⓒGetty Imgeges Bank

정의
자연어처리(NLP)는 의사소통을 담당하는 인공지능(AI)의 한 갈래다. 어떻게 컴퓨터가 사람처럼 언어를 이해하고 처리하며 생성하도록 프로그래밍할 수 있을까?

이 용어는 본래 시스템이 읽을 수 있는 능력을 언급하기 위해 사용되었으나 모든 컴퓨터 언어를 이르는 구어적 표현이 되었다. 하위 카테고리에는 컴퓨터가 스스로 의사소통을 생성하는 능력인 자연어생성(NLG: natural language generation)과 속어, 잘못된 발음, 틀린 철자, 기타 언어의 변형을 이해하는 능력인 자연어이해(NLU: natural language understanding)가 포함된다.

작동 원리
NLP는 머신러닝을 통해 작동한다. 머신러닝 시스템은 단어 그리고 다른 형태의 데이터와 마찬가지로 단어가 합쳐지는 방식을 저장한다. 문구, 문장 그리고 때로는 책 전체가 머신러닝 엔진에 입력되고 문법 규칙, 사람들의 실제 언어 습관 등에 기초하여 처리된다. 그러면 컴퓨터가 이 데이터를 이용해 패턴을 찾고 그다음을 추론한다. 번역 소프트웨어를 예로 들어보자. 프랑스어로 ‘나는 공원에 가고 있다’는 ‘Je vais au parc’이기 때문에 머신러닝은 ‘나는 상점에 가고 있다’도 ‘Je vais au’로 시작하리라 예측한다. 그러면 컴퓨터는 ‘상점’이라는 단어만 있으면 된다.

적용
기계 번역은 개선된 NLP 적용 중 하나지만 가장 보편적으로 사용되지는 않는다. 검색이 보편적으로 사용된다. 구글이나 빙에서 무엇인가를 검색하면 데이터를 시스템에 입력하게 된다. 검색 결과를 클릭하면 시스템이 발견한 결과가 옳은 것이라는 확인으로 인식하고 이 정보를 추후 더 나은 검색을 위해 활용한다.

챗봇도 같은 방식으로 작동한다. 슬랙, 마이크로소프트 메신저, 기타 채팅 프로그램에 통합되어 사용자가 쓰는 언어를 읽은 후 트리거 문구를 입력할 때 켜진다. 시리와 알렉사 등의 음성 비서도 ‘헤이, 알렉사’ 등의 문구를 들으면 작동한다. 그래서 비판론자들은 이런 프로그램이 항상 듣고 있다고 말하는 것이다. 그렇지 않다면 사람이 언제 필요로 하는지 알 수 없을 것이다. 앱을 수동으로 켜지 않는 한 자연어처리 프로그램은 백그라운드 상태로 작동하면서 그 문구를 기다려야 한다.

항상 기다리고 있더라도 NLP는 빅브라더가 아니다. 자연어처리는 단점보다 장점이 많다. 구글 검색이 없는 삶을 상상해 보자. 또는 NLP를 이용해 입력한 단어와 사전의 단어를 비교하는 맞춤법 검사를 상상해 보자. 맞춤법 검사기는 2개의 데이터 세트를 비교하여 무엇이 잘못되었는지 확인하고 추천을 제공한다.

사례
검색과 맞춤법 검사는 너무 흔하기 때문에 당연한 것으로 여기는 경우가 많으며 NLP가 급진적인 생산성 이득을 제공하는 경우에는 더욱 그렇다. 휴가가 얼마나 남았는지 궁금한가? HR에 전화하지 말자. 시간을 아끼고 회사 정책에서 답변을 검색하는 탈라에게 물어보자. 통화 중인데 지난 분기의 수치가 궁금한가? 대화 중 그 부분을 언급하면 음성 검색 신생기업인 세컨드마인드가 화면에 답변을 표시할 것이다. 해당 기업은 통합된 검색 도구 덕분에 회계 및 고객 리소스 관련 통화가 최대 10배 짧아진다고 자랑하고 있다.

또한 자연어처리는 채용 담당자들이 이력서를 살펴보고 다양한 후보자를 유입시키며 자격 조건이 더 좋은 근로자를 고용하는 데 도움이 된다. 스팸 감지는 NLP를 사용하여 원치 않는 이메일을 차단하며, 아웃룩과 지메일 등의 프로그램은 이를 활용하여 특정 사람이 보낸 메시지를 생성된 폴더 안에 정리한다.

정서 분석 등의 도구는 기업들이 그들에 관한 트윗이 긍정적이거나 부정적인지 신속하게 판단하여 고객 우려를 분류할 수 있도록 돕는다. 정서 분석은 단순히 소셜 미디어에서 단어를 처리하는 것이 아니며 단어가 표시되는 맥락을 분석한다. 분석 기업 페리스코픽의 데이터 시각화 전문가인 스카이 모렛은 영어 단어 중 30%만이 긍정적이라고 말했다. 나머지는 중립적이거나 부정적이다. 그래서 NLP는 기업들이 게시물을 더욱 잘 파악하는 데 도움이 된다. 이런 중립적인 단어의 이면에는 어떤 소비자 정서가 있을까?

전통적으로 기업은 자연어처리를 활용하여 피드백을 긍정 또는 부정으로 분류했다. 하지만 플레시먼힐러드(FleishmanHillard)의 소셜 및 혁신 수석 부사장 라이언 스미스는 오늘날의 도구가 슬픔, 분노, 공포 등 더욱 정확한 감정을 확인한다고 말했다.

소프트웨어
챗봇, 음성 비서, 예측 텍스트 애플리케이션, 기타 자연어처리가 핵심이 되는 애플리케이션을 구축할 때 이를 도울 도구가 필요하다. TEC(Technology Evaluation Centers)에 따르면 가장 인기 있는 자연어처리 소프트웨어는 다음과 같다.

NLTK는 인간 언어 데이터를 처리할 파이썬 프로그램을 구축하는 오픈소스 프레임워크이다. 펜실베니아대학교(UPEN)의 컴퓨터 및 정보공학부에서 개발되었으며 50개 이상의 말뭉치 및 어휘 리소스에 대한 인터페이스, 텍스트 처리 라이브러리 스위트, 자연어처리 라이브러리를 위한 래퍼, 토론 포럼 등을 제공한다. NLTK는 아파치 2.0 라이선스로 제공된다.
스페이시(SpaCy)는 연구보다는 생산용으로 고안된 고급 NLP를 위한 오픈 소스 라이브러리이다. 스페이시는 수준 높은 데이터 사이언스를 염두에 두고 개발되었으며 심도 깊은 데이터 마이닝이 가능하다. MIT가 라이선스를 제공한다.
젠심(Gensim)은 자연어처리를 위한 오픈 소스 파이썬 라이브러리이다. 이 플랫폼 독립적인 라이브러리는 확장형 분석 의미론, 의미론적 구조를 위한 평문 문서 분석, 의미론적으로 유사한 문서 검색 기능을 지원한다. 인간의 감독 없이 대량의 텍스트를 처리하는 것이 목적이다.
아마존 컴프리렌드는 머신러닝 경험이 필요 없다. 그 목적은 조직들이 이메일, 고객 리뷰, 소셜 미디어, 지원 티켓, 기타 텍스트에서 통찰을 얻을 수 있도록 돕는 것이다. 정서 분석, 발화 일부 추출, 토큰화 등을 활용해 말 이면의 의도를 분석한다.
IBM 왓슨 톤 애널라이저의 목적은 소셜 리스닝, 챗봇 통합, 고객 서비스 모니터링이다. 고객의 입장에서 정서와 어조를 분석하여 고객 서비스 통화 및 채팅 대화를 모니터링할 수 있다.
구글 클라우드 트랜슬레이션은 NLP를 사용하여 소스 텍스트를 조사하고 언어를 판단한 후 신경망 기계 번역을 활용해 텍스트를 역동적으로 다른 언어로 번역한다. API를 통해 사용자는 이 기능을 자신의 프로그램에 통합할 수 있다.

교육과정
자연어처리 애플리케이션을 개발하고 유지하기 위해 배울 수 있는 다양한 리소스가 존재하며, 그중 다수가 무료다.

데이터캠프의 파이썬 자연어처리 입문. 이 무료 과정은 15개의 동영상과 51개의 연습문제를 제공하며 파이썬을 이용한 NLP의 기본을 다룬다. 단어를 확인하고 분리하는 방법, 텍스트에서 주제를 추출하는 방법, 자신만의 가짜 뉴스 분류기를 개발하는 방법을 다룬다.
유데미(Udemy)의 NLP 입문. 이 입문 과정은 파이썬과 NLT(Natural Language Toolkit)을 텍스트 처리 및 분석에 대한 직접 경험을 제공한다. 3시간짜리 주문식 동영상, 3개의 글, 16개의 다운로드 가능한 리소스로 구성된다. 이 교육과정의 비용은 19.99달러이며 완료 인증서가 포함된다.
유데미의 파이썬을 이용한 NLP 실습. 이 교육과정은 기본적인 언어 프로그래밍 경험, 객체 지향적 프로그래밍 개념에 대한 이해, 중급 수학에 대한 기본 지식, 행렬 연산에 대한 지식이 있는 사람을 위한 것이다. 완전히 프로젝트에 기반하며 실시간 트윗 정서 예측을 위한 텍스트 분류기와 글을 가져와 요약을 찾을 수 있는 글 요약기가 포함된다. 이 교육과정은 10.5시간 분량의 주문식 동영상 및 8개의 글로 구성된다. 이 교육과정의 비용은 19.99달러이며 완료 인증서가 포함된다.
에드엑스(edX)의 NLP. 마이크로소프트가 에드엑스를 통해 제공하는 이 6주 교육과정은 자연어처리와 전통적인 머신러닝 방법 사용에 대한 개요를 제공한다. 통계적 기계 번역과 DSSM 및 그 적용을 다룬다. 또한 자연어처리 및 시각 언어 복합 지능에 적용되는 심도 깊은 강화 학습 기법을 다룬다. 고급 과정이며 이수한 사람은 99달러에 자격증을 받을 수 있다.
코세라(Coursera)의 NLP. 코세라의 고급 ML 전문화에 포함된 이 과정은 정서 분석, 요약, 대화 상태 추적 등의 자연어처리 작업을 다룬다. 코세라는 이것이 고급 과정이며 이수하려면 주당 4~5시간씩 5주 동안 공부해야 한다고 밝혔다.
코세라의 텐서플로 NLP. 이 과정은 코세라의 연습 전문화 텐서플로에 포함되어 있으며 텐서플로를 사용하여 텍스트를 처리하고 신경망에 문장을 입력할 수 있는 자연어처리 시스템을 구축하는 방법을 다룬다. 코세라는 이것이 중급 과정이며 이수하려면 주당 4~5시간씩 4주 동안 공부해야 한다고 밝혔다.
 
공익
기업들이 데이터를 처리할 수 있도록 돕는 것 외에 정서 분석은 사회를 이해하는 데도 도움이 된다. 예를 들어, 페리스코픽은 NLP와 시각 인식을 결합하여 도널드 트럼프 대통령의 정서적 상태를 분석하기 위해 언어 및 표정을 처리하는 데이터 엔진인 트럼프 이모티코스터를 개발했다.

유사한 기술로 학교 총기 난사 사건을 예방할 수 있다. 컬럼비아대학교에서는 연구원들이 9,000명의 위험에 처한 젊은이들이 게시한 2백만 개의 트윗을 처리하여 다음의 질문에 대한 답을 찾고 있다. 10대가 점차 폭력적으로 되면서 언어가 어떻게 변화할까?

데스몬드 패턴 프로그램 책임자는 “문제가 되는 내용은 시간이 지나면서 발전한다”라고 말했다. 위험에 처한 젊은이는 점차 위기에 봉착하면서 언어를 사용해 도움을 청한다. 그러면 자연어처리가 문제가 되는 정서 상태를 포착하여 사회복지사들이 개입할 수 있도록 한다.

페리스코픽과 마찬가지로 컬럼비아는 정서 분석에 이미지 인식을 결합하여 정확도를 높였다. 패턴은 컴퓨터 비전이 트윗에 첨부된 사진을 분석한 후 머신러닝이 이를 언어와 함께 분석하여 ‘이미지의 실제 정서’를 알려준다. 슬픔에 관한 이미지인가? 위협에 관한 이미지인가? 이미지에서 더욱 복잡하게 이해하는 데 도움이 되는 것은 무엇일까? 학교 총기사건 외에 컬럼비아 프로그램은 범죄 조직 폭력을 방지할 수 있기를 바라고 있다.

개인적인 발전
자연어처리는 자신의 정서적 상태를 모니터링하는 데 도움이 될 수 있다. 워봇(Woebot)은 페이스북 메신저 챗봇 또는 단독형 앱을 통해 사용자와 연락하는 전자 치료사다. 하지만 아직 수준 높은 정서 분석에는 도달하지 못했다. 워봇은 특히 우울감과 불안만 추적하여 사용자가 비상사태에 직면했음을 알릴 수 있는 단어를 찾는다. ciokr@idg.co.kr
 
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.