{"url":"/dataset/upfd","name":"UPFD","full_name":"User Preference-aware Fake News Detection","description_markdown":"For benchmarking, please refer to its variant [UPFD-POL](https://paperswithcode.com/dataset/upfd-pol) and [UPFD-GOS](https://paperswithcode.com/dataset/upfd-gos).\r\n\r\nThe dataset has been integrated with [Pytorch Geometric](https://github.com/rusty1s/pytorch_geometric/blob/master/examples/upfd.py) (PyG) and [Deep Graph Library](https://github.com/dmlc/dgl/blob/master/python/dgl/data/fakenews.py) (DGL). You can load the dataset after installing the latest versions of PyG or DGL. \r\n\r\nThe UPFD dataset includes two sets of tree-structured graphs curated for evaluating binary graph classification, graph anomaly detection, and fake/real news detection tasks. The dataset is dumped in the form of [Pytorch-Geometric](https://github.com/rusty1s/pytorch_geometric) dataset object. You can easily load the data and run various GNN models using PyG.\r\n\r\nThe dataset includes fake&real news propagation (retweet) networks on Twitter built according to fact-check information from [Politifact](https://www.politifact.com/) and [Gossipcop](https://www.gossipcop.com/).\r\nThe news retweet graphs were originally extracted by [FakeNewsNet](https://github.com/KaiDMML/FakeNewsNet).\r\nEach graph is a hierarchical tree-structured graph where the root node represents the news; the leaf nodes are Twitter users who retweeted the root news.\r\nA user node has an edge to the news node if he/she retweeted the news tweet. Two user nodes have an edge if one user retweeted the news tweet from the other user. \r\n\r\nWe crawled near 20 million historical tweets from users who participated in fake news propagation in FakeNewsNet to generate node features in the dataset.\r\nWe incorporate four node feature types in the dataset, the 768-dimensional `bert` and 300-dimensional `spacy` features \r\nare encoded using pretrained [BERT](https://github.com/hanxiao/bert-as-service) and [spaCy](https://spacy.io/models/en#en_core_web_lg) word2vec, respectively.\r\nThe 10-dimensional `profile` feature is obtained from a Twitter account's profile.\r\nYou can refer to [profile_feature.py](https://github.com/safe-graph/GNN-FakeNews/blob/master/utils/profile_feature.py) for profile feature extraction.\r\nThe 310-dimensional `content` feature is composed of a 300-dimensional user comment word2vec (spaCy) embedding plus a 10-dimensional profile feature.\r\n\r\nThe dataset statistics is shown below:\r\n\r\n| Data  | #Graphs  | #Fake News| #Total Nodes  | #Total Edges  | #Avg. Nodes per Graph  |\r\n|-------|--------|--------|--------|--------|--------|\r\n| Politifact | 314   |   157    |  41,054  | 40,740 |  131 |\r\n| Gossipcop |  5464  |   2732   |  314,262  | 308,798  |  58  |\r\n\r\n\r\nPlease refer to the [paper](https://arxiv.org/pdf/2104.12259.pdf) for more details about the UPFD dataset.\r\n\r\nDue to the Twitter policy, we could not release the crawled user's historical tweets publicly.\r\nTo get the corresponding Twitter user information, you can refer to the news lists under `\\data` in our [github repo](https://github.com/safe-graph/GNN-FakeNews)\r\nand map the news id to [FakeNewsNet](https://github.com/KaiDMML/FakeNewsNet).\r\nThen, you can crawl the user information by following the instruction on FakeNewsNet.\r\nIn the UPFD project, we use [Tweepy](https://www.tweepy.org/) and [Twitter Developer API](https://developer.twitter.com/en) to get the user information.","description_withheld":null,"homepage":"https://github.com/safe-graph/GNN-FakeNews","introduced_date":"2021-04-25","introduced_date_note":null,"introduced_by":{"paper":"/paper/user-preference-aware-fake-news-detection","title":"User Preference-aware Fake News Detection","first_author":"Yingtong Dou","url":null},"license":{"name":"Apache-2.0","url":"https://github.com/safe-graph/GNN-FakeNews/blob/main/LICENSE"},"modalities":[{"name":"Texts","url":"/datasets/modality/texts"},{"name":"Graphs","url":"/datasets/modality/graphs"}],"tasks":[{"name":"Anomaly Detection","url":"/task/anomaly-detection","datasets_with_task":"/datasets/task/anomaly-detection"},{"name":"Graph Classification","url":"/task/graph-classification","datasets_with_task":"/datasets/task/graph-classification"},{"name":"Fake News Detection","url":"/task/fake-news-detection","datasets_with_task":"/datasets/task/fake-news-detection"},{"name":"Misinformation","url":"/task/misinformation","datasets_with_task":"/datasets/task/misinformation"}],"languages":[{"name":"English","url":"/datasets/language/english"}],"variants":["UPFD","UPFD-POL","UPFD-GOS"],"data_loaders":[{"repo":"https://github.com/rusty1s/pytorch_geometric","url":"https://pytorch-geometric.readthedocs.io/en/latest/modules/datasets.html","frameworks":["pytorch"]},{"repo":"https://github.com/safe-graph/GNN-FakeNews","url":"https://github.com/safe-graph/GNN-FakeNews","frameworks":["pytorch"]}],"num_papers_in_archive":13,"source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28"},"benchmarks":[],"papers_with_a_benchmark_row":[],"syntology_totals":{"read_at":"2026-09-24T18:15:14+00:00","papers_with_samples":0,"samples_harvested":0,"samples_ran":0,"samples_unverified":0,"pointer_only_for_licence":0,"papers_with_no_sample_that_ran":0,"note":"the per-paper counts above, summed; not a rate"},"papers_note":"The archive never published its papers-using-dataset list; these are papers with a leaderboard row on this dataset's benchmarks."}