Browse real Kinship questions
Explore the published questions, reference answers, and complete entity-relation paths without downloading files or running Python. The labels are already human-readable, so no Wikidata or label service is needed.
Connecting to the Kinship dataset viewer…
Dataset card ↗The source CSV stores the benchmark train/dev/test split in SplitLabel. The Hugging Face API names its CSV split train.
Read-only browser: Records come from the public Kinship dataset through the Hugging Face Dataset Viewer API. The browser filters the entire selected QA collection and caches it until you refresh. These are annotated reference paths, not MINERVA predictions. No graph reconstruction or external entity mapping is performed.
Load the dataset in Python
Use huggingface_hub to download the repository snapshot, then load the graph and questions into pandas DataFrames.
python -m pip install huggingface_hub pandas
Choose a QA file
from pathlib import Path
import pandas as pd
from huggingface_hub import snapshot_download
# Download the Kinship dataset from Hugging Face.
root = Path(snapshot_download(
repo_id="HalcyonSolutions/Kinship",
repo_type="dataset",
))
# The original graph is used for navigation.
triples = pd.read_csv(
root / "kg/orig/triplets.txt",
sep="\t",
header=None,
names=["head", "relation", "tail"],
)
# Load natural-language questions and gold answers.
qa = pd.read_csv(root / "qa/kinship_qa_nhop.csv")
print(triples.head())
print(qa[["Question", "Source-Entity", "Answer-Entity", "Hops"]].head())
What's included?
The repository contains graph triples, QA records with reference paths, and the original Kinship source data. For navigation experiments, use kg/orig/.
Knowledge graph
kg/orig/triplets.txtAll 112 directed triples in tab-separated head, relation, tail format.
Question answering
qa/kinship_qa_*.csvQuestions, start and answer entities, hop counts, reference paths, and split labels.
Graph splits
kg/orig/{train,dev,test}.txtSplit-specific graph triples. The full original graph is provided separately.
Source data
source/kinship.dataThe source Kinship data, preserved with its original attribution and license information.
kg/gender/ graph adds auxiliary gender relations for embedding pretraining. Do not use it for navigation evaluation, since it can introduce shortcut paths.Read the annotated reasoning
Every QA record has an explicit source entity and gold path. Paths are stored as string representations of ordered triples in the Paths column.
import ast
# Decode one gold reasoning path.
example = qa.loc[qa["Hops"] == 2].iloc[0]
path = ast.literal_eval(example["Paths"])
print("Question:", example["Question"])
print("Answer:", example["Answer"])
for head, relation, tail in path:
print(f"{head} --[{relation}]--> {tail}")
# QA split labels are stored in the CSV itself.
test_questions = qa.loc[qa["SplitLabel"] == "test"]
print("Test questions:", len(test_questions))
The example above reads ground-truth annotations. It does not run MINERVA or generate predictions. The QA records use human-readable entity labels.
Next steps
For navigation experiments, pretrained checkpoints, and methods, follow the companion resources.
Complete field descriptions, splits, license, and citations.
Training, preprocessing, checkpoints, and path-based evaluation.
Question-conditioned graph navigation and related resources.
Research paper describing the KGQA navigation framework.
License: CC BY 4.0. If you use Kinship, please credit the original Hinton (1986) dataset and the THESEUS work as described on the dataset card.