Offcanvas

AI / How To / 빅데이터 | 애널리틱스 / 오픈소스

생성형 AI·LLM 실험의 좋은 출발점··· 오픈소스 NLP 도구 3가지

2023.07.12 Isaac Sacolick  |  InfoWorld
텍스트를 비롯된 비구조화된 데이터 뭉치는 기업에게 황금과 같은 존재일 수 있다. 그러나 어디서부터 어떻게 시작해야 할까? 이를 위한 3종의 인기 도구를 정리했다.
 
Image Credit : Getty Images Bank

개발자와 데이터 과학자는 생성형 AI 및 대형 언어 모델(Large Language Models, LLM)을 사용해 대량의 문서 및 비정형 데이터를 쿼리하곤 한다. 돌리 2.0(Dolly 2.0), 일루더AI 피티아(EleutherAI Pythia), 메타의 AI 라마(AI LLaMa), 스태빌리티LM(StabilityLM) 등을 포함한 오픈소스 LLM은 모두 자연어 프롬프트를 받아 요약된 응답을 생성하는 AI 작업의 출발점이다. 

플루리(Fluree)의 CEO이자 공동 설립자인 브라이언 플랫츠는 “지식 및 정보의 원천으로서 텍스트 포맷이 기본이다. 그러나 텍스트 처리의 복잡성을 완화하는 엔드 투 엔드 솔루션은 아직 없다. 대부분의 조직이 정형 혹은 반정형 데이터를 중앙 집중식 데이터 플랫폼으로 통합했으나, 비정형 데이터의 경우 여전히 잊혀지고 활용되지 않고 있다”라고 설명했다. 

조직 및 팀이 자연어 처리(Natural Language Processing, NLP) 기능을 실험하고 있지 않을 경우 업계의 경쟁업체보다 뒤처지고 있을 가능성이 높다. 2023 전문가 NLP 설문조사 보고서(Expert NLP Survey Report)에 따르면, 조직의 77%가 NLP에 대한 지출을 늘릴 계획이라고 답했으며, 54%는 타임 투 프로덕션(time-to-production)이 성공적인 NLP 프로젝트를 위한 최고 ROI(투자 수익률) 지표라고 답했다.
 
NLP 사용 사례
비정형 데이터 및 텍스트 뭉치가 있는 경우, 일반적인 비즈니스 요구사항으로는 다음과 같은 것들이 있다.

· 이름, 날짜, 장소 및 제품을 식별하여 개체 추출
· 통화 및 기타 수량 검색을 위한 패턴 인식
· 비즈니스 용어, 주제 및 텍소노미(taxonomies)로 분류
· 긍정, 부정 및 풍자를 포함한 감정 분석
· 문서의 주요 요점 요약
· 기타 언어로의 기계 번역
· 텍스트를 기계가 읽을 수 있는 반정형 표현으로 변환하는 종속성 그래프

경우에 따라서는 플랫폼 혹은 애플리케이션에 NLP 기능을 번들로 제공하는 게 바람직하다. 예를 들어, LLM은 질문하기를 지원하고, AI 검색 엔진은 검색 및 추천을 가능케하며, 챗봇은 상호작용을 지원하는 식이다. 정보 추출 및 비정형 문서와 텍스트의 보강을 위해 NLP 도구를 사용하는 게 적합한 경우도 있다.

개발자 및 데이터 과학자가 비정형 문서를 검색하고 프로덕션 준비(production-ready) NLP 처리 엔진을 개발하는 데 널리 사용하는 오픈소스 NLP 도구 3종을 살펴본다.

자연어 툴킷(NLTK)
2001년 출시된 자연어 툴킷(Natural Language Toolkit, NLTK)은 인기 있는 NLP 파이썬 라이브러리 중 하나다. NLTK는 깃허브에서 118만 개 이상의 별점을 자랑하며, 100개 이상의 훈련된 모델을 가지고 있다. 

SPR의 데이터 및 분석 책임자인 스티븐 데보는 “NLP용으로 가장 중요한 도구는 아파치 2.0에 따라 라이선스가 부여된 자연어 툴킷이라고 생각한다. 모든 데이터 과학 프로젝트에서 알고리즘이 사용할 데이터 프로세싱 및 클리닝은 상당한 시간 및 노력을 필요로 한다. NLTK의 경우, 텍스트를 알고리즘이 더욱 쉽게 해석할 수 있도록 불용어(stop words)를 어간 추출(stemming), 원형 복원(lemmatization), 태깅(tagging), 제거(removing)하고 단어 벡터를 다수의 문어에 걸쳐 삽입하는 등의 작업 대다수를 가속화한다”라고 말했다. 

NLP를 처음 접하는 개발자를 위한 많은 예시(초보자용 실습 가이드와 포괄적 개요 등)를 갖추고 있다는 점은 NLTK의 장점이다. 누구나 NLP 기술을 배우는 사람이라면 이 라이브러리를 먼저 시도하고자 할 것이다. 토큰화(tokenization), 스테밍(stemming) 및 청킹(chunking)과 같은 기본 기술을 실험할 수 있는 간단한 방법을 제공하기 때문이다.  
 
스페이시
스페이시(spaCy)는 2016년 1.0 버전 라이브러리가 출시된 바 있다. 스페이시는 72개 이상의 언어를 지원하고 성능 벤치마크를 게시하며 깃허브에서 2만 5,000개 이상의 별점을 받았다. 

