在这里我们展示如何使用命令行来完成数据与模型的读取及保存, 以及使用命令行来输入参数进行推荐计算.
Usage: librec <command> [options]... commands: rec run recommender data load data global options: --help display this help text --exec run Recommender --version show Librec version info job options: -conf <file> path to config file -D, -jobconf <prop> set configuration items (key=value) -libjars add entend jar files to classpath
./librec rec -exec -D rec.recommender.class=globalaverage -conf ../core/src/main/resources/rec/baseline/globalaverage-test.properties -libjars ../lib/log4j-1.2.17.jar
rec/data 为指定程序进行推荐算法/数据读取功能.
-exec 为执行推荐算法.在2.0版本中为保留选项
-D | -jobconf [options] 为加载相关配置
-conf [path/to/properties] 加载配置文件
-libjars 为加载其他路径下的jar包到classpath中, 其中lib下的jar包自动加载, 当前脚本为示例
LibRec中一个程序的配置文件分别保存在core/librec.properties和各自算法的独立配置文件内.其中librec.properties 推荐保存的配置为数据的读取分割以及评估. 示例配置如下所示
# set data directoy dfs.data.dir=../data # set result directory # recommender result will output in this folder dfs.result.dir=../result # not implement in this version # instead of printing logs in console dfs.log.dir=../log data.input.path=filmtrust data.column.format=UIR data.model.splitter=ratio data.model.format=text data.splitter.ratio=rating # splitter, reference to basics.md data.splitter.ratio=0.8 data.splitter.cv.number=5 rec.parallel.support=true # setting evaluation, reference to basics.md rec.eval.enable=true rec.random.seed=1考虑到不同算法的配置项不相同, 因此算法配置项分别保存在相应目录下. 执行不同算法时可以在命令行输入, 也可以使用编辑好的配置文件