"제가 뭘 아는지 알고 싶어요. 이게 바로 Knowledge Graph가 기업에서 하는 역할이죠."
이번 주 5분 인터뷰에서는 GraphAware가 어떻게 Natural Language Processing을 사용해서 기업들이 조직 전체에 흩어져 있는 지식을 더 잘 이해하도록 돕는지 알아볼 거예요.
GraphAware에 대해 간단히 소개해주실 수 있나요?
알레산드로 네그로 박사: 저희는 주로 그래프 컨설턴트예요. 다시 말해, 그래프를 사용하기로 결정한 회사에 다양한 전문 서비스와 솔루션을 제공하죠. Neo4j를 인프라의 일부로 활용해서요.
이미 Neo4j를 가지고 있고, 이걸로 더 많은 걸 얻고 싶어 하는 회사도 도와드리고 있어요. 특히 Neo4j를 기반으로 구축된 Machine Learning, 추천 시스템, Natural Language Processing 같은 서비스를 제공하고 있죠.
현재 진행 중인 Neo4j 프로젝트에 대해 말씀해주실 수 있나요?
흑인: 지난 몇 년 동안 정말 흥미로운 프로젝트들을 많이 진행해왔어요. 요즘은 기업들이 이미 가지고 있는 데이터에서 더 많은 가치를 뽑아낼 수 있도록 돕고 있죠. 예를 들어, 은행이 더 나은 사기 탐지 분석을 구현하도록 돕고 있어요. 그래프 알고리즘을 사용해서 그래프 모델을 기반으로 기존 규칙 기반으로는 찾기 어려웠던 사기 행위를 찾아내는 거죠. 분석가들이 더 효과적이고 효율적으로 조사할 수 있도록 그래프 시각화도 제공하고 있답니다.
전자상거래 기업들이 더 나은 추천 시스템을 구축하거나, Semantic Search를 구현해서 고객 경험을 개선하도록 지원하기도 해요. 최근에는 텍스트 데이터에서 지식을 추출해달라는 요청이 점점 늘고 있는 추세예요.
GraphAware는 Neo4j에서 Natural Language Processing 관련 작업을 많이 한다고 들었어요. 자세히 설명해주실 수 있나요?
흑인: Natural Language Processing 작업은 몇 년 전 자선 단체와 함께 일하면서 시작하게 됐어요. 그들은 저희에게 사람들의 의견과 이야기를 모아서, 텍스트 데이터를 기반으로 잠자리나 먹을 곳, 의료 지원을 받을 곳, 더 나은 직업을 찾을 수 있는 곳에 대한 추천을 제공해달라고 요청했죠. Natural Language Processing으로 그래프 모델을 보완하는 게 최종 사용자에게 더 나은 서비스를 제공하는 방법이라는 걸 알게 됐어요.
보통 텍스트 데이터는 비정형 데이터라고 생각하지만, 언어는 문법이나 어휘 같은 구조가 많기 때문에 완전히 맞는 말은 아니에요. 이런 구조는 언어 자체에 숨겨져 있죠. Natural Language Processing을 사용하면 이런 구조를 추출해서 그래프 형태로 저장할 수 있어요. 데이터를 그래프 형식으로 저장하면 여러 가지 이점이 있거든요.
처음에는 한 고객으로 시작했지만, 이 개념을 발전시켜서 그래프 데이터베이스 위에 Natural Language Processing 기능을 제공하는 Neo4j 플러그인으로 만들었어요. 시간이 지나면서 이걸 Hume이라는 제품으로 발전시켰죠.
Hume이 무엇이고, 어떤 기능을 하는지 좀 더 자세히 설명해주실 수 있나요?
흑인: "제가 뭘 아는지 알고 싶어서 전화했어요."라고 말했던 잠재 고객의 말로 설명해볼게요. 그 말을 듣고 "Hume이 기업을 위해 무엇을 할 수 있는지 설명하는 최고의 방법이네!"라고 생각했죠. Hume은 기업이 여러 데이터 사일로 및 소스에서 데이터를 수집하고, 구조적이고 일관된 방식으로 Knowledge Graph를 구축하도록 도와요. 더 넓은 의미의 Knowledge Graph라고 할 수 있죠. 즉, 속성을 가진 상호 연결된 엔터티들의 집합인 거예요. 여러 조직 단위에 속한 사람들 간의 협업 결과이기 때문에 협업적이라고도 할 수 있고요.
이 과정을 거치면 기업은 새로운 가치를 창출하는 새로운 자산을 얻게 돼요. 왜냐하면 기업은 이미 알고 있는 것을 더 잘 이해하게 되거든요. 그게 바로 그들의 지식이죠. 단지 여러 조직 단위나 여러 사람에게 흩어져 있을 뿐이었던 거예요.