Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update #3

Merged
merged 403 commits into from
Jan 5, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
403 commits
Select commit Hold shift + click to select a range
6b21eff
FEA: xgboost
flust Dec 7, 2020
3bc2964
FEA: xgboost
flust Dec 7, 2020
31f5301
FEA: xgboost
flust Dec 7, 2020
22140e8
FEA: Remove `drop_filter_field` and `drop_preload_weight`. Add `unuse…
chenyushuo Dec 8, 2020
7c4ab6f
REFACTOR: refactor in seq-dataloader._shuffle to ensure the result wi…
chenyushuo Dec 8, 2020
6bd5bff
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 8, 2020
78a59d2
FEA: Remove `drop_filter_field` and `drop_preload_weight` in yaml
chenyushuo Dec 8, 2020
77f53b2
FIX: Bug fix in general_dataloader.py
chenyushuo Dec 8, 2020
d47c224
Merge pull request #559 from chenyushuo/0.2.x
2017pxy Dec 8, 2020
2f903c0
FIX: Add pos_len_list & user_len_list to full-dataloader.
chenyushuo Dec 9, 2020
88fb06e
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 9, 2020
e38d0bc
Update README.md
2017pxy Dec 9, 2020
f84069c
Update python-package.yml
2017pxy Dec 9, 2020
d36dc0b
Update python-package.yml
2017pxy Dec 9, 2020
ff25178
Update python-package.yml
2017pxy Dec 9, 2020
3984f14
Merge pull request #10 from RUCAIBox/0.2.x
2017pxy Dec 9, 2020
6c324ce
Update python-package.yml
2017pxy Dec 9, 2020
d237938
Update python-package.yml
2017pxy Dec 9, 2020
76a2e6c
FIX: change the CI workflow
2017pxy Dec 9, 2020
de99060
Merge pull request #564 from 2017pxy/master
2017pxy Dec 9, 2020
2498c72
Update README.md
2017pxy Dec 10, 2020
1f51229
Update python-package.yml
2017pxy Dec 10, 2020
016d32e
Update python-package.yml
2017pxy Dec 10, 2020
bfaa392
Merge pull request #560 from chenyushuo/0.2.x
2017pxy Dec 10, 2020
5b60211
Merge pull request #566 from 2017pxy/master
2017pxy Dec 10, 2020
4d08402
FIX: Bug fix in general full dataloader. (runtime error in _full_sort…
chenyushuo Dec 10, 2020
c4c4d05
Merge pull request #569 from chenyushuo/0.2.x
EliverQ Dec 10, 2020
27ba4ed
Update README.md
2017pxy Dec 11, 2020
a4cb851
Update README.md
2017pxy Dec 11, 2020
a620a96
Merge pull request #571 from hyp1231/master
hyp1231 Dec 11, 2020
28453f6
FEA: add GAUC metric
guijiql Dec 11, 2020
2aae824
REFACTOR: add GroupEvaluator and IndividualEvaluator
guijiql Dec 11, 2020
df0c8d8
REFACTOR: put two origin evaluators into one file and add RankEvaluator
guijiql Dec 11, 2020
52811cb
FEA: adapt trainer to new evaluator
guijiql Dec 11, 2020
41c721f
FEA: adapt configurator to new evaluator
guijiql Dec 11, 2020
c222ebf
FEA: add ProxyEvaluator
guijiql Dec 11, 2020
b85c50d
FEA: add three models by Shao Weiqi (HRM, NPE, SHAN).
chenyushuo Dec 12, 2020
8ce025b
FEA: add three models' test.
chenyushuo Dec 12, 2020
f8947a2
FEA: add three models by Shao Weiqi (HRM, NPE, SHAN).
chenyushuo Dec 12, 2020
db9416a
FEA: add three models' test.
chenyushuo Dec 12, 2020
28a6bcb
FIX: bug fix in interaction.update
chenyushuo Dec 12, 2020
4084f53
FIX: bug fix in interaction.update
chenyushuo Dec 12, 2020
6afb8e9
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 12, 2020
be73b23
FEA: add model HGN by Shao Weiqi.
chenyushuo Dec 12, 2020
64ea090
FEA: add model HGN by Shao Weiqi.
chenyushuo Dec 12, 2020
7518311
Merge pull request #4 from RUCAIBox/0.2.x
linzihan-backforward Dec 12, 2020
8852184
FIX: bug fix in avg_actions_of_users && avg_actions_of_items
chenyushuo Dec 12, 2020
934127e
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 12, 2020
ac4a9f6
FIX: bug fix in avg_actions_of_users && avg_actions_of_items (#576)
chenyushuo Dec 12, 2020
0024efb
Merge pull request #5 from RUCAIBox/0.2.x
linzihan-backforward Dec 12, 2020
5e183cb
FIX: bug fix in _full_sort_batch_eval (when model do not have full_so…
chenyushuo Dec 12, 2020
2a1d473
Merge pull request #577 from chenyushuo/0.2.x
chenyushuo Dec 12, 2020
b2a9831
FEA: add GAUC metric
guijiql Dec 11, 2020
17cea16
REFACTOR: add GroupEvaluator and IndividualEvaluator
guijiql Dec 11, 2020
05f38a9
REFACTOR: put two origin evaluators into one file and add RankEvaluator
guijiql Dec 11, 2020
089153f
FEA: adapt trainer to new evaluator
guijiql Dec 11, 2020
1b0ac76
FEA: adapt configurator to new evaluator
guijiql Dec 11, 2020
8319f0d
FEA: add ProxyEvaluator
guijiql Dec 11, 2020
3ed79cb
Merge pull request #6 from RUCAIBox/0.2.x
linzihan-backforward Dec 12, 2020
82afccb
FIX: import format
guijiql Dec 12, 2020
96334a2
Merge branch '0.2.x' of https://github.com/guijiql/RecBole into 0.2.x
guijiql Dec 12, 2020
34ec06f
Update README.md
2017pxy Dec 13, 2020
58cc52c
Merge pull request #572 from guijiql/0.2.x
2017pxy Dec 13, 2020
5a18697
FEA: add FOSSIL by Shao Weiqi.
chenyushuo Dec 14, 2020
5cfc88c
DOC: doc fix in fossil
chenyushuo Dec 14, 2020
a9ca3d5
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 15, 2020
92e5b53
Merge pull request #11 from RUCAIBox/0.2.x
2017pxy Dec 15, 2020
301bcd7
FIX: change the default value of clip_grad_norm.
chenyushuo Dec 15, 2020
45ff55d
Update README.md
2017pxy Dec 15, 2020
634931c
FEA: add LINE to general recommender by guoyihong
Dec 15, 2020
4c2fd2c
FEA: add LINE to general recommender by guoyihong
Dec 15, 2020
d662d26
update line
Dec 15, 2020
c47233e
update line
Dec 15, 2020
5305c23
FIX: update line
Dec 16, 2020
9fcbaf6
FIX: fix line bug
Dec 16, 2020
a91507e
Merge remote-tracking branch 'upstream/0.2.x' into dev
flust Dec 16, 2020
c3120b9
FEA: add FOSSIL by Shao Weiqi.
chenyushuo Dec 14, 2020
f81981b
DOC: doc fix in fossil
chenyushuo Dec 14, 2020
333a4e3
FIX: change the default value of clip_grad_norm.
chenyushuo Dec 15, 2020
af792ac
FEA: add RepeatNet by Shao Weiqi.
chenyushuo Dec 16, 2020
e236504
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 16, 2020
604325d
FEA:add param_dict in hyper_tuning.py
EliverQ Dec 16, 2020
b6d9e5e
Merge pull request #3 from RUCAIBox/0.2.x
EliverQ Dec 16, 2020
8311b8b
Merge pull request #585 from EliverQ/0.2.x
EliverQ Dec 16, 2020
2d91cc0
REFACTOR: refactor in repeatnet.py.
chenyushuo Dec 17, 2020
2dcf325
Merge pull request #584 from chenyushuo/0.2.x
chenyushuo Dec 17, 2020
ec43c03
FEA: add LINE to general recommender
Dec 17, 2020
0772227
FEA: add config['benchmark_filename'] to load pre-split dataset; incr…
chenyushuo Dec 18, 2020
3769b2d
FIX: Increased the robustness of GeneralFullDataLoader, which can han…
chenyushuo Dec 18, 2020
ca4888a
FEA: add LINE
Dec 18, 2020
dd157a5
FIX: can't raise error in IndividualEvaluator
guijiql Dec 18, 2020
9ced718
FIX: metrics disorder
guijiql Dec 18, 2020
c7cbd34
FIX: GAUC calculation error
guijiql Dec 18, 2020
3628d54
Merge remote-tracking branch 'upstream/0.2.x' into dev
flust Dec 18, 2020
5c1c147
FIX: rename & comment format
guijiql Dec 18, 2020
e17710c
FEA: add config['benchmark_filename'] to load pre-split dataset.
chenyushuo Dec 18, 2020
511cda8
Merge pull request #592 from chenyushuo/master
chenyushuo Dec 18, 2020
2dcac28
REVERT: revert modify in data.utils
chenyushuo Dec 18, 2020
e8db062
Merge pull request #588 from chenyushuo/0.2.x
2017pxy Dec 18, 2020
fd86870
update notes
guijiql Dec 19, 2020
ae95ccb
Merge pull request #12 from RUCAIBox/0.2.x
2017pxy Dec 19, 2020
5e1f2a5
Merge remote-tracking branch 'upstream/0.2.x' into dev
flust Dec 20, 2020
e84aeb7
FEA: Increased the robustness of trainer.evaluate
chenyushuo Dec 20, 2020
50bf9e8
FIX: bug fix in GeneralFullDataLoader.
chenyushuo Dec 20, 2020
27dad3f
Merge pull request #596 from chenyushuo/0.2.x
2017pxy Dec 20, 2020
4b4b9a8
FIX: optimize update_attentive_A function in KGAT
Dec 21, 2020
da3972c
Merge pull request #597 from ShanleiMu/0.2.x
chenyushuo Dec 21, 2020
4d7a1a6
Merge remote-tracking branch 'upstream/0.2.x' into dev
flust Dec 21, 2020
3549eb1
FEA: change xgboost train data to onehot and change train method
flust Dec 21, 2020
c73021a
Merge pull request #7 from RUCAIBox/0.2.x
linzihan-backforward Dec 21, 2020
d4f68cc
FIX: sparse dropout disable during eval
linzihan-backforward Dec 21, 2020
493c86b
FEA: add SparseAdam trainer
chenyushuo Dec 21, 2020
83f514e
FIX: can't raise error in IndividualEvaluator
guijiql Dec 18, 2020
10243bb
FIX: metrics disorder
guijiql Dec 18, 2020
ab95863
FIX: GAUC calculation error
guijiql Dec 18, 2020
48f1078
FIX: rename & comment format
guijiql Dec 18, 2020
eb84ef3
FEA: add parameters check in gauc
guijiql Dec 21, 2020
aed05ee
FEA: add GAUC check & GAUC test
guijiql Dec 21, 2020
08a5492
FIX: refactor SparseDropout
linzihan-backforward Dec 22, 2020
d6ea8e2
update metrics.py
guijiql Dec 22, 2020
eb4deb2
FIX: update LINE
Dec 22, 2020
02b3d1c
update metrics.py
guijiql Dec 22, 2020
3620841
Update evaluators.py
guijiql Dec 22, 2020
bd40a3a
FEA: add ranking metric test
guijiql Dec 22, 2020
b7c56bb
Merge branch '0.2.x' of https://github.com/guijiql/RecBole into 0.2.x
guijiql Dec 22, 2020
6e9a9c6
FIX: rename bool variable in GAUC & remove keys in build
guijiql Dec 22, 2020
7faf745
Merge pull request #602 from chenyushuo/0.2.x
chenyushuo Dec 22, 2020
eda9079
FIX: update LINE
Dec 22, 2020
f949ca7
FIX: request changes
Dec 22, 2020
886c8c7
FEA: add LINE
Dec 22, 2020
948d9d6
Merge pull request #591 from guoyihonggyh/0.2.x.LINE
hyp1231 Dec 22, 2020
8e3c259
DOC: doc fix in sampler.py
chenyushuo Dec 24, 2020
98c49f8
DOC: add README_CN.md && update framework.png
chenyushuo Dec 24, 2020
634bad6
FEA: add RankEvaluator collect test
guijiql Dec 24, 2020
ef2178c
Merge branch 'master' of github.com:RUCAIBox/RecBole
chenyushuo Dec 24, 2020
34e0abc
DOC: update README.md && README_CN.md
chenyushuo Dec 24, 2020
5b0e4a7
Merge pull request #612 from chenyushuo/master
chenyushuo Dec 24, 2020
94d5bd8
Merge pull request #590 from guijiql/0.2.x
chenyushuo Dec 24, 2020
bc72fc6
Merge pull request #601 from linzihan-backforward/master
chenyushuo Dec 24, 2020
2571a6f
Merge pull request #13 from RUCAIBox/0.2.x
2017pxy Dec 24, 2020
30693ce
FEA: add raise ValueError when some users have interacted with all it…
chenyushuo Dec 24, 2020
e44984f
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 24, 2020
ebbc96d
DOC: Grammar correction.
chenyushuo Dec 24, 2020
31bd442
Merge pull request #613 from chenyushuo/0.2.x
chenyushuo Dec 24, 2020
4e40f20
FIX: xgboost trainer and dataset
flust Dec 24, 2020
8107582
Merge pull request #8 from RUCAIBox/0.2.x
linzihan-backforward Dec 25, 2020
0bbfc3c
FEA: add case_study.py (resolve #506)
chenyushuo Dec 25, 2020
36b9333
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 25, 2020
2e46201
Merge pull request #600 from flust/0.2.x
chenyushuo Dec 25, 2020
d962ae6
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 25, 2020
e25819c
FORMAT: code format in trainer.py
chenyushuo Dec 25, 2020
b7d3fd1
DOC: add header to case_study.py
chenyushuo Dec 25, 2020
6d839ee
FEA: Add progress bar to trainer.py (resolve #516)
chenyushuo Dec 25, 2020
3b73c45
FEA: Add callback function hook for end of training an epoch (resolve…
chenyushuo Dec 25, 2020
dd9980b
FIX:Dynamic import xgboost and add xgboost test part
flust Dec 25, 2020
b936a51
Merge pull request #619 from flust/0.2.x
chenyushuo Dec 25, 2020
de64410
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 25, 2020
b2d8664
Merge pull request #618 from chenyushuo/0.2.x
2017pxy Dec 25, 2020
80779d3
Merge pull request #9 from RUCAIBox/0.2.x
linzihan-backforward Dec 27, 2020
e65f2d6
Merge pull request #16 from RUCAIBox/0.2.x
2017pxy Dec 28, 2020
de7baff
FEA: rebuild the user_dataloader
2017pxy Dec 28, 2020
d603cee
FEA: add decimal places control for metric and loss
2017pxy Dec 28, 2020
3b4553a
FIX: reset the show_progress in overall.yaml
2017pxy Dec 28, 2020
eaf83cd
FIX: fix the bug of decimal places control
2017pxy Dec 28, 2020
b5e57a2
Merge pull request #625 from 2017pxy/master
chenyushuo Dec 28, 2020
43ce7ca
FEA: add MultiVAE and MultiDAE
Dec 28, 2020
3dd1f20
FEA: Raise ValueError when inter_feat have label_field and neg-sampli…
chenyushuo Dec 29, 2020
8e2f434
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 29, 2020
6be1c87
FIX: Bug fix in test_evaluation_setting.py
chenyushuo Dec 29, 2020
290e785
FIX: bug in NeuMF
linzihan-backforward Dec 29, 2020
ce38830
Merge pull request #628 from chenyushuo/0.2.x
2017pxy Dec 29, 2020
cbd40d6
Merge pull request #629 from linzihan-backforward/master
2017pxy Dec 29, 2020
541f6d9
REFACTOR: refactor in test_model
chenyushuo Dec 29, 2020
b85005b
Merge pull request #1 from RUCAIBox/0.2.x
hyp1231 Dec 29, 2020
4f7fc9b
FIX: rm confusing error report from create_dataset
hyp1231 Dec 29, 2020
84c83f0
FIX: refactor customized dataset selection
hyp1231 Dec 29, 2020
66bd447
FIX: DCN crash when running on CPU
guijiql Dec 29, 2020
1e9f1c1
Merge pull request #631 from hyp1231/0.2.x
chenyushuo Dec 30, 2020
78370d8
Merge pull request #633 from guijiql/0.2.x
chenyushuo Dec 30, 2020
37aadba
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Dec 30, 2020
dfd565a
FIX: device error in BERT4Rec (from master branch)
chenyushuo Dec 30, 2020
023e12a
REFACTOR: Move tests in test_model_manual.py to test_model_auto.py
chenyushuo Dec 30, 2020
597fcf0
REFACTOR: Move test_s3rec in test_model_auto.py to test_model_manual.py
chenyushuo Dec 30, 2020
a7640a6
add MarcidVAE
Dec 30, 2020
453a631
add MarcidVAE
Dec 30, 2020
d3bcead
Merge pull request #630 from chenyushuo/0.2.x
chenyushuo Dec 30, 2020
f77145a
FIX: no longer raise ValueError in normalize and change the default v…
chenyushuo Dec 30, 2020
dd41f17
FIX:add onehot
flust Dec 31, 2020
0586b11
Merge pull request #17 from RUCAIBox/0.2.x
2017pxy Jan 1, 2021
e49e0ef
add MultiVAE and MultiDAE
Jan 1, 2021
154f48a
Merge pull request #626 from guoyihonggyh/0.2.x
2017pxy Jan 1, 2021
99e77c5
Merge pull request #18 from RUCAIBox/0.2.x
2017pxy Jan 1, 2021
b624e41
FEA: add CDAE model
2017pxy Jan 1, 2021
d9429be
FIX: reset test code
2017pxy Jan 1, 2021
92c4f5e
FIX: reset test code
2017pxy Jan 1, 2021
ed2a14f
Update general_dataloader.py
hyp1231 Jan 1, 2021
0dcf23b
Update utils.py
hyp1231 Jan 1, 2021
9df03f1
Merge pull request #1 from RUCAIBox/0.2.x
guoyihonggyh Jan 1, 2021
28ac710
add MacridVAE
Jan 1, 2021
a84f6bc
add MacridVAE
Jan 1, 2021
3294aad
add MacridVAE
Jan 1, 2021
363d0c2
add MacridVAE
Jan 1, 2021
edd814c
FIX: remove the lr from CDAE.yaml
2017pxy Jan 1, 2021
5f2c47d
Merge branch 'master' of https://github.com/2017pxy/RecBole
2017pxy Jan 1, 2021
ccc9879
FIX: add CDAE into _init_.py
2017pxy Jan 1, 2021
eed9ec7
FIX: remove unused code
2017pxy Jan 1, 2021
663e1b3
FIX: remove unused code
2017pxy Jan 1, 2021
585ca6f
FIX: rename the reg_1 and reg_2
2017pxy Jan 1, 2021
18206fb
Merge branch '0.2.x' into 0.2.x
flust Jan 1, 2021
0791d91
Merge pull request #642 from 2017pxy/master
2017pxy Jan 1, 2021
f6acaa4
Merge branch '0.2.x' into 0.2.x.test
2017pxy Jan 1, 2021
5d9ca5d
Merge pull request #637 from guoyihonggyh/0.2.x.test
2017pxy Jan 1, 2021
0c34a02
Merge pull request #19 from RUCAIBox/0.2.x
2017pxy Jan 2, 2021
e70fd58
Merge pull request #639 from chenyushuo/0.2.x
2017pxy Jan 2, 2021
1c11a5b
Merge pull request #641 from flust/0.2.x
2017pxy Jan 2, 2021
d59f12d
Merge pull request #20 from RUCAIBox/0.2.x
2017pxy Jan 2, 2021
74875dc
FEA: add show_progress to xgboostTrainer (have no effect)
chenyushuo Jan 2, 2021
f0a42c7
FIX: remove training_neg_sample_num from model.yaml and add reviewer …
2017pxy Jan 2, 2021
9d14b3a
Merge pull request #645 from 2017pxy/master
2017pxy Jan 2, 2021
15eec9c
Merge pull request #644 from chenyushuo/0.2.x
2017pxy Jan 2, 2021
17d5492
Merge pull request #21 from RUCAIBox/0.2.x
2017pxy Jan 2, 2021
abbbfa1
FIX: remove xgb from requirements.txt
2017pxy Jan 2, 2021
ee59f4a
Merge pull request #646 from 2017pxy/master
2017pxy Jan 2, 2021
0baf29b
FORMAT: code format in configurator.py
chenyushuo Jan 2, 2021
f767d4e
FORMAT: code format in data
chenyushuo Jan 2, 2021
6748fc0
FORMAT: code format in sampler, trainer and utils
chenyushuo Jan 2, 2021
e94b79e
FORMAT: code format in evaluator and model.utils
chenyushuo Jan 2, 2021
a8df3aa
FORMAT: code format in context model.
chenyushuo Jan 2, 2021
31207aa
FORMAT: code format in general model
chenyushuo Jan 2, 2021
bb07952
FORMAT: code format in kg model
chenyushuo Jan 2, 2021
e0bc06c
FORMAT: code format in seq model
chenyushuo Jan 2, 2021
8f31215
FORMAT: spelling correction
chenyushuo Jan 2, 2021
ad5e34d
DOC: change `np.ndarray` to `numpy.ndarray`
chenyushuo Jan 2, 2021
8a1fb63
Merge branch '0.2.x' of github.com:RUCAIBox/RecBole into 0.2.x
chenyushuo Jan 2, 2021
3c28a8a
Merge branch '0.2.x'
chenyushuo Jan 2, 2021
5f2dede
FIX: fix bug in merge
chenyushuo Jan 2, 2021
0050919
Merge branch 'master' of github.com:RUCAIBox/RecBole
chenyushuo Jan 2, 2021
12d72dd
Merge pull request #648 from chenyushuo/master
2017pxy Jan 2, 2021
28d441b
Update README.md
2017pxy Jan 3, 2021
fbff532
Update README_CN.md
2017pxy Jan 3, 2021
bfc2738
DOC: doc fix for v0.2.0
chenyushuo Jan 3, 2021
baed288
FIX & FORMAT: bug fix in _filter_nan_user_or_item && change .format b…
chenyushuo Jan 3, 2021
14a3f6c
FORMAT: change .format by f-string in data & sampler
chenyushuo Jan 3, 2021
4b44646
FEA & FIX: add `_filter_inter_by_user_or_item` to remove interaction …
chenyushuo Jan 4, 2021
2f3abcd
DOC: doc fix in dataset._data_processing & dataset._data_filtering
chenyushuo Jan 4, 2021
cd5a5f4
FIX: fix in _load_feat and _normalize
chenyushuo Jan 4, 2021
c561f24
FEA: add test_dataset.py && related input files.
chenyushuo Jan 4, 2021
b14b893
FEA: test data to .github/workflows
chenyushuo Jan 4, 2021
6c5b80a
FIX: bug fix in _fill_nan
chenyushuo Jan 4, 2021
74f8450
Merge pull request #651 from chenyushuo/master
2017pxy Jan 5, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 7 additions & 5 deletions .github/workflows/python-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ name: RecBole tests
on:
- pull_request


jobs:
build:

Expand All @@ -22,12 +23,16 @@ jobs:
python -m pip install --upgrade pip
pip install pytest
pip install dgl
pip install xgboost
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi

# Use "python -m pytest" instead of "pytest" to fix imports
- name: Test metrics
run: |
python -m pytest -v tests/metrics
- name: Test data
run: |
python -m pytest -v tests/data
- name: Test evaluation_setting
run: |
python -m pytest -v tests/evaluation_setting
Expand All @@ -39,7 +44,4 @@ jobs:
python -m pytest -v tests/config/test_config.py
export PYTHONPATH=.
python tests/config/test_command_line.py --use_gpu=False --valid_metric=Recall@10 --split_ratio=[0.7,0.2,0.1] --metrics=['Recall@10'] --epochs=200 --eval_setting='LO_RS' --learning_rate=0.3
- name: Test evaluation_setting
run: |
python -m pytest -v tests/evaluation_setting


4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# Saved models
/saved*
*.pth

.vscode/
.idea/
*.pyc
Expand Down
32 changes: 15 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,14 @@
[![License](https://img.shields.io/badge/License-MIT-blue.svg)](./LICENSE)


[HomePage] | [Docs] | [Datasets] | [Paper] | [Blogs]
[HomePage] | [Docs] | [Datasets] | [Paper] | [Blogs] | [中文版]

[HomePage]: https://recbole.io/
[Docs]: https://recbole.io/docs/
[Datasets]: https://github.com/RUCAIBox/RecDatasets
[Paper]: https://arxiv.org/abs/2011.01731
[Blogs]: #blogs
[Blogs]: https://blog.csdn.net/Turinger_2000/article/details/111182852
[中文版]: README_CN.md

RecBole is developed based on Python and PyTorch for reproducing and developing recommendation algorithms in a unified,
comprehensive and efficient framework for research purpose.
Expand Down Expand Up @@ -53,8 +54,9 @@ oriented to the GPU environment.
+ **Extensive and standard evaluation protocols.** We support a series of widely adopted evaluation protocols or settings
for testing and comparing recommendation algorithms.


## RecBole News
**12/10/2020**: 我们发布了RecBole小白入门系列中文博客
**12/10/2020**: 我们发布了[RecBole小白入门系列中文博客(持续更新中)](https://blog.csdn.net/Turinger_2000/article/details/111182852)

**12/06/2020**: We release RecBole [v0.1.2](https://github.com/RUCAIBox/RecBole/releases/tag/v0.1.2).

Expand All @@ -64,11 +66,6 @@ for reference.

**11/03/2020**: We release the first version of RecBole **v0.1.1**.

## Blogs

[RecBole小白入门系列博客(一)——快速安装和简单上手](https://blog.csdn.net/Turinger_2000/article/details/110414642)

[RecBole小白入门系列博客(二)——General类模型运行流程](https://blog.csdn.net/Turinger_2000/article/details/110395198)

## Installation
RecBole works with the following operating systems:
Expand Down Expand Up @@ -169,23 +166,24 @@ python run_recbole.py --model=[model_name]


## Time and Memory Costs
We constructed preliminary experiments to test the time and memory cost on three different-sized datasets (small, medium and large). For detailed information, you can click the following links.<br>
We constructed preliminary experiments to test the time and memory cost on three different-sized datasets
(small, medium and large). For detailed information, you can click the following links.

* [General recommendation models](asset/time_test_result/General_recommendation.md)<br>
* [Sequential recommendation models](asset/time_test_result/Sequential_recommendation.md)<br>
* [Context-aware recommendation models](asset/time_test_result/Context-aware_recommendation.md)<br>
* [Knowledge-based recommendation models](asset/time_test_result/Knowledge-based_recommendation.md)<br>
* [General recommendation models](asset/time_test_result/General_recommendation.md)
* [Sequential recommendation models](asset/time_test_result/Sequential_recommendation.md)
* [Context-aware recommendation models](asset/time_test_result/Context-aware_recommendation.md)
* [Knowledge-based recommendation models](asset/time_test_result/Knowledge-based_recommendation.md)

NOTE: Our test results only gave the approximate time and memory cost of our implementations in the RecBole library (based on our machine server). Any feedback or suggestions about the implementations and test are welcome. We will keep improving our implementations, and update these test results.
NOTE: Our test results only gave the approximate time and memory cost of our implementations in the RecBole library
(based on our machine server). Any feedback or suggestions about the implementations and test are welcome.
We will keep improving our implementations, and update these test results.


## RecBole Major Releases
| Releases | Date | Features |
|-----------|--------|-------------------------|
| v0.1.2 | 12/06/2020 | Basic RecBole |
| v0.1.1 | 11/03/2020 | Basic RecBole |


## Contributing

Please let us know if you encounter a bug or have any suggestions by [filing an issue](https://github.com/RUCAIBox/RecBole/issues).
Expand All @@ -196,7 +194,7 @@ We expect all contributions discussed in the issue tracker and going through PRs

We thank the insightful suggestions from [@tszumowski](https://github.com/tszumowski), [@rowedenny](https://github.com/rowedenny) et.al.

We thank the nice contributions through PRs from [@rowedenny](https://github.com/rowedenny) et.al.
We thank the nice contributions through PRs from [@rowedenny](https://github.com/rowedenny),[@deklanw](https://github.com/deklanw) et.al.

## Cite
If you find RecBole useful for your research or development, please cite the following [paper](https://arxiv.org/abs/2011.01731):
Expand Down
210 changes: 210 additions & 0 deletions README_CN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,210 @@
![RecBole Logo](asset/logo.png)

--------------------------------------------------------------------------------

# RecBole (伯乐)

*“世有伯乐,然后有千里马。千里马常有,而伯乐不常有。”——韩愈《马说》*

[![PyPi Latest Release](https://img.shields.io/pypi/v/recbole)](https://pypi.org/project/recbole/)
[![Conda Latest Release](https://anaconda.org/aibox/recbole/badges/version.svg)](https://anaconda.org/aibox/recbole)
[![License](https://img.shields.io/badge/License-MIT-blue.svg)](./LICENSE)


[中文主页] | [文档] | [数据集] | [论文] | [博客] | [English Version]

[中文主页]: https://recbole.io/cn
[文档]: https://recbole.io/docs/
[数据集]: https://github.com/RUCAIBox/RecDatasets
[论文]: https://arxiv.org/abs/2011.01731
[博客]: https://blog.csdn.net/Turinger_2000/article/details/111182852
[English Version]: README.md


RecBole 是一个基于 PyTorch 实现的,面向研究者的,易于开发与复现的,统一、全面、高效的推荐系统代码库。
我们实现了53个推荐系统模型,包含常见的推荐系统类别,如:

+ General Recommendation
+ Sequential Recommendation
+ Context-aware Recommendation
+ Knowledge-based Recommendation


我们约定了一个统一、易用的数据文件格式,并已支持 27 个 benchmark dataset。
用户可以选择使用我们的数据集预处理脚本,或直接下载已被处理好的数据集文件。


<p align="center">
<img src="asset/framework.png" alt="RecBole v0.1 架构" width="600">
<br>
<b>图片</b>: RecBole 总体架构
</p>


## 特色
+ **通用和可扩展的数据结构** 我们设计了通用和可扩展的数据结构来支持各种推荐数据集统一化格式和使用。

+ **全面的基准模型和数据集** 我们实现了53个常用的推荐算法,并提供了27个推荐数据集的格式化副本。

+ **高效的 GPU 加速实现** 我们针对GPU环境使用了一系列的优化技术来提升代码库的效率。

+ **大规模的标准评测** 我们支持一系列被广泛认可的评估方式来测试和比较不同的推荐算法。


## RecBole 新闻
**12/10/2020**: 我们发布了[RecBole小白入门系列中文博客(持续更新中)](https://blog.csdn.net/Turinger_2000/article/details/111182852) 。

**12/06/2020**: 我们发布了 RecBole [v0.1.2](https://github.com/RUCAIBox/RecBole/releases/tag/v0.1.2).

**11/29/2020**: 我们在三个不同大小的数据集上进行了时间和内存开销的初步测试,
并提供了 [测试结果](https://github.com/RUCAIBox/RecBole#time-and-memory-costs) 以供参考。

**11/03/2020**: 我们发布了第一版 RecBole **v0.1.1**.


## 安装
RecBole可以在以下几种系统上运行:

* Linux
* Windows 10
* macOS X

RecBole需要在python 3.6或更高的环境下运行。

RecBole要求torch版本在1.6.0及以上,如果你想在GPU上运行RecBole,请确保你的CUDA版本或CUDAToolkit版本在9.2及以上。
这需要你的NVIDIA驱动版本为396.26或以上(在linux系统上)或者为397.44或以上(在Windows10系统上)。


### 从Conda安装

```bash
conda install -c aibox recbole
```

### 从pip安装

```bash
pip install recbole
```

### 从源文件安装
```bash
git clone https://github.com/RUCAIBox/RecBole.git && cd RecBole
pip install -e . --verbose
```

## 快速上手
如果你从GitHub下载了RecBole的源码,你可以使用提供的脚本进行简单的使用:

```bash
python run_recbole.py
```

这个例子将会在ml-100k这个数据集上进行BPR模型的训练和测试。

一般来说,这个例子将花费不到一分钟的时间,我们会得到一些类似下面的输出:

```
INFO ml-100k
The number of users: 944
Average actions of users: 106.04453870625663
The number of items: 1683
Average actions of items: 59.45303210463734
The number of inters: 100000
The sparsity of the dataset: 93.70575143257098%

