- Graph Data Science
Graph Data Science(GDS)에 대한 내부자 가이드에는 무엇이 포함될까요?
저희는 이걸 GDS의 정말 멋진 기능이라고 생각하고 싶어요. 알고리즘 *말고* GDS 전문가가 알아야 할 팁과 요령 같은 것들이요.
이 블로그 시리즈에서는 메모리 관리부터 그래프 변환에 이르기까지 다양한 주제를 다룰 거예요. 트랜잭션 데이터베이스를 알고리즘을 실행하려는 올바른 데이터 하위 집합으로 재구성할 수 있는 그래프 카탈로그의 내용도 다룰 거고요. GDS 1.3에서 방금 출시한 세분화된 보안을 위한 RBAC 통합, 알고리즘 조정 및 그래프 내보내기를 사용한 그래프 버전 관리에 대해 이야기해볼게요.
또한 그래프 알고리즘의 계층과 새로운 기능에 대한 조기 액세스를 위한 알파 계층에 대해 설명하고 일부 그래프 임베딩을 살짝 엿볼 수 있도록 보여드릴게요.
마지막으로, 자체 알고리즘을 실행하고 Java에서 Pregel API를 사용하여 자체 알고리즘을 작성하는 방법을 설명할 거예요.
이번 포스팅에서는 Graph Data Science™ 라이브러리, 데이터 과학 여정을 지원하는 Neo4j의 제품, 그리고 지난 몇 번의 릴리스 동안 알고리즘에 적용한 일부 업데이트 및 변경 사항에 대한 간략한 개요를 제공할게요.
Graph Data Science 라이브러리의 배경
GDS 라이브러리 전문가 팁을 살펴보기 전에 Graph Data Science에 대한 몇 가지 배경 지식을 제공하고 싶어요.
애초에 분석을 위해 Machine Learning(ML)이 포함된 그래프를 사용하는 이유가 궁금하다면, 아주 간단하게 이미 가지고 있는 데이터로 더 나은 예측을 얻을 수 있기 때문이에요.
데이터 과학자들이 "데이터가 많을수록 예측 성능이 좋아진다"라고 말하는 걸 종종 듣잖아요? 하지만 문제는 이미 데이터가 충분히 많다는 거죠. 그걸 관계라고 부르고, 이미 데이터 세트 안에 숨어있다는 사실!
현재 많은 데이터 과학 접근 방식은 데이터 포인트 간의 연결, 그리고 그 네트워크의 확장된 토폴로지를 무시하는 경향이 있어요. 이게 정말 예측에 중요한 요소가 될 수 있는데 말이죠.
관계를 명시적으로 통합하고 구조적 정보를 데이터에 추가하면 결과를 훨씬 좋게 만들 수 있어요. Machine Learning 모델에 예측 "그래프" 기능을 넣거나, 어떤 예측을 하든 관계를 실제로 사용하지 않으면 답할 수 없는 질문에 답하는 데 도움이 되거든요.
중요한 건, 지금 하고 있는 일을 버리라는 이야기가 아니라는 점이에요.
그래프, 특히 그래프 기반 Feature Engineering의 장점은 현재 분석 및 ML 파이프라인에 추가할 수 있다는 거예요. 그러니까 지금 하는 일을 계속하면서, 관계도 함께 활용해보세요!
Neo4j는 그래프 데이터 과학을 수행하는 데 어떻게 도움이 될까요?
Neo4j는 최고의 엔터프라이즈 Graph Database예요. 연결된 데이터를 저장하기 위한 확장 가능하고 안전하며 성능이 뛰어난 시스템이죠. 하지만 Neo4j는 업계 최대 규모의 그래프 전용 투자이기도 해요. 이게 여러분에게 뭘 의미하냐고요? 저희는 실무자에게 데이터베이스뿐만 아니라 Graph Data Science를 위한 다른 전용 제품도 제공하고 있다는 거죠.
- Neo4j Graph Database
연결된 데이터를 영구적인 Graph Database에 저장하고, 데이터 과학 결과를 쉽게 저장하고 검색할 수 있어요.
분석 작업 공간과 50개 이상의 알고리즘을 제공하는 플러그인이에요.- Neo4j Bloom
Neo4j의 데이터 시각화 및 탐색 도구랍니다.
Graph Data Science를 할 때는 알고리즘'만' 필요한 게 아니에요. 그래프 데이터를 올바른 형태로 저장할 공간(데이터베이스)이 필요하고, 데이터 과학자는 자신이 발견한 내용을 시각적으로 탐색하고 비즈니스 라인이나 해당 분야 전문가에게 설명할 수 있어야 해요. 그래서 Bloom과 같은 시각화 도구가 중요한 거죠.
Neo4j는 Graph Data Science를 수행하는 데 필요한 완벽한 도구 세트를 제공한답니다.
Graph Data Science 라이브러리에는 무엇이 있나요?
GDS 라이브러리는 인메모리 그래프(분석 작업 공간)를 만들기 위한 인프라와 50개 이상의 그래프 알고리즘을 제공하고 있어요.
이러한 알고리즘은 경로 찾기 및 중심성부터 커뮤니티 감지 및 링크 예측에 이르기까지 정말 다양하죠. 그래프의 토폴로지 및 계산 지표를 이해하는 데 도움이 되는 많은 알고리즘이 있답니다. 이러한 알고리즘은 매우 병렬화되어 있어서 수천억 개의 `Node`를 처리하고 확장할 수 있어요.
저희는 GDS를 가능한 한 확장 가능하게 만들기 위해 Neo4j 엔지니어링 팀이 수행한 모든 작업에 깊은 인상을 받았어요. Neo4j 데이터베이스에는 매우 컴팩트한 기본 그래프 스토리지가 있고 데이터 스토리지 및 트랜잭션 워크로드에 아주 적합하거든요.
저희 엔지니어링 팀은 트랜잭션 그래프를 대규모 글로벌 집계 및 순회에 최적화된 계산 그래프로 자동 변환하는 분석 작업 공간을 만들었어요.
인메모리 작업 공간을 사용하면 그래프의 모양을 변경하거나 그래프의 하위 집합을 지정하고 결과를 다시 쓰기 전에 다른 그래프 알고리즘을 계층화하는 등의 작업을 수행할 수 있어요. 그런 다음 준비가 되면 기본 데이터베이스를 업데이트하거나 결과를 완전히 새로운 데이터베이스로 내보낼 수 있죠.
최신 GDS 라이브러리로 업그레이드하지 않았다면 확실히 새로운 기능을 살펴보고 싶을 거예요. GDS 라이브러리에 최근 추가된 기능에는 새롭고 향상된 알고리즘, 표현력이 뛰어난 인메모리 그래프, 고급 기능 지원이 포함되어 있답니다.
새로운 GDS 라이브러리 추가
이제 배경 정보를 다뤘으니... 새로운 소식은 무엇일까요?
1.0 릴리스 이후 완전히 새로운 카테고리인 그래프 임베딩을 포함하여 7개의 새로운 알고리즘을 추가했어요. 또한 일관성을 위한 시딩, 배포 통계, 연속 커뮤니티 ID 등 기존 알고리즘에 새로운 기능을 추가했답니다.
더욱 표현력이 풍부한 인메모리 그래프 기능
인메모리 그래프를 통해 더 나은 성능과 표현성을 가능하게 하는 보다 표현력이 풍부한 기능을 추가했어요. 여기에는 가변성(인 메모리 그래프 업데이트), `Property` 결합 및 변환을 위한 고급 기능, 인메모리 그래프의 데이터를 `Query`하고 상호 작용하는 새로운 방법이 포함돼요.
또한 그래프 로더에 성능 최적화(데이터 변환 속도 향상)를 추가하고 압축을 개선하여 분석 작업 공간의 메모리 공간을 최소화했어요.
고급 기능 및 데이터베이스 통합
마지막으로 GDS 라이브러리가 핵심 데이터베이스와 작동하는 방식을 개선하기 위해 추가한 몇 가지 일반적인 고급 기능이 있어요. 여기에는 보안에 대한 역할 기반 액세스 지원과 Neo4j 지원이 포함되죠.
또한 사용자가 데이터베이스를 올바르게 구성하지 않았을 때 실수로 데이터베이스가 충돌하는 것을 방지하기 위해 향상된 메모리 관리 기능을 추가했어요. 자체 알고리즘을 구현하기 위한 Pregel API도 추가했답니다.
결론
이것은 최근에 추가된 내용을 아주 빠르게 요약한 거예요. 이 시리즈의 향후 블로그에서 더 자세히 설명할 예정이에요.
Graph Data Science에 관한 이 블로그 시리즈의 두 번째 기사에서는 추정 기능을 사용하여 메모리 요구 사항 확인, 그래프 로더를 사용하여 그래프 변환 및 재구성, RBAC를 사용하여 세분화된 보안 적용과 같은 내부 팁과 요령에 대해 논의할 거예요.
GDS 문서 받기
- 그래프 데이터 과학
- Graph Export
- In-Memory Graph
- Machine Learning
에이치시스템즈의 LogTree는 Neo4j 기반 GraphRAG 플랫폼으로, 데이터를 자동으로 지식그래프화하고 자연어 질의로 즉시 답을 제공합니다.
'GraphRAG' 카테고리의 다른 글
| 금융 분석가를 위한 똑똑한 추천 엔진: Machine Learning과 Neo4j, GraphRAG의 만남 (0) | 2026.05.21 |
|---|---|
| Integrating Neo4j with Google Genkit: A Practical Guide (0) | 2026.05.20 |
| 텍스트 임베딩 검색, 아주 간단하지만 효과적인 개선 방법 (0) | 2026.05.20 |
| AWS 환경에서 그래프 기술로 GenAI의 난제들을 해결하다 (0) | 2026.05.20 |
| 500마일도 걷게 만드는 Neo4j GraphRAG 활용법 (0) | 2026.05.20 |