도미노 데이터 랩(Domino Data Lab)의 EMEA 데이터 과학 책임자인 니콜레이 맨체브는 다음과 같이 말했다.

“무료 오픈소스 파이썬 라이브러리인 스페이시는 방대한 양의 텍스트에서 신속한 속도로 자연어 처리를 수행하기 위한 고급 기능을 제공한다. 스페이시를 통해 사용자는 문서 분석, 챗봇 기능 및 기타 모든 형태의 텍스트 분석을 뒷받침하는 모델 및 프로덕션 애플리케이션을 구축할 수 있다. 현재 스페이시 프레임워크는 텍스트에서의 키워드, 개체 및 지식 추출과 같은 산업 사용 사례를 위한 파이썬의 인기 있는 자연어 라이브러리 중 하나다.”

스페이시 튜토리얼은 명명된 엔티티 인식 및 품사(Part-Of-Speech, POS) 태깅을 포함해 NLTK와 유사한 기능을 보여준다. 한 가지 장점은 스페이시가 문서 개체를 반환하고 단어 벡터를 지원해 개발자가 NLP 후 추가 데이터 처리 및 텍스트 분석을 수행할 수 있는 유연성을 더 많이 제공할 수 있다는 점이다.  

스파크 NLP
이미 아파치 스파크(Apache Spark)를 사용하고 인프라를 구성한 경우, 스파크 NLP(Spark NLP)는 자연어 처리 실험 시작을 위한 가장 빠른 경로일 수 있다. 스파크 NLP는 AWS, 애저 데이터브릭스, 도커 등 여러 설치 옵션을 갖추고 있다. 

존스노우랩스(John Snow Labs)의 CTO인 데이비드 텔비는 “스파크 NLP는 기업이 자유 텍스트 문서에서 최고 수준의 정확성으로 정보 및 답변을 추출할 수 있도록 하는 널리 사용되는 오픈소스 자연어 처리 라이브러리다. 이는 임상 기록에만 존재하는 관련 건강 정보의 추출부터 소셜 미디어에서의 혐오 발언 및 가짜 뉴스 식별, 법적 합의 및 금융 뉴스 요약에 이르기까지 모든 작업을 가능케한다”라고 설명했다. 

스파크 NLP의 차별화 요소는 의료, 금융 및 법적 도메인 언어 모델일 것이다. 이러한 상용 제품은 의료 분야에서 약물 이름 및 투약량을 식별하는 사전 훈련된 모델, 주식 시세 표시기(stock tickers)와 같은 금융기관 인식, 회사 이름 및 임원의 법적 지식 그래프와 함께 제공된다. 

탤비는 스파크 NLP를 통해 조직은 모델 개발 시 업프론트(upfront) 훈련을 최소화할 수 있다고 설명했다. 그는 “이 무료 오픈소스 라이브러리에는 1만 1,000개 이상의 사전 훈련된 모델과 이러한 모델을 쉽게 재사용, 훈련, 조정 및 확장할 수 있는 기능이 있다”라고 말했다.

NLP 실험을 위한 모범 준칙
필자는 NLP 기능을 사용해 구축된 여러 SaaS 제품 개발을 감독해본 바 있다. 첫 NLP는 자동차, 일자리, 부동산 검색을 포함한 신문의 항목별 광고를 검색하는 SaaS 플랫폼이었다. 그 다음 건물 시방서 및 설계도를 포함한 상업적 건설 문서에서 정보를 추출하기 위한 NLP 개발을 주도했다. 

그간의 경험에 기반해 새로운 영역에서 NLP를 시작할 경우 다음과 같은 작업을 수행할 것을 조언한다:

· 작지만 대표할 수 있는 문서 혹은 텍스트의 예로 시작한다. 
· 타겟 최종 사용자 페르소나와 추출된 정보가 워크플로우를 개선하는 방법을 파악한다. 
· 필요 정보 추출 및 타겟 정확도 지표를 지정한다. 
· 몇 가지 접근방식을 테스트하고 속도 및 정확도 메트릭을 사용해 벤치마킹한다. 
· 특히 문서의 크기 및 폭을 늘릴 때 정확도를 반복적으로 개선한다. 
· 데이터 품질 해결 및 예외 처리를 위한 데이터 관리 도구를 제공할 것으로 예상한다

새로운 문서 유형을 검색 및 실험하는 데 사용되는 NLP 도구가 요구사항을 정의하는 데 도움이 될 수 있다. 그런 다음, 프로덕션 준비 NLP 데이터 파이프라인의 구축 및 지원에 비용이 많이 들 수 있으므로 NLP 기술에 대한 검토를 오픈소스 및 상용 옵션을 포함하도록 확장한다. 

LLM이 점차 관심을 받는 지금 NLP 기능에 대한 투자가 부족할 경우 경쟁업체에 뒤처질 수 있다. 이 글에 소개된 오픈소스 도구 중 하나로 시작해 예산 및 요구 사항에 맞게 NLP 데이터 파이프라인을 구축해볼 수 있을 것이다. 

* Isaac Sacolick는 애자일, 데브옵스, 데이터 과학을 다룬 ‘Driving Digital: The Leader’s Guide to Business Transformation through Technology’의 저자다. ciokr@idg.co.kr
 
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
Sponsored
추천 테크라이브러리

회사명:한국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.