Skip to main content
QUICK REVIEW

[논문 리뷰] PyKEEN 1.0: A Python Library for Training and Evaluating Knowledge Graph Embeddings

Mehdi Ali, Max Berrendorf|arXiv (Cornell University)|2020. 07. 28.
Advanced Graph Neural Networks참고 문헌 15인용 수 89
한 줄 요약

PyKEEN 1.0은 완전히 구성 가능한 지식 그래프 임베딩 모델, 자동 메모리 최적화, 그리고 KGEs의 학습 및 평가를 위한 광범위한 하이퍼파라미터 최적화를 제공하는 재설계된 Python 라이브러리입니다.

ABSTRACT

Recently, knowledge graph embeddings (KGEs) received significant attention, and several software libraries have been developed for training and evaluating KGEs. While each of them addresses specific needs, we re-designed and re-implemented PyKEEN, one of the first KGE libraries, in a community effort. PyKEEN 1.0 enables users to compose knowledge graph embedding models (KGEMs) based on a wide range of interaction models, training approaches, loss functions, and permits the explicit modeling of inverse relations. Besides, an automatic memory optimization has been realized in order to exploit the provided hardware optimally, and through the integration of Optuna extensive hyper-parameter optimization (HPO) functionalities are provided.

연구 동기 및 목표

  • 다양한 모델 구성 요소를 지원하는 고도로 구성 가능하고 재사용 가능한 KG 임베딩 도구 키트의 필요성을 제시합니다.
  • 상호 작용 모델, 손실 함수, 학습 방식 및 역관계(inverse relations)에 대한 통합되고 구성 가능한 아키텍처를 제공합니다.
  • 표준화된 지표와 확장 가능한 벤치마킹 데이터셋으로 공정하고 재현 가능한 평가를 가능하게 합니다.
  • 확장성과 견고성을 향상시키기 위해 자동 메모리 최적화와 고급 HPO를 도입합니다.
  • 오픈 소스 관행과 도구를 통한 커뮤니티 주도 개발 및 유지보수성을 촉진합니다.

제안 방법

  • KGEM을 네 가지 구성 요소의 합성으로 정의합니다: interaction model, loss function, training approach, 그리고 inverse relations 처리.
  • 유연한 모델 구성을 가능하게 하기 위해 23개의 interaction model, 7개의 loss function, 4개의 정규화항, 2개의 training approaches, 그리고 13개의 내장 데이터셋을 제공합니다.
  • 해당하는 interaction models에 대해 inverse relations의 명시적 모델링을 가능하게 합니다.
  • 구성 요소의 완전한 구성 가능성과 대체 가능성을 보장하기 위한 일관된 API(pykeen.model.Model, pykeen.loss.Loss, pykeen.training.TrainingLoop).
  • 강건한 검증/학습/테스트를 위한 조기 중지와 HPO 워크플로우를 갖춘 하이퍼파라미터 최적화를 위해 Optuna를 통합합니다.
  • 하드웨어를 고려하여 가능한 최대의 학습/평가 배치 크기를 계산하는 자동 메모리 최적화를 구현하고 필요 시 서브 배치를 조정합니다.

실험 결과

연구 질문

  • RQ1KG 임베딩 모델을 어떻게 완전히 구성 가능하게 만들어 구성 요소를 독립적으로 평가할 수 있도록 할 수 있을까요?
  • RQ2학습 및 평가 중 메모리 사용을 자동으로 최적화하기 위해 어떤 메커니즘이 필요할까요?
  • RQ3KG 임베딩 워크플로우에 하이퍼파라미터 최적화를 효과적으로 통합하려면 어떻게 해야 할까요?
  • RQ4강건하고 재현 가능한 KGEM 평가를 위해 필요한 평가 기능(지표, 데이터셋, 역관계)은 무엇입니까?
  • RQ5PyKEEN을 오픈 소스 커뮤니티 프로젝트로 확장하고 유지 관리하려면 어떻게 해야 합니까?

주요 결과

  • PyKEEN 1.0은 23개의 interaction model, 7개의 loss function, 4개의 정규화항, 2개의 training approaches, 6개의 평가 지표, 그리고 13개의 내장 벤치마킹 데이터셋을 지원합니다.
  • 프레임워크는 모델, 손실, 학습 루프를 위한 통합 API를 통해 inverse relations의 명시적 모델링과 완전한 구성 가능성을 가능하게 합니다.
  • 자동 메모리 최적화는 가용 하드웨어에 맞춰 배치 크기를 조정하여 메모리 효율적인 학습 및 평가를 보장합니다.
  • 조기 중지와 함께 Optuna 기반의 하이퍼파라미터 최적화를 통합하여 검증 및 테스트 실행의 견고성을 향상시킵니다.
  • 라이브러리는 자동화된 테스트, CI, 문서를 통해 재현성과 유지 관리를 강조하며 MIT 라이선스하에 출시됩니다.
  • PyKEEN 1.0은 관련 KGEM 라이브러리보다 더 구성 가능하고 기능이 풍부한 것으로 평가되며 확장성과 메모리 관리에 중점을 둡니다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.