Objective
Ranking papers by raw citation count is shallow — being cited by influential papers should count more than being cited by obscure ones. We approximate PageRank-style influence with a two-hop weighted score on a citation graph, surfacing the seminal works in a research field.
Step 1: Create the graph
// Papers in the deep-learning lineage
MERGE (alex:Paper {title: "AlexNet (2012)", year: 2012, field: "Deep Learning"})
MERGE (vgg:Paper {title: "VGG Networks (2014)", year: 2014, field: "Deep Learning"})
MERGE (resnet:Paper {title: "ResNet (2015)", year: 2015, field: "Deep Learning"})
MERGE (incept:Paper {title: "GoogLeNet (2014)", year: 2014, field: "Deep Learning"})
MERGE (batch:Paper {title: "Batch Normalization (2015)", year: 2015, field: "Deep Learning"})
MERGE (drop:Paper {title: "Dropout (2014)", year: 2014, field: "Deep Learning"})
MERGE (att:Paper {title: "Attention is All You Need (2017)", year: 2017, field: "NLP"})
MERGE (bert:Paper {title: "BERT (2018)", year: 2018, field: "NLP"})
MERGE (gpt:Paper {title: "GPT-3 (2020)", year: 2020, field: "NLP"})
MERGE (dall:Paper {title: "DALL-E (2021)", year: 2021, field: "Multimodal"})
MERGE (clip:Paper {title: "CLIP (2021)", year: 2021, field: "Multimodal"})
// Citation edges (citer)-[:CITES]->(cited)
MERGE (vgg)-[:CITES]->(alex)
MERGE (resnet)-[:CITES]->(alex)
MERGE (resnet)-[:CITES]->(vgg)
MERGE (resnet)-[:CITES]->(batch)
MERGE (incept)-[:CITES]->(alex)
MERGE (batch)-[:CITES]->(alex)
MERGE (drop)-[:CITES]->(alex)
MERGE (att)-[:CITES]->(resnet)
MERGE (att)-[:CITES]->(drop)
MERGE (bert)-[:CITES]->(att)
MERGE (bert)-[:CITES]->(drop)
MERGE (gpt)-[:CITES]->(att)
MERGE (gpt)-[:CITES]->(bert)
MERGE (clip)-[:CITES]->(att)
MERGE (clip)-[:CITES]->(resnet)
MERGE (clip)-[:CITES]->(bert)
MERGE (dall)-[:CITES]->(att)
MERGE (dall)-[:CITES]->(clip);