INFO Evaluation Settings:
Group by user_id
Ordering: {'strategy': 'shuffle'}
Splitting: {'strategy': 'by_ratio', 'ratios': [0.8, 0.1, 0.1]}
Negative Sampling: {'strategy': 'full', 'distribution': 'uniform'}

INFO BPRMF(
(user_embedding): Embedding(944, 64)
(item_embedding): Embedding(1683, 64)
(loss): BPRLoss()
)
Trainable parameters: 168128

INFO epoch 0 training [time: 0.27s, train loss: 27.7231]
INFO epoch 0 evaluating [time: 0.12s, valid_score: 0.021900]
INFO valid result:
recall@10: 0.0073 mrr@10: 0.0219 ndcg@10: 0.0093 hit@10: 0.0795 precision@10: 0.0088

...

INFO epoch 63 training [time: 0.19s, train loss: 4.7660]
INFO epoch 63 evaluating [time: 0.08s, valid_score: 0.394500]
INFO valid result:
recall@10: 0.2156 mrr@10: 0.3945 ndcg@10: 0.2332 hit@10: 0.7593 precision@10: 0.1591

INFO Finished training, best eval result in epoch 52
INFO Loading model structure and parameters from saved/***.pth
INFO best valid result:
recall@10: 0.2169 mrr@10: 0.4005 ndcg@10: 0.235 hit@10: 0.7582 precision@10: 0.1598
INFO test result:
recall@10: 0.2368 mrr@10: 0.4519 ndcg@10: 0.2768 hit@10: 0.7614 precision@10: 0.1901
```

如果你要改参数,例如 ``learning_rate``, ``embedding_size``, 只需根据您的需求增加额外的参数,例如:

```bash
python run_recbole.py --learning_rate=0.0001 --embedding_size=128
```

如果你想改变运行模型,只需要在执行脚本时添加额外的设置参数即可:

```bash
python run_recbole.py --model=[model_name]
```


## 时间和内存开销
我们构建了初步的实验来测试三个不同大小的数据集(小、中、大)的时间和内存开销。
有关详细信息,请单击以下链接。

* [General recommendation models](asset/time_test_result/General_recommendation.md)<br>
* [Sequential recommendation models](asset/time_test_result/Sequential_recommendation.md)<br>
* [Context-aware recommendation models](asset/time_test_result/Context-aware_recommendation.md)<br>
* [Knowledge-based recommendation models](asset/time_test_result/Knowledge-based_recommendation.md)<br>

NOTE: 我们的测试结果只给出了RecBole库中实现模型的大致时间和内存开销(基于我们的机器服务器)。
我们欢迎任何关于测试、实现的建议。我们将继续改进我们的实现,并更新这些测试结果。


## RecBole 重要发布
| Releases | Date | Features |
|-----------|--------|-------------------------|
| v0.1.1 | 11/03/2020 | Basic RecBole |


## 贡献

如果您遇到错误或有任何建议,请通过 [Issue](https://github.com/RUCAIBox/RecBole/issues) 进行反馈

我们欢迎关于修复错误、添加新特性的任何贡献。

如果想贡献代码,请先在issue中提出问题,然后再提PR。

我们对[@tszumowski](https://github.com/tszumowski), [@rowedenny](https://github.com/rowedenny) 等用户提出的建议表示感谢。

我们也对[@rowedenny](https://github.com/rowedenny), [@deklanw](https://github.com/deklanw) 等用户做出的贡献表示感谢。


## 引用
如果你觉得RecBole对你的科研工作有帮助,请引用我们的[论文](https://arxiv.org/abs/2011.01731):

```
@article{recbole,
title={RecBole: Towards a Unified, Comprehensive and Efficient Framework for Recommendation Algorithms},
author={Wayne Xin Zhao and Shanlei Mu and Yupeng Hou and Zihan Lin and Kaiyuan Li and Yushuo Chen and Yujie Lu and Hui Wang and Changxin Tian and Xingyu Pan and Yingqian Min and Zhichao Feng and Xinyan Fan and Xu Chen and Pengfei Wang and Wendi Ji and Yaliang Li and Xiaoling Wang and Ji-Rong Wen},
year={2020},
journal={arXiv preprint arXiv:2011.01731}
}
```

## 项目团队
RecBole由 [中国人民大学, 北京邮电大学, 华东师范大学](https://www.recbole.io/about.html) 的同学和老师进行开发和维护。

## 免责声明
RecBole 基于 [MIT License](./LICENSE) 进行开发,本项目的所有数据和代码只能被用于学术目的。
Binary file modified asset/framework.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading