diff --git a/asset/dataset_list.json b/asset/dataset_list.json index 7f3fe07e5..9550df70e 100644 --- a/asset/dataset_list.json +++ b/asset/dataset_list.json @@ -1,455 +1,478 @@ { - "data": [ - { - "dataset": "MovieLens", - "dataset_link": "https://github.com/RUCAIBox/RecDatasets/tree/master/dataset_info/MovieLens", - "user_num": "-", - "item_num": "-", - "inter_num": "-", - "sparsity": "-", - "type": "Rating", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/MovieLens.md" - }, - { - "dataset": "Anime", - "dataset_link": "", - "user_num": "73,515", - "item_num": "11,200", - "inter_num": "7,813,737", - "sparsity": "99.05%", - "type": "Rating [-1, 1-10]", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Anime.md" - }, - { - "dataset": "Epinions", - "dataset_link": "", - "user_num": "116,260", - "item_num": "41,269", - "inter_num": "188,478", - "sparsity": "99.99%", - "type": "Rating [1-5]", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Epinions.md" - }, - { - "dataset": "Yelp", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Yelp", - "user_num": "-", - "item_num": "-", - "inter_num": "-", - "sparsity": "-", - "type": "Rating", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Yelp.md" - }, - { - "dataset": "Netflix", - "dataset_link": "", - "user_num": "480,189", - "item_num": "17,770", - "inter_num": "100,480,507", - "sparsity": "98.82%", - "type": "Rating [1-5]", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Netflix.md" - }, - { - "dataset": "Book-Crossing", - "dataset_link": "", - "user_num": "105,284", - "item_num": "340,557", - "inter_num": "1,149,780", - "sparsity": "99.99%", - "type": "Rating [0-10]", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Book-Crossing.md" - }, - { - "dataset": "Jester", - "dataset_link": "", - "user_num": "73,421", - "item_num": "101", - "inter_num": "4,136,360", - "sparsity": "44.22%", - "type": "Rating [-10, 10]", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Jester.md" - }, - { - "dataset": "Douban", - "dataset_link": "", - "user_num": "738,701", - "item_num": "28", - "inter_num": "2,125,056", - "sparsity": "89.73%", - "type": "Rating [0, 5]", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Douban.md" - }, - { - "dataset": "Yahoo Music", - "dataset_link": "", - "user_num": "1,948,882", - "item_num": "98,211", - "inter_num": "111,557,943", - "sparsity": "99.99%", - "type": "Rating [0, 100]", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/YahooMusic.md" - }, - { - "dataset": "KDD2010", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/KDD2010", - "user_num": "-", - "item_num": "-", - "inter_num": "-", - "sparsity": "-", - "type": "Rating", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/KDD2010.md" - }, - { - "dataset": "Amazon", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Amazon", - "user_num": "-", - "item_num": "-", - "inter_num": "-", - "sparsity": "-", - "type": "Rating [0, 5]", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Amazon.md" - }, - { - "dataset": "Pinterest", - "dataset_link": "", - "user_num": "55,187", - "item_num": "9,911", - "inter_num": "1,445,622", - "sparsity": "99.74%", - "type": "-", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Pinterest.md" - }, - { - "dataset": "Gowalla", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Gowalla", - "user_num": "107,092", - "item_num": "1,280,969", - "inter_num": "6,442,892", - "sparsity": "99.99%", - "type": "Check-in", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Gowalla.md" - }, - { - "dataset": "Last.FM", - "dataset_link": "", - "user_num": "1,892", - "item_num": "17,632", - "inter_num": "92,834", - "sparsity": "99.72%", - "type": "Click", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/LastFM.md" - }, - { - "dataset": "DIGINETICA", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/DIGINETICA", - "user_num": "204,789", - "item_num": "184,047", - "inter_num": "993,483", - "sparsity": "99.99%", - "type": "Click", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/DIGINETICA.md" - }, - { - "dataset": "Steam", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Steam", - "user_num": "2,567,538", - "item_num": "32,135", - "inter_num": "7,793,069", - "sparsity": "99.99%", - "type": "Buy", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Steam.md" - }, - { - "dataset": "Ta Feng", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/TaFeng", - "user_num": "32,266", - "item_num": "23,812", - "inter_num": "817,741", - "sparsity": "99.89%", - "type": "Click", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/TaFeng.md" - }, - { - "dataset": "Foursquare", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Foursquare", - "user_num": "-", - "item_num": "-", - "inter_num": "-", - "sparsity": "-", - "type": "Check-in", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Foursquare.md" - }, - { - "dataset": "Tmall", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Tmall", - "user_num": "963,923", - "item_num": "2,353,207", - "inter_num": "44,528,127", - "sparsity": "99.99%", - "type": "Click/Buy", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Tmall.md" - }, - { - "dataset": "YOOCHOOSE", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/YOOCHOOSE", - "user_num": "9,249,729", - "item_num": "52,739", - "inter_num": "34,154,697", - "sparsity": "99.99%", - "type": "Click/Buy", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/YOOCHOOSE.md" - }, - { - "dataset": "Retailrocket", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Retailrocket", - "user_num": "1,407,580", - "item_num": "247,085", - "inter_num": "2,756,101", - "sparsity": "99.99%", - "type": "View/Addtocart/Transaction", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Retailrocket.md" - }, - { - "dataset": "LFM-1b", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/LFM-1b", - "user_num": "120,322", - "item_num": "3,123,496", - "inter_num": "1,088,161,692", - "sparsity": "99.71%", - "type": "Click", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/LFM-1b.md" - }, - { - "dataset": "MIND", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/MIND", - "user_num": "-", - "item_num": "-", - "inter_num": "-", - "sparsity": "-", - "type": "Click", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/MIND.md" - }, - { - "dataset": "BeerAdvocate", - "dataset_link": "", - "user_num": "33,388", - "item_num": "66,055", - "inter_num": "1,586,614", - "sparsity": "99.9281%", - "type": "Rating [0, 5]", - "link_name": "link", - "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#multi_aspect" - }, - { - "dataset": "Behance", - "dataset_link": "", - "user_num": "63,497", - "item_num": "178,788", - "inter_num": "1,000,000", - "sparsity": "99.9912%", - "type": "Likes", - "link_name": "link", - "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#behance" - }, - { - "dataset": "DianPing", - "dataset_link": "", - "user_num": "542,706", - "item_num": "243,247", - "inter_num": "4,422,473", - "sparsity": "99.9967%", - "type": "Rating [0, 5]", - "link_name": "link", - "link_url": "http://yongfeng.me/dataset/" - }, - { - "dataset": "EndoMondo", - "dataset_link": "", - "user_num": "1,104", - "item_num": "253,020", - "inter_num": "253,020", - "sparsity": "99.9094%", - "type": "Workout Logs", - "link_name": "link", - "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#endomondo" - }, - { - "dataset": "Food", - "dataset_link": "", - "user_num": "226,570", - "item_num": "231,637", - "inter_num": "1,132,367", - "sparsity": "99.9978%", - "type": "Rating [0, 5]", - "link_name": "link", - "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#foodcom" - }, - { - "dataset": "GoodReads", - "dataset_link": "", - "user_num": "876,145", - "item_num": "2,360,650", - "inter_num": "228,648,342", - "sparsity": "99.9889%", - "type": "Rating [0, 5]", - "link_name": "link", - "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#goodreads" - }, - { - "dataset": "KGRec", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/KGRec", - "user_num": "-", - "item_num": "-", - "inter_num": "-", - "sparsity": "-", - "type": "Click", - "link_name": "link", - "link_url": "https://www.upf.edu/web/mtg/kgrec" - }, - { - "dataset": "ModCloth", - "dataset_link": "", - "user_num": "47,958", - "item_num": "1,378", - "inter_num": "82,790", - "sparsity": "99.8747%", - "type": "Rating [0, 5]", - "link_name": "link", - "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#clothing_fit" - }, - { - "dataset": "RateBeer", - "dataset_link": "", - "user_num": "29,265", - "item_num": "110,369", - "inter_num": "2,924,163", - "sparsity": "99.9095%", - "type": "Overall Rating [0, 20]", - "link_name": "link", - "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#multi_aspect" - }, - { - "dataset": "RentTheRunway", - "dataset_link": "", - "user_num": "105,571", - "item_num": "5,850", - "inter_num": "192,544", - "sparsity": "99.9688%", - "type": "Rating [0, 10]", - "link_name": "link", - "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#clothing_fit" - }, - { - "dataset": "Twitch", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Twitch", - "user_num": "15,524,309", - "item_num": "6,161,666", - "inter_num": "474,676,929", - "sparsity": "99.9995%", - "type": "Click", - "link_name": "link", - "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#twitch" - }, - { - "dataset": "Criteo", - "dataset_link": "", - "user_num": "-", - "item_num": "-", - "inter_num": "45,850,617", - "sparsity": "-", - "type": "Click", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Criteo.md" - }, - { - "dataset": "Avazu", - "dataset_link": "", - "user_num": "-", - "item_num": "-", - "inter_num": "40,428,967", - "sparsity": "-", - "type": "Click", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Avazu.md" - }, - { - "dataset": "iPinYou", - "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/iPinYou", - "user_num": "19,731,660", - "item_num": "163", - "inter_num": "24,637,657", - "sparsity": "99.23%", - "type": "View/Click", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/iPinYou.md" - }, - { - "dataset": "Phishing websites", - "dataset_link": "", - "user_num": "-", - "item_num": "-", - "inter_num": "11,055", - "sparsity": "-", - "type": "Click", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Phishing%20Websites.md" - }, - { - "dataset": "Adult", - "dataset_link": "", - "user_num": "-", - "item_num": "-", - "inter_num": "32,561", - "sparsity": "-", - "type": "income>=50k [0, 1]", - "link_name": "script", - "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Adult.md" - }, - { - "dataset": "Alibaba-iFashion", - "dataset_link": "", - "user_num": "3,569,112", - "item_num": "4,463,302", - "inter_num": "191,394,393", - "sparsity": "99.9988%", - "type": "Click", - "link_name": "link", - "link_url": "https://github.com/wenyuer/POG" - }, - { - "dataset": "AliEC", - "dataset_link": "", - "user_num": "491,647", - "item_num": "240,130", - "inter_num": "1,366,056", - "sparsity": "99.9988%", - "type": "Click", - "link_name": "link", - "link_url": "https://tianchi.aliyun.com/dataset/dataDetail?dataId=56#1" - } - ] -} + "data": [ + { + "dataset": "MovieLens", + "dataset_link": "https://github.com/RUCAIBox/RecDatasets/tree/master/dataset_info/MovieLens", + "user_num": "-", + "item_num": "-", + "inter_num": "-", + "sparsity": "-", + "type": "Rating", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/MovieLens.md" + }, + { + "dataset": "Anime", + "dataset_link": "", + "user_num": "73,515", + "item_num": "11,200", + "inter_num": "7,813,737", + "sparsity": "99.05%", + "type": "Rating [-1, 1-10]", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Anime.md" + }, + { + "dataset": "Epinions", + "dataset_link": "", + "user_num": "116,260", + "item_num": "41,269", + "inter_num": "188,478", + "sparsity": "99.99%", + "type": "Rating [1-5]", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Epinions.md" + }, + { + "dataset": "Yelp", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Yelp", + "user_num": "-", + "item_num": "-", + "inter_num": "-", + "sparsity": "-", + "type": "Rating", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Yelp.md" + }, + { + "dataset": "Netflix", + "dataset_link": "", + "user_num": "480,189", + "item_num": "17,770", + "inter_num": "100,480,507", + "sparsity": "98.82%", + "type": "Rating [1-5]", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Netflix.md" + }, + { + "dataset": "Book-Crossing", + "dataset_link": "", + "user_num": "105,284", + "item_num": "340,557", + "inter_num": "1,149,780", + "sparsity": "99.99%", + "type": "Rating [0-10]", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Book-Crossing.md" + }, + { + "dataset": "Jester", + "dataset_link": "", + "user_num": "73,421", + "item_num": "101", + "inter_num": "4,136,360", + "sparsity": "44.22%", + "type": "Rating [-10, 10]", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Jester.md" + }, + { + "dataset": "Douban", + "dataset_link": "", + "user_num": "738,701", + "item_num": "28", + "inter_num": "2,125,056", + "sparsity": "89.73%", + "type": "Rating [0, 5]", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Douban.md" + }, + { + "dataset": "Yahoo Music", + "dataset_link": "", + "user_num": "1,948,882", + "item_num": "98,211", + "inter_num": "111,557,943", + "sparsity": "99.99%", + "type": "Rating [0, 100]", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/YahooMusic.md" + }, + { + "dataset": "KDD2010", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/KDD2010", + "user_num": "-", + "item_num": "-", + "inter_num": "-", + "sparsity": "-", + "type": "Rating", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/KDD2010.md" + }, + { + "dataset": "Amazon", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Amazon", + "user_num": "-", + "item_num": "-", + "inter_num": "-", + "sparsity": "-", + "type": "Rating [0, 5]", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Amazon.md" + }, + { + "dataset": "Pinterest", + "dataset_link": "", + "user_num": "55,187", + "item_num": "9,911", + "inter_num": "1,445,622", + "sparsity": "99.74%", + "type": "-", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Pinterest.md" + }, + { + "dataset": "Gowalla", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Gowalla", + "user_num": "107,092", + "item_num": "1,280,969", + "inter_num": "6,442,892", + "sparsity": "99.99%", + "type": "Check-in", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Gowalla.md" + }, + { + "dataset": "Last.FM", + "dataset_link": "", + "user_num": "1,892", + "item_num": "17,632", + "inter_num": "92,834", + "sparsity": "99.72%", + "type": "Click", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/LastFM.md" + }, + { + "dataset": "DIGINETICA", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/DIGINETICA", + "user_num": "204,789", + "item_num": "184,047", + "inter_num": "993,483", + "sparsity": "99.99%", + "type": "Click", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/DIGINETICA.md" + }, + { + "dataset": "Steam", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Steam", + "user_num": "2,567,538", + "item_num": "32,135", + "inter_num": "7,793,069", + "sparsity": "99.99%", + "type": "Buy", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Steam.md" + }, + { + "dataset": "Ta Feng", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/TaFeng", + "user_num": "32,266", + "item_num": "23,812", + "inter_num": "817,741", + "sparsity": "99.89%", + "type": "Click", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/TaFeng.md" + }, + { + "dataset": "Foursquare", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Foursquare", + "user_num": "-", + "item_num": "-", + "inter_num": "-", + "sparsity": "-", + "type": "Check-in", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Foursquare.md" + }, + { + "dataset": "Tmall", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Tmall", + "user_num": "963,923", + "item_num": "2,353,207", + "inter_num": "44,528,127", + "sparsity": "99.99%", + "type": "Click/Buy", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Tmall.md" + }, + { + "dataset": "YOOCHOOSE", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/YOOCHOOSE", + "user_num": "9,249,729", + "item_num": "52,739", + "inter_num": "34,154,697", + "sparsity": "99.99%", + "type": "Click/Buy", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/YOOCHOOSE.md" + }, + { + "dataset": "Retailrocket", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Retailrocket", + "user_num": "1,407,580", + "item_num": "247,085", + "inter_num": "2,756,101", + "sparsity": "99.99%", + "type": "View/Addtocart/Transaction", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Retailrocket.md" + }, + { + "dataset": "LFM-1b", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/LFM-1b", + "user_num": "120,322", + "item_num": "3,123,496", + "inter_num": "1,088,161,692", + "sparsity": "99.71%", + "type": "Click", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/LFM-1b.md" + }, + { + "dataset": "MIND", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/MIND", + "user_num": "-", + "item_num": "-", + "inter_num": "-", + "sparsity": "-", + "type": "Click", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/MIND.md" + }, + { + "dataset": "BeerAdvocate", + "dataset_link": "", + "user_num": "33,388", + "item_num": "66,055", + "inter_num": "1,586,614", + "sparsity": "99.9281%", + "type": "Rating [0, 5]", + "link_name": "link", + "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#multi_aspect" + }, + { + "dataset": "Behance", + "dataset_link": "", + "user_num": "63,497", + "item_num": "178,788", + "inter_num": "1,000,000", + "sparsity": "99.9912%", + "type": "Likes", + "link_name": "link", + "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#behance" + }, + { + "dataset": "DianPing", + "dataset_link": "", + "user_num": "542,706", + "item_num": "243,247", + "inter_num": "4,422,473", + "sparsity": "99.9967%", + "type": "Rating [0, 5]", + "link_name": "link", + "link_url": "http://yongfeng.me/dataset/" + }, + { + "dataset": "EndoMondo", + "dataset_link": "", + "user_num": "1,104", + "item_num": "253,020", + "inter_num": "253,020", + "sparsity": "99.9094%", + "type": "Workout Logs", + "link_name": "link", + "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#endomondo" + }, + { + "dataset": "Food", + "dataset_link": "", + "user_num": "226,570", + "item_num": "231,637", + "inter_num": "1,132,367", + "sparsity": "99.9978%", + "type": "Rating [0, 5]", + "link_name": "link", + "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#foodcom" + }, + { + "dataset": "GoodReads", + "dataset_link": "", + "user_num": "876,145", + "item_num": "2,360,650", + "inter_num": "228,648,342", + "sparsity": "99.9889%", + "type": "Rating [0, 5]", + "link_name": "link", + "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#goodreads" + }, + { + "dataset": "KGRec", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/KGRec", + "user_num": "-", + "item_num": "-", + "inter_num": "-", + "sparsity": "-", + "type": "Click", + "link_name": "link", + "link_url": "https://www.upf.edu/web/mtg/kgrec" + }, + { + "dataset": "ModCloth", + "dataset_link": "", + "user_num": "47,958", + "item_num": "1,378", + "inter_num": "82,790", + "sparsity": "99.8747%", + "type": "Rating [0, 5]", + "link_name": "link", + "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#clothing_fit" + }, + { + "dataset": "RateBeer", + "dataset_link": "", + "user_num": "29,265", + "item_num": "110,369", + "inter_num": "2,924,163", + "sparsity": "99.9095%", + "type": "Overall Rating [0, 20]", + "link_name": "link", + "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#multi_aspect" + }, + { + "dataset": "RentTheRunway", + "dataset_link": "", + "user_num": "105,571", + "item_num": "5,850", + "inter_num": "192,544", + "sparsity": "99.9688%", + "type": "Rating [0, 10]", + "link_name": "link", + "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#clothing_fit" + }, + { + "dataset": "Twitch", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/Twitch", + "user_num": "15,524,309", + "item_num": "6,161,666", + "inter_num": "474,676,929", + "sparsity": "99.9995%", + "type": "Click", + "link_name": "link", + "link_url": "https://cseweb.ucsd.edu/~jmcauley/datasets.html#twitch" + }, + { + "dataset": "Criteo", + "dataset_link": "", + "user_num": "-", + "item_num": "-", + "inter_num": "45,850,617", + "sparsity": "-", + "type": "Click", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Criteo.md" + }, + { + "dataset": "Avazu", + "dataset_link": "", + "user_num": "-", + "item_num": "-", + "inter_num": "40,428,967", + "sparsity": "-", + "type": "Click", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Avazu.md" + }, + { + "dataset": "iPinYou", + "dataset_link": "https://github.com/RUCAIBox/RecommenderSystems-Datasets/tree/master/dataset_info/iPinYou", + "user_num": "19,731,660", + "item_num": "163", + "inter_num": "24,637,657", + "sparsity": "99.23%", + "type": "View/Click", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/iPinYou.md" + }, + { + "dataset": "Phishing websites", + "dataset_link": "", + "user_num": "-", + "item_num": "-", + "inter_num": "11,055", + "sparsity": "-", + "type": "Click", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Phishing%20Websites.md" + }, + { + "dataset": "Adult", + "dataset_link": "", + "user_num": "-", + "item_num": "-", + "inter_num": "32,561", + "sparsity": "-", + "type": "income>=50k [0, 1]", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecDatasets/blob/master/conversion_tools/usage/Adult.md" + }, + { + "dataset": "Alibaba-iFashion", + "dataset_link": "", + "user_num": "3,569,112", + "item_num": "4,463,302", + "inter_num": "191,394,393", + "sparsity": "99.9988%", + "type": "Click", + "link_name": "link", + "link_url": "https://github.com/wenyuer/POG" + }, + { + "dataset": "AliEC", + "dataset_link": "", + "user_num": "491,647", + "item_num": "240,130", + "inter_num": "1,366,056", + "sparsity": "99.9988%", + "type": "Click", + "link_name": "link", + "link_url": "https://tianchi.aliyun.com/dataset/dataDetail?dataId=56#1" + }, + { + "dataset": "Music4All-Onion", + "dataset_link": "", + "user_num": "119,140", + "item_num": "109,269", + "inter_num": "252,984,396", + "sparsity": "-", + "type": "Click", + "link_name": "script", + "link_url": "https://github.com/RUCAIBox/RecSysDatasets/blob/master/conversion_tools/usage/Onion.md" + }, + { + "dataset": "Amazon_M2", + "dataset_link": "", + "user_num": "3,606,349", + "item_num": "1,410,675", + "inter_num": "15,306,183", + "sparsity": "-", + "type": "Click", + "link_name": "Link", + "link_url": "https://www.aicrowd.com/challenges/amazon-kdd-cup-23-multilingual-recommendation-challenge" + } + ] + } + \ No newline at end of file diff --git a/asset/model_list.json b/asset/model_list.json index e75baa9b1..b28b66ded 100644 --- a/asset/model_list.json +++ b/asset/model_list.json @@ -1987,33 +1987,6 @@ "repository": "RecBole", "repo_link": "https://github.com/RUCAIBox/RecBole" }, - { - "category": "Sequential Recommendation", - "cate_link": "/docs/user_guide/model_intro.html#sequential-recommendation", - "year": "2018", - "pub": "ICDM'18", - "model": "SASRec", - "model_link": "/docs/user_guide/model/sequential/sasrec.html", - "paper": "Self-Attentive Sequential Recommendation", - "paper_link": "https://doi.org/10.1109/ICDM.2018.00035", - "authors": "Wang-Cheng Kang and Julian McAuley", - "ref_code": "https://github.com/kang205/SASRec", - "repository": "RecBole", - "repo_link": "https://github.com/RUCAIBox/RecBole" - }, - { - "category": "Knowledge-aware Recommendation", - "year": "2018", - "pub": "MDPI'18", - "model": "CFKG", - "model_link": "/docs/user_guide/model/knowledge/cfkg.html", - "paper": "Learning heterogeneous knowledge base embeddings for explainable recommendation", - "paper_link": "https://doi.org/10.3390/a11090137", - "authors": "Qingyao Ai, Vahid Azizi, Xu Chen, Yongfeng Zhang", - "ref_code": "", - "repository": "RecBole", - "repo_link": "https://github.com/RUCAIBox/RecBole" - }, { "category": "Knowledge-aware Recommendation", "year": "2018", @@ -2143,6 +2116,62 @@ "ref_code": "", "repository": "RecBole", "repo_link": "https://github.com/RUCAIBox/RecBole" + }, + { + "category": "Context-aware Recommendation", + "cate_link": "/docs/user_guide/model_intro.html#context-aware-recommendation", + "year": "2023", + "pub": "SIGIR'23", + "model": "EulerNet", + "model_link": "/docs/user_guide/model/context/eulernet.html", + "paper": "EulerNet: Adaptive Feature Interaction Learning via Euler's Formula for CTR Prediction", + "paper_link": "https://dl.acm.org/doi/10.1145/3539618.3591681", + "authors": "Zhen Tian, Ting Bai, Wayne Xin Zhao, Ji-Rong Wen, Zhao Cao", + "ref_code": "https://github.com/chenyuwuxin/EulerNet", + "repository": "RecBole", + "repo_link": "https://github.com/RUCAIBox/RecBole" + }, + { + "category": "Sequential Recommendation", + "cate_link": "/docs/user_guide/model_intro.html#sequential-recommendation", + "year": "2023", + "pub": "SIGIR'23", + "model": "FEARec", + "model_link": "/docs/user_guide/model/sequential/fearec.html", + "paper": "FEARec: Frequency Enhanced Hybrid Attention Network for Sequential Recommendation", + "paper_link": "https://dl.acm.org/doi/10.1145/3539618.3591689", + "authors": "Xinyu Du, Huanhuan Yuan, Pengpeng Zhao, Jianfeng Qu, Fuzhen Zhuang, Guanfeng Liu, Victor S. Sheng", + "ref_code": "https://github.com/sudaada/FEARec", + "repository": "RecBole", + "repo_link": "https://github.com/RUCAIBox/RecBole" + }, + { + "category": "General Recommendation", + "cate_link": "/docs/user_guide/model_intro.html#general-recommendation", + "year": "2023", + "pub": "SIGIR'23", + "model": "DiffRec", + "model_link": "/docs/user_guide/model/general/diffrec.html", + "paper": "Diffusion Recommender Model", + "paper_link": "https://dl.acm.org/doi/10.1145/3539618.3591663", + "authors": "Wenjie Wang, Yiyan Xu, Fuli Feng, Xinyu Lin, Xiangnan He, Tat-Seng Chua", + "ref_code": "https://github.com/YiyanXu/DiffRec", + "repository": "RecBole", + "repo_link": "https://github.com/RUCAIBox/RecBole" + }, + { + "category": "General Recommendation", + "cate_link": "/docs/user_guide/model_intro.html#general-recommendation", + "year": "2023", + "pub": "SIGIR'23", + "model": "LDiffRec", + "model_link": "/docs/user_guide/model/general/ldiffrec.html", + "paper": "Diffusion Recommender Model", + "paper_link": "https://dl.acm.org/doi/10.1145/3539618.3591663", + "authors": "Wenjie Wang, Yiyan Xu, Fuli Feng, Xinyu Lin, Xiangnan He, Tat-Seng Chua", + "ref_code": "https://github.com/YiyanXu/DiffRec", + "repository": "RecBole", + "repo_link": "https://github.com/RUCAIBox/RecBole" } ] } \ No newline at end of file diff --git a/docs/source/asset/eulernet.png b/docs/source/asset/eulernet.png new file mode 100644 index 000000000..d0bd2a399 Binary files /dev/null and b/docs/source/asset/eulernet.png differ diff --git a/docs/source/conf.py b/docs/source/conf.py index b79663e78..adbaa00b9 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -20,11 +20,11 @@ # -- Project information ----------------------------------------------------- project = "RecBole" -copyright = "2020-2022, RecBole Contributors" +copyright = "2020-2023, RecBole Contributors" author = "AIBox RecBole group" # The full version, including alpha/beta/rc tags -release = "1.1.1" +release = "1.2.0" # -- General configuration --------------------------------------------------- diff --git a/docs/source/index.rst b/docs/source/index.rst index 4424279ce..7029d68a0 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -1,24 +1,24 @@ .. RecBole documentation master file. -.. title:: RecBole v1.1.1 +.. title:: RecBole v1.2.0 .. image:: asset/logo.png ========================================================= -`HomePage `_ | `Docs `_ | `GitHub `_ | `Datasets `_ | `v0.1.2 `_ | `v0.2.0 `_ | `v1.0.0 `_ | `v1.0.1 `_ +`HomePage `_ | `Docs `_ | `GitHub `_ | `Datasets `_ | `v0.1.2 `_ | `v0.2.0 `_ | `v1.0.0 `_ | `v1.0.1 `_ | `v1.2.0 `_ Introduction ------------------------- RecBole is a unified, comprehensive and efficient framework developed based on PyTorch. It aims to help the researchers to reproduce and develop recommendation models. -In the lastest release, our library includes 90 recommendation algorithms `[Model List]`_, covering four major categories: +In the lastest release, our library includes 91 recommendation algorithms `[Model List]`_, covering four major categories: - General Recommendation - Sequential Recommendation - Context-aware Recommendation - Knowledge-based Recommendation -We design a unified and flexible data file format, and provide the support for 41 benchmark recommendation datasets `[Collected Datasets]`_. A user can apply the provided script to process the original data copy, or simply download the processed datasets by our team. +We design a unified and flexible data file format, and provide the support for 43 benchmark recommendation datasets `[Collected Datasets]`_. A user can apply the provided script to process the original data copy, or simply download the processed datasets by our team. .. image:: asset/framework.png :width: 600 @@ -29,7 +29,7 @@ Features: - General and extensible data structure We deign general and extensible data structures to unify the formatting and usage of various recommendation datasets. - Comprehensive benchmark models and datasets - We implement 86 commonly used recommendation algorithms, and provide the formatted copies of 41 recommendation datasets. + We implement 91 commonly used recommendation algorithms, and provide the formatted copies of 43 recommendation datasets. - Efficient GPU-accelerated execution We design many tailored strategies in the GPU environment to enhance the efficiency of our library. - Extensive and standard evaluation protocols diff --git a/docs/source/recbole/recbole.model.context_aware_recommender.eulernet.rst b/docs/source/recbole/recbole.model.context_aware_recommender.eulernet.rst new file mode 100644 index 000000000..2bce28639 --- /dev/null +++ b/docs/source/recbole/recbole.model.context_aware_recommender.eulernet.rst @@ -0,0 +1,4 @@ +.. automodule:: recbole.model.context_aware_recommender.eulernet + :members: + :undoc-members: + :show-inheritance: \ No newline at end of file diff --git a/docs/source/recbole/recbole.model.context_aware_recommender.rst b/docs/source/recbole/recbole.model.context_aware_recommender.rst index aeb5c3c5e..cec5a570e 100644 --- a/docs/source/recbole/recbole.model.context_aware_recommender.rst +++ b/docs/source/recbole/recbole.model.context_aware_recommender.rst @@ -7,12 +7,16 @@ recbole.model.context\_aware\_recommender recbole.model.context_aware_recommender.afm recbole.model.context_aware_recommender.autoint recbole.model.context_aware_recommender.dcn + recbole.model.context_aware_recommender.dcnv2 recbole.model.context_aware_recommender.deepfm recbole.model.context_aware_recommender.dssm + recbole.model.context_aware_recommender.eulernet recbole.model.context_aware_recommender.ffm + recbole.model.context_aware_recommender.fignn recbole.model.context_aware_recommender.fm recbole.model.context_aware_recommender.fnn recbole.model.context_aware_recommender.fwfm + recbole.model.context_aware_recommender.kd_dagfm recbole.model.context_aware_recommender.lr recbole.model.context_aware_recommender.nfm recbole.model.context_aware_recommender.pnn diff --git a/docs/source/recbole/recbole.model.general_recommender.diffrec.rst b/docs/source/recbole/recbole.model.general_recommender.diffrec.rst new file mode 100644 index 000000000..42616f5d7 --- /dev/null +++ b/docs/source/recbole/recbole.model.general_recommender.diffrec.rst @@ -0,0 +1,4 @@ +.. automodule:: recbole.model.general_recommender.diffrec + :members: + :undoc-members: + :show-inheritance: \ No newline at end of file diff --git a/docs/source/recbole/recbole.model.general_recommender.ldiffrec.rst b/docs/source/recbole/recbole.model.general_recommender.ldiffrec.rst new file mode 100644 index 000000000..84578d475 --- /dev/null +++ b/docs/source/recbole/recbole.model.general_recommender.ldiffrec.rst @@ -0,0 +1,4 @@ +.. automodule:: recbole.model.general_recommender.ldiffrec + :members: + :undoc-members: + :show-inheritance: \ No newline at end of file diff --git a/docs/source/recbole/recbole.model.general_recommender.random.rst b/docs/source/recbole/recbole.model.general_recommender.random.rst new file mode 100644 index 000000000..d53401448 --- /dev/null +++ b/docs/source/recbole/recbole.model.general_recommender.random.rst @@ -0,0 +1,4 @@ +.. automodule:: recbole.model.general_recommender.random + :members: + :undoc-members: + :show-inheritance: \ No newline at end of file diff --git a/docs/source/recbole/recbole.model.general_recommender.rst b/docs/source/recbole/recbole.model.general_recommender.rst index d9a3aa951..9436371ad 100644 --- a/docs/source/recbole/recbole.model.general_recommender.rst +++ b/docs/source/recbole/recbole.model.general_recommender.rst @@ -4,24 +4,35 @@ recbole.model.general\_recommender .. toctree:: :maxdepth: 4 + recbole.model.general_recommender.admmslim recbole.model.general_recommender.bpr recbole.model.general_recommender.cdae recbole.model.general_recommender.convncf recbole.model.general_recommender.dgcf recbole.model.general_recommender.dmf + recbole.model.general_recommender.diffrec + recbole.model.general_recommender.ease + recbole.model.general_recommender.enmf recbole.model.general_recommender.fism recbole.model.general_recommender.gcmc recbole.model.general_recommender.itemknn + recbole.model.general_recommender.ldiffrec recbole.model.general_recommender.lightgcn recbole.model.general_recommender.line recbole.model.general_recommender.macridvae recbole.model.general_recommender.multidae recbole.model.general_recommender.multivae recbole.model.general_recommender.nais + recbole.model.general_recommender.nceplrec + recbole.model.general_recommender.ncl recbole.model.general_recommender.neumf recbole.model.general_recommender.ngcf + recbole.model.general_recommender.nncf recbole.model.general_recommender.pop + recbole.model.general_recommender.ract + recbole.model.general_recommender.random + recbole.model.general_recommender.recvae recbole.model.general_recommender.sgl recbole.model.general_recommender.simplex + recbole.model.general_recommender.slimelastic recbole.model.general_recommender.spectralcf - recbole.model.general_recommender.ncl diff --git a/docs/source/recbole/recbole.model.knowledge_aware_recommender.rst b/docs/source/recbole/recbole.model.knowledge_aware_recommender.rst index fd025e998..a5dcb3da6 100644 --- a/docs/source/recbole/recbole.model.knowledge_aware_recommender.rst +++ b/docs/source/recbole/recbole.model.knowledge_aware_recommender.rst @@ -8,7 +8,9 @@ recbole.model.knowledge\_aware\_recommender recbole.model.knowledge_aware_recommender.cke recbole.model.knowledge_aware_recommender.kgat recbole.model.knowledge_aware_recommender.kgcn + recbole.model.knowledge_aware_recommender.kgin recbole.model.knowledge_aware_recommender.kgnnls recbole.model.knowledge_aware_recommender.ktup + recbole.model.knowledge_aware_recommender.mcclk recbole.model.knowledge_aware_recommender.mkr recbole.model.knowledge_aware_recommender.ripplenet diff --git a/docs/source/recbole/recbole.model.sequential_recommender.fearec.rst b/docs/source/recbole/recbole.model.sequential_recommender.fearec.rst new file mode 100644 index 000000000..05c55c3b8 --- /dev/null +++ b/docs/source/recbole/recbole.model.sequential_recommender.fearec.rst @@ -0,0 +1,4 @@ +.. automodule:: recbole.model.sequential_recommender.fearec + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/recbole/recbole.model.sequential_recommender.rst b/docs/source/recbole/recbole.model.sequential_recommender.rst index b144f4465..d328631a1 100644 --- a/docs/source/recbole/recbole.model.sequential_recommender.rst +++ b/docs/source/recbole/recbole.model.sequential_recommender.rst @@ -29,3 +29,4 @@ recbole.model.sequential\_recommender recbole.model.sequential_recommender.srgnn recbole.model.sequential_recommender.stamp recbole.model.sequential_recommender.transrec + recbole.model.sequential_recommender.fearec diff --git a/docs/source/user_guide/data_intro.rst b/docs/source/user_guide/data_intro.rst index e9517b3c8..45d4be4c0 100644 --- a/docs/source/user_guide/data_intro.rst +++ b/docs/source/user_guide/data_intro.rst @@ -1,7 +1,7 @@ Data Module Introduction ========================= -RecBole not only implements lots of popular recommender models, but also collects and releases 41 commonly-used publiced datasets. +RecBole not only implements lots of popular recommender models, but also collects and releases 43 commonly-used publiced datasets. You can freely download these datasets following our docs :doc:`data/dataset_download`. For extensibility and reusability, Recbole has a flexible and extensible data module. diff --git a/docs/source/user_guide/model/context/eulernet.rst b/docs/source/user_guide/model/context/eulernet.rst new file mode 100644 index 000000000..f02662916 --- /dev/null +++ b/docs/source/user_guide/model/context/eulernet.rst @@ -0,0 +1,78 @@ +EulerNet +=========== + +Introduction +--------------------- + +`[paper] `_ + +**Title:** EulerNet: Adaptive Feature Interaction Learning via Euler's Formula for CTR Prediction + +**Authors:** Zhen Tian, Ting Bai, Wayne Xin Zhao, Ji-Rong Wen, Zhao Cao + +**Abstract:** Learning effective high-order feature interactions is very crucial in the CTR prediction task. However, it is very time-consuming to calculate high-order feature interactions with massive features in online e-commerce platforms. Most existing methods manually design a maximal order and further filter out the useless interactions from them. Although they reduce the high computational costs caused by the exponential growth of high-order feature combinations, they still suffer from the degradation of model capability due to the suboptimal learning of the restricted feature orders. The solution to maintain the model capability and meanwhile keep it efficient is a technical challenge, which has not been adequately addressed. To address this issue, we propose an adaptive feature interaction learning model, named as EulerNet, in which the feature interactions are learned in a complex vector space by conducting space mapping according to Euler's formula. EulerNet converts the exponential powers of feature interactions into simple linear combinations of the modulus and phase of the complex features, making it possible to adaptively learn the high-order feature interactions in an efficient way. Furthermore, EulerNet incorporates the implicit and explicit feature interactions into a unified architecture, which achieves the mutual enhancement and largely boosts the model capabilities. Such a network can be fully learned from data, with no need of pre-designed form or order for feature interactions. Extensive experiments conducted on three public datasets have demonstrated the effectiveness and efficiency of our approach. + +.. image:: ../../../asset/eulernet.png + :width: 500 + :align: center + +Quick Start with RecBole +------------------------- + +**Model Hyper-Parameters:** + +- ``embedding_size (int)`` : The embedding size of features. Defaults to ``16``. +- ``order_list (list)`` : The order vectors of EulerNet.Defaults to ``[30]``. +- ``drop_ex (float)`` : The dropout rate for the modulus and phase. Defaults to ``0.3``. +- ``drop_im (float)`` : The dropout rate for the real and imaginary part. Defaults to ``0.3``. +- ``apply_norm (bool)`` : Whether perform the layer norm. Defaults to ``False``. +- ``reg_weight (float)`` : The L2 regularization weight. Defaults to ``1e-5``. + +**A Running Example:** + +Write the following code to a python file, such as `run.py` + +.. code:: python + + from recbole.quick_start import run_recbole + + run_recbole(model='EulerNet', dataset='ml-100k') + +And then: + +.. code:: bash + + python run.py + +Tuning Hyper Parameters +------------------------- + +If you want to use ``HyperTuning`` to tune hyper parameters of this model, you can copy the following settings and name it as ``hyper.test``. + +.. code:: bash + + learning_rate choice [1e-3,1e-4,1e-5] + reg_weight choice [1e-3,1e-5,1e-7] + order_list choice [7,10,20,30] + drop_ex choice [0.,0.1,0.2,0.3] + drop_im choice [0.,0.1,0.2,0.3] + apply_norm choice [True,False] + +Note that we just provide these hyper parameter ranges for reference only, and we can not guarantee that they are the optimal range of this model. + +Then, with the source code of RecBole (you can download it from GitHub), you can run the ``run_hyper.py`` to tuning: + +.. code:: bash + + python run_hyper.py --model=[model_name] --dataset=[dataset_name] --config_files=[config_files_path] --params_file=hyper.test + +For more details about Parameter Tuning, refer to :doc:`../../../user_guide/usage/parameter_tuning`. + + +If you want to change parameters, dataset or evaluation settings, take a look at + +- :doc:`../../../user_guide/config_settings` +- :doc:`../../../user_guide/data_intro` +- :doc:`../../../user_guide/train_eval_intro` +- :doc:`../../../user_guide/usage` + diff --git a/docs/source/user_guide/model/sequential/fearec.rst b/docs/source/user_guide/model/sequential/fearec.rst index 40219d2e4..61db9f0df 100644 --- a/docs/source/user_guide/model/sequential/fearec.rst +++ b/docs/source/user_guide/model/sequential/fearec.rst @@ -4,7 +4,7 @@ FEARec Introduction --------------------- -`[paper] `_ +`[paper] `_ **Title:** FEARec: Frequency Enhanced Hybrid Attention Network for Sequential Recommendation @@ -50,6 +50,10 @@ Write the following code to a python file, such as `run.py` from recbole.quick_start import run_recbole + parameter_dict = { + 'train_neg_sample_args': None, + } + run_recbole(model='FEARec', dataset='ml-100k') And then: diff --git a/docs/source/user_guide/model_intro.rst b/docs/source/user_guide/model_intro.rst index 54fb813b7..8b4c59d78 100644 --- a/docs/source/user_guide/model_intro.rst +++ b/docs/source/user_guide/model_intro.rst @@ -1,6 +1,6 @@ Model Introduction ===================== -We implement 90 recommendation models covering general recommendation, sequential recommendation, +We implement 91 recommendation models covering general recommendation, sequential recommendation, context-aware recommendation and knowledge-based recommendation. A brief introduction to these models are as follows: @@ -77,6 +77,7 @@ are also support for these models. And evaluation is always conducted in the way model/context/lightgbm model/context/kd_dagfm model/context/fignn + model/context/eulernet Sequential Recommendation @@ -114,6 +115,7 @@ the sequential data. The models of session-based recommendation are also include model/sequential/lightsans model/sequential/sine model/sequential/core + model/sequential/fearec Knowledge-based Recommendation diff --git a/recbole/model/general_recommender/__init__.py b/recbole/model/general_recommender/__init__.py index 04187e129..e71f2b4ec 100644 --- a/recbole/model/general_recommender/__init__.py +++ b/recbole/model/general_recommender/__init__.py @@ -13,7 +13,6 @@ from recbole.model.general_recommender.macridvae import MacridVAE from recbole.model.general_recommender.multidae import MultiDAE from recbole.model.general_recommender.multivae import MultiVAE -from recbole.model.general_recommender.enmf import ENMF from recbole.model.general_recommender.nais import NAIS from recbole.model.general_recommender.ncl import NCL from recbole.model.general_recommender.neumf import NeuMF diff --git a/recbole/model/sequential_recommender/fearec.py b/recbole/model/sequential_recommender/fearec.py index 5f2854117..f16385962 100644 --- a/recbole/model/sequential_recommender/fearec.py +++ b/recbole/model/sequential_recommender/fearec.py @@ -101,12 +101,10 @@ def __init__(self, config, dataset): def get_same_item_index(self, dataset): same_target_index = {} target_item = dataset.inter_feat[self.ITEM_ID].numpy() - count = 0 for index, item_id in enumerate(target_item): all_index_same_id = np.where(target_item == item_id)[0] same_target_index[item_id] = all_index_same_id - count += 1 return same_target_index