Last active
August 29, 2015 13:56
-
-
Save predictioniogists/9084806 to your computer and use it in GitHub Desktop.
Settings Initialization with Popular Rank Algorithm
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"systeminfos": { | |
"version": { | |
"value": "0.6.8", | |
"description": "PredictionIO version" | |
}, | |
"jars.pdioItemrecAlgo": { | |
"value": "predictionio-process-hadoop-scalding-assembly-0.6.8.jar" | |
}, | |
"jars.pdioItemsimAlgo": { | |
"value": "predictionio-process-hadoop-scalding-assembly-0.6.8.jar" | |
}, | |
"jars.mahoutItemrecAlgo": { | |
"value": "predictionio-process-itemrec-algorithms-scala-mahout-assembly-0.6.8.jar" | |
}, | |
"jars.pdioItemrecEval": { | |
"value": "predictionio-process-hadoop-scalding-assembly-0.6.8.jar" | |
}, | |
"jars.pdioItemsimEval": { | |
"value": "predictionio-process-hadoop-scalding-assembly-0.6.8.jar" | |
}, | |
"jars.pdioItemrecTopK": { | |
"value": "predictionio-process-itemrec-evaluations-topkitems-assembly-0.6.8.jar" | |
}, | |
"jars.pdioItemsimTopK": { | |
"value": "predictionio-process-itemsim-evaluations-topkitems-assembly-0.6.8.jar" | |
}, | |
"jars.pdioCommonsEval": { | |
"value": "predictionio-process-hadoop-scalding-assembly-0.6.8.jar" | |
}, | |
"jars.pdioCommonsParamGen": { | |
"value": "predictionio-process-commons-evaluations-paramgen-assembly-0.6.8.jar" | |
}, | |
"jars.pdioCommonsU2ITrainingTestSplit": { | |
"value": "predictionio-process-commons-evaluations-scala-u2itrainingtestsplittime-assembly-0.6.8.jar" | |
}, | |
"jars.pdioPopularRankAlgo": { | |
"value": "popularrank.jar" | |
} | |
}, | |
"engineinfos": { | |
"itemrec": { | |
"name": "Item Recommendation Engine", | |
"description": "<h6>Recommend interesting items to each user personally.</h6><p>Sample Use Cases</p><ul><li>recommend top N items to users personally</li><li>predict users' future preferences</li><li>help users to discover new topics they may be interested in</li><li>personalize content</li><li>optimize sales</li></ul>", | |
"defaultalgoinfoid": "mahout-itembased", | |
"defaultofflineevalmetricinfoid": "map_k", | |
"defaultofflineevalsplitterinfoid": "trainingtestsplit", | |
"params": { | |
"serendipity": { | |
"name": "Serendipity", | |
"description": "Preference for surprising discovery", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"defaultvalue": 0, | |
"ui": { | |
"uitype": "slider", | |
"slidermin": 0, | |
"slidermax": 10, | |
"sliderstep": 1 | |
} | |
}, | |
"freshness": { | |
"name": "Freshness", | |
"description": "Preference for newer items", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"defaultvalue": 0, | |
"ui": { | |
"uitype": "slider", | |
"slidermin": 0, | |
"slidermax": 10, | |
"sliderstep": 1 | |
} | |
}, | |
"unseenonly": { | |
"name": "", | |
"description": "", | |
"constraint": { | |
"paramtype": "boolean" | |
}, | |
"defaultvalue": false, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Recommend Unseen Only", | |
"value": "true" | |
}, | |
{ | |
"name": "Recommend Any Items", | |
"value": "false" | |
} | |
] | |
} | |
}, | |
"goal": { | |
"name": "Recommend items that users will", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"defaultvalue": "rate3", | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "rate = 5", | |
"value": "rate5" | |
}, | |
{ | |
"name": "rate >= 4", | |
"value": "rate4" | |
}, | |
{ | |
"name": "rate >= 3", | |
"value": "rate3" | |
}, | |
{ | |
"name": "like", | |
"value": "like" | |
}, | |
{ | |
"name": "conversion", | |
"value": "conversion" | |
}, | |
{ | |
"name": "view", | |
"value": "view" | |
} | |
] | |
} | |
}, | |
"numRecommendations": { | |
"name": "", | |
"description": "Number of recommendations to be generated for each user", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"defaultvalue": 50, | |
"ui": { | |
"uitype": "text" | |
} | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Recommendation Preferences", | |
"sectiontype": "normal", | |
"description": "You could adjust the following parameters using the sliders. Higher value means more important to your App.", | |
"params": [ | |
"freshness", | |
"serendipity" | |
], | |
"subsections": [ | |
{ | |
"name": "Unseen Items Only", | |
"sectiontype": "normal", | |
"description": "Should the system recommend items that users have seen before?", | |
"params": [ | |
"unseenonly" | |
] | |
}, | |
{ | |
"name": "Number of Recommendations", | |
"sectiontype": "normal", | |
"params": [ | |
"numRecommendations" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "Recommendation Goal", | |
"sectiontype": "normal", | |
"description": "Please define the goal to be maximized. Algorithms will be evaluated based on the goal defined here.", | |
"params": [ | |
"goal" | |
] | |
} | |
] | |
}, | |
"itemsim": { | |
"name": "Item Similarity Engine", | |
"description": "<h6>Discover similar items.</h6><p>Sample Use Cases</p><ul><li>predict what else would a user like if this user likes a, i.e. \"People who like this also like....\"</li><li>automatic item grouping</li></ul>", | |
"defaultalgoinfoid": "mahout-itemsimcf", | |
"defaultofflineevalmetricinfoid": "ismap_k", | |
"defaultofflineevalsplitterinfoid": "trainingtestsplit", | |
"params": { | |
"serendipity": { | |
"name": "Serendipity", | |
"description": "Preference for surprising discovery", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"defaultvalue": 0, | |
"ui": { | |
"uitype": "slider", | |
"slidermin": 0, | |
"slidermax": 10, | |
"sliderstep": 1 | |
} | |
}, | |
"freshness": { | |
"name": "Freshness", | |
"description": "Preference for newer items", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"defaultvalue": 0, | |
"ui": { | |
"uitype": "slider", | |
"slidermin": 0, | |
"slidermax": 10, | |
"sliderstep": 1 | |
} | |
}, | |
"goal": { | |
"name": "Recommendation Goal", | |
"description": "Goal to be maximized", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"defaultvalue": "rate3", | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "rate = 5", | |
"value": "rate5" | |
}, | |
{ | |
"name": "rate >= 4", | |
"value": "rate4" | |
}, | |
{ | |
"name": "rate >= 3", | |
"value": "rate3" | |
}, | |
{ | |
"name": "like", | |
"value": "like" | |
}, | |
{ | |
"name": "conversion", | |
"value": "conversion" | |
}, | |
{ | |
"name": "view", | |
"value": "view" | |
} | |
] | |
} | |
}, | |
"numSimilarItems": { | |
"name": "", | |
"description": "Number of similar items to be generated for each item.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"defaultvalue": 50, | |
"ui": { | |
"uitype": "text" | |
} | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Prediction Preferences", | |
"sectiontype": "normal", | |
"description": "You could adjust the following parameters using the sliders. Higher value means more important to your App.", | |
"params": [ | |
"freshness", | |
"serendipity" | |
], | |
"subsections": [ | |
{ | |
"name": "Number of Similar Items", | |
"sectiontype": "normal", | |
"params": [ | |
"numSimilarItems" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "Prediction Goal", | |
"sectiontype": "normal", | |
"description": "Please define the goal to be maximized. Algorithms will be evaluated based on the goal defined here.", | |
"params": [ | |
"goal" | |
] | |
} | |
] | |
} | |
}, | |
"algoinfos": { | |
"pdio-popularrank": { | |
"id": "pdio-popularrank", | |
"name": "Popular Rank", | |
"description": "Recommend popular items to users.", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.generic.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioPopularRankAlgo$ --input $dataFilePrefix$ratings.tsv --output $algoFilePrefix$itemRecScores.tsv --numRecommendations $numRecommendations$ --unseenOnly $unseenOnly$ --intParam $intParam$ --doubleParam $doubleParam$ --stringParam $stringParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.generic.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.generic.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioPopularRankAlgo$ --input $dataFilePrefix$ratings.tsv --output $algoFilePrefix$itemRecScores.tsv --numRecommendations $numRecommendations$ --unseenOnly $unseenOnly$ --intParam $intParam$ --doubleParam $doubleParam$ --stringParam $stringParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.generic.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet false --recommendationTime $recommendationTime$" | |
], | |
"params": { | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
}, | |
"doubleParam": { | |
"name": "A Double Parameter", | |
"description": "", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.5 | |
}, | |
"doubleParamMin": { | |
"name": "A Double Parameter Min", | |
"description": "", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.0 | |
}, | |
"doubleParamMax": { | |
"name": "A Double Parameter Max", | |
"description": "", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1.0 | |
}, | |
"intParam": { | |
"name": "A Integer Parameter", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"intParamMin": { | |
"name": "An Integer Parameter Min", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0 | |
}, | |
"intParamMax": { | |
"name": "An Integer Parameter Max", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 100 | |
}, | |
"stringParam": { | |
"name": "A String Parameter", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": "default" | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "Non-tunable Parameters", | |
"sectiontype": "normal", | |
"params": [ | |
"stringParam" | |
] | |
}, | |
{ | |
"name": "Tunable Parameters", | |
"sectiontype": "tuning", | |
"params": [ | |
"doubleParam", | |
"intParam" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
], | |
"paramorder": [ | |
"doubleParam", | |
"intParam", | |
"stringParam", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemrec", | |
"techreq": ["Hadoop"], | |
"datareq": ["Users, Items, and U2I Actions such as Like, Buy and Rate."] | |
}, | |
"pdio-randomrank": { | |
"name": "Random Rank", | |
"description": "Predict user preferences randomly.", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.randomrank.RandomRank --hdfs --training_dbType $appdataDbType$ --training_dbName $appdataDbName$ --training_dbHost $appdataDbHost$ --training_dbPort $appdataDbPort$ --modeldata_dbType $modeldataDbType$ --modeldata_dbName $modeldataDbName$ --modeldata_dbHost $modeldataDbHost$ --modeldata_dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numRecommendations $numRecommendations$ --modelSet $modelset$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.randomrank.RandomRank --hdfs --training_dbType $appdataTrainingDbType$ --training_dbName $appdataTrainingDbName$ --training_dbHost $appdataTrainingDbHost$ --training_dbPort $appdataTrainingDbPort$ --modeldata_dbType $modeldataTrainingDbType$ --modeldata_dbName $modeldataTrainingDbName$ --modeldata_dbHost $modeldataTrainingDbHost$ --modeldata_dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numRecommendations $numRecommendations$ --modelSet false --recommendationTime $recommendationTime$ --evalid $evalid$" | |
], | |
"paramorder": [], | |
"engineinfoid": "itemrec", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users and Items." | |
], | |
"params": {}, | |
"paramsections": [] | |
}, | |
"pdio-latestrank": { | |
"name": "Latest Rank", | |
"description": "Recommend latest items to users.", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.latestrank.LatestRank --hdfs --training_dbType $appdataDbType$ --training_dbName $appdataDbName$ --training_dbHost $appdataDbHost$ --training_dbPort $appdataDbPort$ --modeldata_dbType $modeldataDbType$ --modeldata_dbName $modeldataDbName$ --modeldata_dbHost $modeldataDbHost$ --modeldata_dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numRecommendations $numRecommendations$ --modelSet $modelset$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.latestrank.LatestRank --hdfs --training_dbType $appdataTrainingDbType$ --training_dbName $appdataTrainingDbName$ --training_dbHost $appdataTrainingDbHost$ --training_dbPort $appdataTrainingDbPort$ --modeldata_dbType $modeldataTrainingDbType$ --modeldata_dbName $modeldataTrainingDbName$ --modeldata_dbHost $modeldataTrainingDbHost$ --modeldata_dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numRecommendations $numRecommendations$ --modelSet false --recommendationTime $recommendationTime$ --evalid $evalid$" | |
], | |
"paramorder": [], | |
"engineinfoid": "itemrec", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users and Items with starttime." | |
], | |
"params": {}, | |
"paramsections": [] | |
}, | |
"pdio-knnitembased": { | |
"name": "kNN Item Based Collaborative Filtering", | |
"description": "This item-based k-NearestNeighbor algorithm predicts user preferences based on previous behaviors of users on similar items.", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.knnitembased.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.knnitembased.KNNItemBased --hdfs --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --measureParam $measureParam$ --priorCountParam $priorCountParam$ --priorCorrelParam $priorCorrelParam$ --minNumRatersParam $minNumRatersParam$ --maxNumRatersParam $maxNumRatersParam$ --minIntersectionParam $minIntersectionParam$ --minNumRatedSimParam $minNumRatedSimParam$ --numRecommendations $numRecommendations$ --unseenOnly $unseenOnly$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.knnitembased.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.knnitembased.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.knnitembased.KNNItemBased --hdfs --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --measureParam $measureParam$ --priorCountParam $priorCountParam$ --priorCorrelParam $priorCorrelParam$ --minNumRatersParam $minNumRatersParam$ --maxNumRatersParam $maxNumRatersParam$ --minIntersectionParam $minIntersectionParam$ --minNumRatedSimParam $minNumRatedSimParam$ --numRecommendations $numRecommendations$ --unseenOnly $unseenOnly$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.itemrec.knnitembased.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet false --recommendationTime $recommendationTime$" | |
], | |
"paramorder": [ | |
"measureParam", | |
"priorCountParam", | |
"priorCorrelParam", | |
"minNumRatersParam", | |
"maxNumRatersParam", | |
"minIntersectionParam", | |
"minNumRatedSimParam", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemrec", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users, Items, and U2I Actions such as Like, Conversion and Rate." | |
], | |
"params": { | |
"measureParam": { | |
"name": "Distance Function", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"defaultvalue": "correl", | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Pearson Correlation Similarity", | |
"value": "correl" | |
}, | |
{ | |
"name": "Cosine Similarity", | |
"value": "cosine" | |
}, | |
{ | |
"name": "Jaccard Similarity", | |
"value": "jaccard" | |
} | |
] | |
} | |
}, | |
"priorCountParam": { | |
"name": "Virtual Count", | |
"description": "Suggested range: 0 to 100.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 20 | |
}, | |
"priorCorrelParam": { | |
"name": "Prior Correlation", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0 | |
}, | |
"minNumRatersParam": { | |
"name": "Minimum Number of Raters", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"maxNumRatersParam": { | |
"name": "Maximum Number of Raters", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10000 | |
}, | |
"minIntersectionParam": { | |
"name": "Minimum Intersection", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"minNumRatedSimParam": { | |
"name": "Minimum Number of Rated Similar Items", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
}, | |
"priorCountParamMin": { | |
"name": "priorCountParamMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"priorCountParamMax": { | |
"name": "priorCountParamMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 30 | |
}, | |
"minNumRatersParamMin": { | |
"name": "minNumRatersParamMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"minNumRatersParamMax": { | |
"name": "minNumRatersParamMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5 | |
}, | |
"maxNumRatersParamMin": { | |
"name": "maxNumRatersParamMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10000 | |
}, | |
"maxNumRatersParamMax": { | |
"name": "maxNumRatersParamMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10000 | |
}, | |
"minIntersectionParamMin": { | |
"name": "minIntersectionParamMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"minIntersectionParamMax": { | |
"name": "minIntersectionParamMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5 | |
}, | |
"minNumRatedSimParamMin": { | |
"name": "minNumRatedSimParamMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"minNumRatedSimParamMax": { | |
"name": "minNumRatedSimParamMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5 | |
}, | |
"priorCorrelParamMin": { | |
"name": "priorCorrelParamMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0 | |
}, | |
"priorCorrelParamMax": { | |
"name": "priorCorrelParamMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.1 | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "Item Similarity Measurement", | |
"sectiontype": "normal", | |
"params": [ | |
"measureParam" | |
] | |
}, | |
{ | |
"name": "Numeric Parameters", | |
"sectiontype": "tuning", | |
"subsections": [ | |
{ | |
"name": "Regularization", | |
"sectiontype": "normal", | |
"description": "Add virtual item pairs that have zero correlation. This helps avoid noise if some item pairs have very few user actions in common.", | |
"params": [ | |
"priorCountParam", | |
"priorCorrelParam" | |
] | |
}, | |
{ | |
"name": "Other Parameters", | |
"sectiontype": "normal", | |
"description": "Filters to speed up computation and reduce noise.", | |
"params": [ | |
"minNumRatersParam", | |
"maxNumRatersParam", | |
"minIntersectionParam", | |
"minNumRatedSimParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
"mahout-itembased": { | |
"name": "Mahout's Threshold Item Based Collaborative Filtering", | |
"description": "Predicts user preferences based on previous behaviors of users on similar items.", | |
"batchcommands": [ | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $mahoutTempDir$", | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $algoDir$", | |
"$base$/bin/quiet.sh rm -rf $localTempDir$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$ --recommendationTime $recommendationTime$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$ --recommendationTime $recommendationTime$", | |
"$hadoop$ fs -getmerge $dataFilePrefix$recommendItems.csv $localTempDir$recommendItemsM.csv", | |
"$hadoop$ fs -copyFromLocal $localTempDir$recommendItemsM.csv $dataFilePrefix$recommendItemsM.csv", | |
"$hadoop$ jar $mahoutCoreJob$ org.apache.mahout.cf.taste.hadoop.item.RecommenderJob --input $dataFilePrefix$ratings.csv --itemsFile $dataFilePrefix$recommendItemsM.csv --output $algoFilePrefix$predicted.tsv --tempDir $mahoutTempDir$ --numRecommendations $numRecommendations$ --booleanData $booleanData$ --maxPrefsPerUser $maxPrefsPerUser$ --minPrefsPerUser $minPrefsPerUser$ --maxSimilaritiesPerItem $maxSimilaritiesPerItem$ --maxPrefsPerUserInItemSimilarity $maxPrefsPerUserInItemSimilarity$ --similarityClassname $similarityClassname$ --threshold $threshold$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$ --booleanData $booleanData$" | |
], | |
"offlineevalcommands": [ | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $mahoutTempDir$", | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $algoDir$", | |
"$base$/bin/quiet.sh rm -rf $localTempDir$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$ --recommendationTime $recommendationTime$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$ --recommendationTime $recommendationTime$", | |
"$hadoop$ fs -getmerge $dataFilePrefix$recommendItems.csv $localTempDir$recommendItemsM.csv", | |
"$hadoop$ fs -copyFromLocal $localTempDir$recommendItemsM.csv $dataFilePrefix$recommendItemsM.csv", | |
"$hadoop$ jar $mahoutCoreJob$ org.apache.mahout.cf.taste.hadoop.item.RecommenderJob --input $dataFilePrefix$ratings.csv --itemsFile $dataFilePrefix$recommendItemsM.csv --output $algoFilePrefix$predicted.tsv --tempDir $mahoutTempDir$ --numRecommendations $numRecommendations$ --booleanData $booleanData$ --maxPrefsPerUser $maxPrefsPerUser$ --minPrefsPerUser $minPrefsPerUser$ --maxSimilaritiesPerItem $maxSimilaritiesPerItem$ --maxPrefsPerUserInItemSimilarity $maxPrefsPerUserInItemSimilarity$ --similarityClassname $similarityClassname$ --threshold $threshold$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$ --booleanData $booleanData$" | |
], | |
"paramorder": [ | |
"booleanData", | |
"maxPrefsPerUser", | |
"minPrefsPerUser", | |
"maxSimilaritiesPerItem", | |
"maxPrefsPerUserInItemSimilarity", | |
"similarityClassname", | |
"threshold", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemrec", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users, Items, and U2I Actions such as Like, Conversion and Rate." | |
], | |
"params": { | |
"booleanData": { | |
"name": "Boolean Data", | |
"description": "Treat input data as having no preference values.", | |
"constraint": { | |
"paramtype": "boolean" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "True", | |
"value": "true" | |
}, | |
{ | |
"name": "False", | |
"value": "false" | |
} | |
] | |
}, | |
"defaultvalue": false | |
}, | |
"maxPrefsPerUser": { | |
"name": "Max Num of Preferences per User", | |
"description": "Maximum number of preferences considered per user in final recommendation phase.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"minPrefsPerUser": { | |
"name": "Min Num of Preferences per User", | |
"description": "Ignore users with less preferences than this.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"maxSimilaritiesPerItem": { | |
"name": "Max Num of Similarities per Item", | |
"description": "Maximum number of similarities considered per item.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 100 | |
}, | |
"maxPrefsPerUserInItemSimilarity": { | |
"name": "Max Num of Preferences per User in Item Similarity", | |
"description": "Max number of preferences to consider per user in the item similarity computation phase, users with more preferences will be sampled down.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1000 | |
}, | |
"similarityClassname": { | |
"name": "Distance Function", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Co-occurrence", | |
"value": "SIMILARITY_COOCCURRENCE" | |
}, | |
{ | |
"name": "Log-Likelihood", | |
"value": "SIMILARITY_LOGLIKELIHOOD" | |
}, | |
{ | |
"name": "Tanimoto Coefficient", | |
"value": "SIMILARITY_TANIMOTO_COEFFICIENT" | |
}, | |
{ | |
"name": "City Block", | |
"value": "SIMILARITY_CITY_BLOCK" | |
}, | |
{ | |
"name": "Cosine Similarity", | |
"value": "SIMILARITY_COSINE" | |
}, | |
{ | |
"name": "Pearson Correlation", | |
"value": "SIMILARITY_PEARSON_CORRELATION" | |
}, | |
{ | |
"name": "Euclidean Distance", | |
"value": "SIMILARITY_EUCLIDEAN_DISTANCE" | |
} | |
] | |
}, | |
"defaultvalue": "SIMILARITY_LOGLIKELIHOOD" | |
}, | |
"threshold": { | |
"name": "Threshold", | |
"description": "Discard item pairs with a similarity value below this.", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5e-324 | |
}, | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
}, | |
"thresholdMin": { | |
"name": "thresholdMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5e-324 | |
}, | |
"thresholdMax": { | |
"name": "thresholdMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.15 | |
}, | |
"maxPrefsPerUserMin": { | |
"name": "maxPrefsPerUserMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"maxPrefsPerUserMax": { | |
"name": "maxPrefsPerUserMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 50 | |
}, | |
"minPrefsPerUserMin": { | |
"name": "minPrefsPerUserMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"minPrefsPerUserMax": { | |
"name": "minPrefsPerUserMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5 | |
}, | |
"maxSimilaritiesPerItemMin": { | |
"name": "maxSimilaritiesPerItemMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 50 | |
}, | |
"maxSimilaritiesPerItemMax": { | |
"name": "maxSimilaritiesPerItemMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 150 | |
}, | |
"maxPrefsPerUserInItemSimilarityMin": { | |
"name": "maxPrefsPerUserInItemSimilarityMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 500 | |
}, | |
"maxPrefsPerUserInItemSimilarityMax": { | |
"name": "maxPrefsPerUserInItemSimilarityMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1500 | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "Item Similarity Measurement", | |
"sectiontype": "normal", | |
"params": [ | |
"similarityClassname" | |
] | |
}, | |
{ | |
"name": "Advanced Parameters", | |
"sectiontype": "normal", | |
"params": [ | |
"booleanData" | |
] | |
}, | |
{ | |
"name": "Numeric Parameters", | |
"sectiontype": "tuning", | |
"params": [ | |
"threshold", | |
"maxPrefsPerUser", | |
"minPrefsPerUser", | |
"maxSimilaritiesPerItem", | |
"maxPrefsPerUserInItemSimilarity" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
"mahout-parallelals": { | |
"name": "Mahout's Parallel ALS-WR", | |
"description": "Predicts user preferences based on previous behaviors of users.", | |
"batchcommands": [ | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $mahoutTempDir$", | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $algoDir$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $mahoutCoreJob$ org.apache.mahout.cf.taste.hadoop.als.ParallelALSFactorizationJob --input $dataFilePrefix$ratings.csv --output $algoFilePrefix$matrix --tempDir $mahoutTempDir$ --lambda $lambda$ --implicitFeedback $implicitFeedback$ --numFeatures $numFeatures$ --numIterations $numIterations$", | |
"$hadoop$ jar $mahoutCoreJob$ org.apache.mahout.cf.taste.hadoop.als.RecommenderJob --input $algoFilePrefix$matrix/userRatings --userFeatures $algoFilePrefix$matrix/U --itemFeatures $algoFilePrefix$matrix/M --output $algoFilePrefix$predicted.tsv --tempDir $mahoutTempDir$ --numRecommendations $numRecommendations$ --maxRating 5", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$ --implicitFeedback $implicitFeedback$" | |
], | |
"offlineevalcommands": [ | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $mahoutTempDir$", | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $algoDir$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $mahoutCoreJob$ org.apache.mahout.cf.taste.hadoop.als.ParallelALSFactorizationJob --input $dataFilePrefix$ratings.csv --output $algoFilePrefix$matrix --tempDir $mahoutTempDir$ --lambda $lambda$ --implicitFeedback $implicitFeedback$ --numFeatures $numFeatures$ --numIterations $numIterations$", | |
"$hadoop$ jar $mahoutCoreJob$ org.apache.mahout.cf.taste.hadoop.als.RecommenderJob --input $algoFilePrefix$matrix/userRatings --userFeatures $algoFilePrefix$matrix/U --itemFeatures $algoFilePrefix$matrix/M --output $algoFilePrefix$predicted.tsv --tempDir $mahoutTempDir$ --numRecommendations $numRecommendations$ --maxRating 5", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$ --implicitFeedback $implicitFeedback$" | |
], | |
"paramorder": [ | |
"lambda", | |
"implicitFeedback", | |
"alpha", | |
"numFeatures", | |
"numIterations", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemrec", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users, Items, and U2I Actions such as Like, Conversion and Rate." | |
], | |
"params": { | |
"lambda": { | |
"name": "Lambda", | |
"description": "Regularization parameter to avoid overfitting.", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.03 | |
}, | |
"implicitFeedback": { | |
"name": "Implicit Feedback", | |
"description": "Whether data consists of implicit data.", | |
"constraint": { | |
"paramtype": "boolean" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "True", | |
"value": "true" | |
}, | |
{ | |
"name": "False", | |
"value": "false" | |
} | |
] | |
}, | |
"defaultvalue": false | |
}, | |
"alpha": { | |
"name": "Alpha", | |
"description": "Confidence parameter will be ignored if Implicit Feedback is false.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 40 | |
}, | |
"numFeatures": { | |
"name": "Number of Factorized Features", | |
"description": "Dimension of the factorized feature space.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 3 | |
}, | |
"numIterations": { | |
"name": "Number of Iterations", | |
"description": "Number of training iteration.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5 | |
}, | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
}, | |
"lambdaMin": { | |
"name": "lambdaMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.01 | |
}, | |
"lambdaMax": { | |
"name": "lambdaMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.1 | |
}, | |
"alphaMin": { | |
"name": "alphaMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"alphaMax": { | |
"name": "alphaMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 50 | |
}, | |
"numFeaturesMin": { | |
"name": "numFeaturesMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 2 | |
}, | |
"numFeaturesMax": { | |
"name": "numFeaturesMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"numIterationsMin": { | |
"name": "numIterationsMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"numIterationsMax": { | |
"name": "numIterationsMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 20 | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"params": [ | |
"implicitFeedback" | |
], | |
"subsections": [ | |
{ | |
"name": "Numeric Parameters", | |
"sectiontype": "tuning", | |
"params": [ | |
"lambda", | |
"alpha", | |
"numFeatures", | |
"numIterations" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
"mahout-knnuserbased": { | |
"name": "Mahout's kNN User Based Collaborative Filtering (Non-distributed)", | |
"description": "Predicts user preferences based on previous behaviors of users who are the k-nearest neighbors (Non-distributed).", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.knnuserbased.KNNUserBasedJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --booleanData $booleanData$ --numRecommendations $numRecommendations$ --nearestN $nearestN$ --userSimilarity $userSimilarity$ --weighted $weighted$ --minSimilarity $minSimilarity$ --samplingRate $samplingRate$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$ --booleanData $booleanData$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.knnuserbased.KNNUserBasedJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --booleanData $booleanData$ --numRecommendations $numRecommendations$ --nearestN $nearestN$ --userSimilarity $userSimilarity$ --weighted $weighted$ --minSimilarity $minSimilarity$ --samplingRate $samplingRate$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$ --booleanData $booleanData$" | |
], | |
"paramorder": [ | |
"booleanData", | |
"nearestN", | |
"userSimilarity", | |
"weighted", | |
"minSimilarity", | |
"samplingRate", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemrec", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users, Items, and U2I Actions such as Like, Conversion and Rate." | |
], | |
"params": { | |
"booleanData": { | |
"name": "Boolean Data", | |
"description": "Treat input data as having no preference values.", | |
"constraint": { | |
"paramtype": "boolean" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "True", | |
"value": "true" | |
}, | |
{ | |
"name": "False", | |
"value": "false" | |
} | |
] | |
}, | |
"defaultvalue": false | |
}, | |
"nearestN": { | |
"name": "Nearest K", | |
"description": "K-nearest neighbors to a given user.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"userSimilarity": { | |
"name": "User Similarity", | |
"description": "User Similarity Measure.", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "City Block", | |
"value": "CityBlockSimilarity" | |
}, | |
{ | |
"name": "Euclidean Distance", | |
"value": "EuclideanDistanceSimilarity" | |
}, | |
{ | |
"name": "Log-Likelihood", | |
"value": "LogLikelihoodSimilarity" | |
}, | |
{ | |
"name": "Pearson Correlation", | |
"value": "PearsonCorrelationSimilarity" | |
}, | |
{ | |
"name": "Spearman Correlation", | |
"value": "SpearmanCorrelationSimilarity" | |
}, | |
{ | |
"name": "Tanimoto Coefficient", | |
"value": "TanimotoCoefficientSimilarity" | |
}, | |
{ | |
"name": "Uncentered Cosine", | |
"value": "UncenteredCosineSimilarity" | |
} | |
] | |
}, | |
"defaultvalue": "PearsonCorrelationSimilarity" | |
}, | |
"weighted": { | |
"name": "Weighted", | |
"description": "The Similarity score is weighted (only applied to Euclidean Distance, Pearson Correlation, Uncentered Cosine user similarity).", | |
"constraint": { | |
"paramtype": "boolean" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "True", | |
"value": "true" | |
}, | |
{ | |
"name": "False", | |
"value": "false" | |
} | |
] | |
}, | |
"defaultvalue": false | |
}, | |
"minSimilarity": { | |
"name": "Minimal Similarity", | |
"description": "Minimal similarity required for neighbors.", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5e-324 | |
}, | |
"samplingRate": { | |
"name": "Sampling Rate", | |
"description": "Must be greater > 0 and <= 1. Percentage of users to consider when building neighborhood. Decrease to trade quality for performance.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
}, | |
"nearestNMin": { | |
"name": "nearestNMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5 | |
}, | |
"nearestNMax": { | |
"name": "nearestNMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 15 | |
}, | |
"minSimilarityMin": { | |
"name": "minSimilarityMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5e-324 | |
}, | |
"minSimilarityMax": { | |
"name": "minSimilarityMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.2 | |
}, | |
"samplingRateMin": { | |
"name": "samplingRateMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.5 | |
}, | |
"samplingRateMax": { | |
"name": "samplingRateMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Similarity Measurement", | |
"sectiontype": "normal", | |
"params": [ | |
"userSimilarity" | |
] | |
}, | |
{ | |
"name": "Advanced Parameters", | |
"sectiontype": "normal", | |
"params": [ | |
"booleanData", | |
"weighted" | |
] | |
}, | |
{ | |
"name": "Numeric Parameters", | |
"sectiontype": "tuning", | |
"params": [ | |
"nearestN", | |
"minSimilarity", | |
"samplingRate" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
"mahout-thresholduserbased": { | |
"name": "Mahout's Threshold User Based Collaborative Filtering (Non-distributed)", | |
"description": "Predicts user preferences based on previous behaviors of users whose similarity meets or exceeds a certain threshold (Non-distributed).", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.thresholduserbased.ThresholdUserBasedJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --booleanData $booleanData$ --numRecommendations $numRecommendations$ --threshold $threshold$ --userSimilarity $userSimilarity$ --weighted $weighted$ --samplingRate $samplingRate$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$ --booleanData $booleanData$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.thresholduserbased.ThresholdUserBasedJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --booleanData $booleanData$ --numRecommendations $numRecommendations$ --threshold $threshold$ --userSimilarity $userSimilarity$ --weighted $weighted$ --samplingRate $samplingRate$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$ --booleanData $booleanData$" | |
], | |
"paramorder": [ | |
"booleanData", | |
"threshold", | |
"userSimilarity", | |
"weighted", | |
"samplingRate", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemrec", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users, Items, and U2I Actions such as Like, Conversion and Rate." | |
], | |
"params": { | |
"booleanData": { | |
"name": "Boolean Data", | |
"description": "Treat input data as having no preference values.", | |
"constraint": { | |
"paramtype": "boolean" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "True", | |
"value": "true" | |
}, | |
{ | |
"name": "False", | |
"value": "false" | |
} | |
] | |
}, | |
"defaultvalue": false | |
}, | |
"threshold": { | |
"name": "Threshold", | |
"description": "Similarity threshold.", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5e-324 | |
}, | |
"userSimilarity": { | |
"name": "User Similarity", | |
"description": "User Similarity Measure.", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "City Block", | |
"value": "CityBlockSimilarity" | |
}, | |
{ | |
"name": "Euclidean Distance", | |
"value": "EuclideanDistanceSimilarity" | |
}, | |
{ | |
"name": "Log-Likelihood", | |
"value": "LogLikelihoodSimilarity" | |
}, | |
{ | |
"name": "Pearson Correlation", | |
"value": "PearsonCorrelationSimilarity" | |
}, | |
{ | |
"name": "Spearman Correlation", | |
"value": "SpearmanCorrelationSimilarity" | |
}, | |
{ | |
"name": "Tanimoto Coefficient", | |
"value": "TanimotoCoefficientSimilarity" | |
}, | |
{ | |
"name": "Uncentered Cosine", | |
"value": "UncenteredCosineSimilarity" | |
} | |
] | |
}, | |
"defaultvalue": "PearsonCorrelationSimilarity" | |
}, | |
"weighted": { | |
"name": "Weighted", | |
"description": "The Similarity score is weighted (only applied to Euclidean Distance, Pearson Correlation, Uncentered Cosine user similarity).", | |
"constraint": { | |
"paramtype": "boolean" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "True", | |
"value": "true" | |
}, | |
{ | |
"name": "False", | |
"value": "false" | |
} | |
] | |
}, | |
"defaultvalue": false | |
}, | |
"samplingRate": { | |
"name": "Sampling Rate", | |
"description": "Must be greater > 0 and <= 1. Percentage of users to consider when building neighborhood. Decrease to trade quality for performance.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
}, | |
"thresholdMin": { | |
"name": "thresholdMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5e-324 | |
}, | |
"thresholdMax": { | |
"name": "thresholdMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.2 | |
}, | |
"samplingRateMin": { | |
"name": "samplingRateMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.5 | |
}, | |
"samplingRateMax": { | |
"name": "samplingRateMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Similarity Measurement", | |
"sectiontype": "normal", | |
"params": [ | |
"userSimilarity" | |
] | |
}, | |
{ | |
"name": "Advanced Parameters", | |
"sectiontype": "normal", | |
"params": [ | |
"booleanData", | |
"weighted" | |
] | |
}, | |
{ | |
"name": "Numeric Parameters", | |
"sectiontype": "tuning", | |
"params": [ | |
"threshold", | |
"samplingRate" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
"mahout-slopeone": { | |
"name": "Mahout's SlopeOne Rating Based Collaborative Filtering (Non-distributed)", | |
"description": "Predicts user preferences based on average difference in preference values between new items and the items for which the user has indicated preferences (Non-distributed).", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.slopeone.SlopeOneJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numRecommendations $numRecommendations$ --weighting $weighting$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.slopeone.SlopeOneJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --numRecommendations $numRecommendations$ --weighting $weighting$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$" | |
], | |
"paramorder": [ | |
"weighting", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemrec", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users, Items, and U2I Actions such as Like, Conversion and Rate." | |
], | |
"params": { | |
"weighting": { | |
"name": "Weighting", | |
"description": "Weighted preference difference.", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "No Weighting", | |
"value": "No_Weighting" | |
}, | |
{ | |
"name": "Count", | |
"value": "Count" | |
}, | |
{ | |
"name": "Standard Deviation", | |
"value": "Standard_Deviation" | |
} | |
] | |
}, | |
"defaultvalue": "Standard_Deviation" | |
}, | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "Weighting Settings", | |
"sectiontype": "normal", | |
"params": [ | |
"weighting" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
"mahout-alswr": { | |
"name": "Mahout's ALS-WR (Non-distributed)", | |
"description": "Predict user preferences using matrix factorization (Non-distributed).", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.alswr.ALSWRJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numRecommendations $numRecommendations$ --numFeatures $numFeatures$ --lambda $lambda$ --numIterations $numIterations$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.alswr.ALSWRJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --numRecommendations $numRecommendations$ --numFeatures $numFeatures$ --lambda $lambda$ --numIterations $numIterations$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$" | |
], | |
"paramorder": [ | |
"numFeatures", | |
"lambda", | |
"numIterations", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemrec", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users, Items, and U2I Actions such as Like, Conversion and Rate." | |
], | |
"params": { | |
"numFeatures": { | |
"name": "Number of Factorized Features", | |
"description": "Dimension of the factorized feature space.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 3 | |
}, | |
"lambda": { | |
"name": "Lambda", | |
"description": "Regularization param to avoid overfitting.", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.03 | |
}, | |
"numIterations": { | |
"name": "Number of Iterations", | |
"description": "Number of training iteration.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 3 | |
}, | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
}, | |
"numFeaturesMin": { | |
"name": "numFeaturesMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 2 | |
}, | |
"numFeaturesMax": { | |
"name": "numFeaturesMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"lambdaMin": { | |
"name": "lambdaMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.01 | |
}, | |
"lambdaMax": { | |
"name": "lambdaMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.1 | |
}, | |
"numIterationsMin": { | |
"name": "numIterationsMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"numIterationsMax": { | |
"name": "numIterationsMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 20 | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "", | |
"sectiontype": "tuning", | |
"params": [ | |
"numFeatures", | |
"lambda", | |
"numIterations" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
"mahout-svdsgd": { | |
"name": "Mahout's SVD-RatingSGD Recommender (Non-distributed)", | |
"description": "Predict user preferences using matrix factorization (Non-distributed).", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.svdsgd.SVDSGDJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numRecommendations $numRecommendations$ --numFeatures $numFeatures$ --learningRate $learningRate$ --preventOverfitting $preventOverfitting$ --randomNoise $randomNoise$ --numIterations $numIterations$ --learningRateDecay $learningRateDecay$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.svdsgd.SVDSGDJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --numRecommendations $numRecommendations$ --numFeatures $numFeatures$ --learningRate $learningRate$ --preventOverfitting $preventOverfitting$ --randomNoise $randomNoise$ --numIterations $numIterations$ --learningRateDecay $learningRateDecay$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$" | |
], | |
"paramorder": [ | |
"numFeatures", | |
"learningRate", | |
"preventOverfitting", | |
"randomNoise", | |
"numIterations", | |
"learningRateDecay", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemrec", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users, Items, and U2I Actions such as Like, Conversion and Rate." | |
], | |
"params": { | |
"numFeatures": { | |
"name": "Number of Factorized Features", | |
"description": "Dimension of the factorized feature space.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 3 | |
}, | |
"learningRate": { | |
"name": "Learning Rate", | |
"description": "Learning rate (step size).", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.01 | |
}, | |
"preventOverfitting": { | |
"name": "Prevent Overfitting", | |
"description": "Parameter used to prevent overfitting.", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.1 | |
}, | |
"randomNoise": { | |
"name": "Random Noise", | |
"description": "Standard deviation for random initialization of feature.", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.01 | |
}, | |
"numIterations": { | |
"name": "Number of Iterations", | |
"description": "Number of training iterations.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 3 | |
}, | |
"learningRateDecay": { | |
"name": "Learning Rate Decay", | |
"description": "Multiplicative decay factor for Learning Rate.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
}, | |
"numFeaturesMin": { | |
"name": "numFeaturesMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 2 | |
}, | |
"numFeaturesMax": { | |
"name": "numFeaturesMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"learningRateMin": { | |
"name": "learningRateMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.01 | |
}, | |
"learningRateMax": { | |
"name": "learningRateMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.05 | |
}, | |
"preventOverfittingMin": { | |
"name": "preventOverfittingMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.1 | |
}, | |
"preventOverfittingMax": { | |
"name": "preventOverfittingMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.5 | |
}, | |
"randomNoiseMin": { | |
"name": "randomNoiseMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.01 | |
}, | |
"randomNoiseMax": { | |
"name": "randomNoiseMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.05 | |
}, | |
"numIterationsMin": { | |
"name": "numIterationsMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"numIterationsMax": { | |
"name": "numIterationsMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"learningRateDecayMin": { | |
"name": "learningRateDecayMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"learningRateDecayMax": { | |
"name": "learningRateDecayMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "Numeric Parameters", | |
"sectiontype": "tuning", | |
"params": [ | |
"numFeatures", | |
"learningRate", | |
"preventOverfitting", | |
"randomNoise", | |
"numIterations", | |
"learningRateDecay" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
"mahout-svdplusplus": { | |
"name": "Mahout's SVDPlusPlus Recommender (Non-distributed)", | |
"description": "Predict user preferences using matrix factorization (Non-distributed).", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.svdplusplus.SVDPlusPlusJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numRecommendations $numRecommendations$ --numFeatures $numFeatures$ --learningRate $learningRate$ --preventOverfitting $preventOverfitting$ --randomNoise $randomNoise$ --numIterations $numIterations$ --learningRateDecay $learningRateDecay$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataCopy --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -jar $base$/lib/$mahoutItemrecAlgo$ io.prediction.algorithms.mahout.itemrec.svdplusplus.SVDPlusPlusJob --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --numRecommendations $numRecommendations$ --numFeatures $numFeatures$ --learningRate $learningRate$ --preventOverfitting $preventOverfitting$ --randomNoise $randomNoise$ --numIterations $numIterations$ --learningRateDecay $learningRateDecay$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecAlgo$ io.prediction.algorithms.scalding.mahout.itemrec.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet $modelset$ --unseenOnly $unseenOnly$ --numRecommendations $numRecommendations$ --recommendationTime $recommendationTime$" | |
], | |
"paramorder": [ | |
"numFeatures", | |
"learningRate", | |
"preventOverfitting", | |
"randomNoise", | |
"numIterations", | |
"learningRateDecay", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemrec", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users, Items, and U2I Actions such as Like, Conversion and Rate." | |
], | |
"params": { | |
"numFeatures": { | |
"name": "Number of Factorized Features", | |
"description": "Dimension of the factorized feature space.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 3 | |
}, | |
"learningRate": { | |
"name": "Learning Rate", | |
"description": "Learning rate (step size).", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.01 | |
}, | |
"preventOverfitting": { | |
"name": "Prevent Overfitting", | |
"description": "Parameter used to prevent overfitting.", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.1 | |
}, | |
"randomNoise": { | |
"name": "Random Noise", | |
"description": "Standard deviation for random initialization of feature.", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.01 | |
}, | |
"numIterations": { | |
"name": "Number of Iterations", | |
"description": "Number of training iterations.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 3 | |
}, | |
"learningRateDecay": { | |
"name": "Learning Rate Decay", | |
"description": "Multiplicative decay factor for Learning Rate.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
}, | |
"numFeaturesMin": { | |
"name": "numFeaturesMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 2 | |
}, | |
"numFeaturesMax": { | |
"name": "numFeaturesMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"learningRateMin": { | |
"name": "learningRateMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.01 | |
}, | |
"learningRateMax": { | |
"name": "learningRateMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.05 | |
}, | |
"preventOverfittingMin": { | |
"name": "preventOverfittingMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.1 | |
}, | |
"preventOverfittingMax": { | |
"name": "preventOverfittingMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.5 | |
}, | |
"randomNoiseMin": { | |
"name": "randomNoiseMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.01 | |
}, | |
"randomNoiseMax": { | |
"name": "randomNoiseMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.05 | |
}, | |
"numIterationsMin": { | |
"name": "numIterationsMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"numIterationsMax": { | |
"name": "numIterationsMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"learningRateDecayMin": { | |
"name": "learningRateDecayMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"learningRateDecayMax": { | |
"name": "learningRateDecayMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "Numeric Parameters", | |
"sectiontype": "tuning", | |
"params": [ | |
"numFeatures", | |
"learningRate", | |
"preventOverfitting", | |
"randomNoise", | |
"numIterations", | |
"learningRateDecay" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
"pdio-itemsimrandomrank": { | |
"name": "Random Rank", | |
"description": "Predict item similarities randomly.", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.itemsim.randomrank.RandomRank --hdfs --training_dbType $appdataDbType$ --training_dbName $appdataDbName$ --training_dbHost $appdataDbHost$ --training_dbPort $appdataDbPort$ --modeldata_dbType $modeldataDbType$ --modeldata_dbName $modeldataDbName$ --modeldata_dbHost $modeldataDbHost$ --modeldata_dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numSimilarItems $numSimilarItems$ --modelSet $modelset$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.itemsim.randomrank.RandomRank --hdfs --training_dbType $appdataTrainingDbType$ --training_dbName $appdataTrainingDbName$ --training_dbHost $appdataTrainingDbHost$ --training_dbPort $appdataTrainingDbPort$ --modeldata_dbType $modeldataTrainingDbType$ --modeldata_dbName $modeldataTrainingDbName$ --modeldata_dbHost $modeldataTrainingDbHost$ --modeldata_dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numSimilarItems $numSimilarItems$ --modelSet false --evalid $evalid$ --recommendationTime $recommendationTime$" | |
], | |
"paramorder": [], | |
"engineinfoid": "itemsim", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Items." | |
], | |
"params": {}, | |
"paramsections": [] | |
}, | |
"pdio-itemsimlatestrank": { | |
"name": "Latest Rank", | |
"description": "Consider latest items as most similar.", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.itemsim.latestrank.LatestRank --hdfs --training_dbType $appdataDbType$ --training_dbName $appdataDbName$ --training_dbHost $appdataDbHost$ --training_dbPort $appdataDbPort$ --modeldata_dbType $modeldataDbType$ --modeldata_dbName $modeldataDbName$ --modeldata_dbHost $modeldataDbHost$ --modeldata_dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numSimilarItems $numSimilarItems$ --modelSet $modelset$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.itemsim.latestrank.LatestRank --hdfs --training_dbType $appdataTrainingDbType$ --training_dbName $appdataTrainingDbName$ --training_dbHost $appdataTrainingDbHost$ --training_dbPort $appdataTrainingDbPort$ --modeldata_dbType $modeldataTrainingDbType$ --modeldata_dbName $modeldataTrainingDbName$ --modeldata_dbHost $modeldataTrainingDbHost$ --modeldata_dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --numSimilarItems $numSimilarItems$ --modelSet false --evalid $evalid$ --recommendationTime $recommendationTime$" | |
], | |
"paramorder": [], | |
"engineinfoid": "itemsim", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Items with starttime." | |
], | |
"params": {}, | |
"paramsections": [] | |
}, | |
"pdio-itemsimcf": { | |
"name": "Item Similarity Collaborative Filtering", | |
"description": "This algorithm predicts similar items which the user may also like.", | |
"batchcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.itemsim.itemsimcf.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.itemsim.itemsimcf.ItemSimilarity --hdfs --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --measureParam $measureParam$ --priorCountParam $priorCountParam$ --priorCorrelParam $priorCorrelParam$ --minNumRatersParam $minNumRatersParam$ --maxNumRatersParam $maxNumRatersParam$ --minIntersectionParam $minIntersectionParam$ --numSimilarItems $numSimilarItems$", | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.itemsim.itemsimcf.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.itemsim.itemsimcf.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.itemsim.itemsimcf.ItemSimilarity --hdfs --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --measureParam $measureParam$ --priorCountParam $priorCountParam$ --priorCorrelParam $priorCorrelParam$ --minNumRatersParam $minNumRatersParam$ --maxNumRatersParam $maxNumRatersParam$ --minIntersectionParam $minIntersectionParam$ --numSimilarItems $numSimilarItems$", | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.itemsim.itemsimcf.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet false --recommendationTime $recommendationTime$" | |
], | |
"paramorder": [ | |
"measureParam", | |
"priorCountParam", | |
"priorCorrelParam", | |
"minNumRatersParam", | |
"maxNumRatersParam", | |
"minIntersectionParam", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemsim", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users, Items, and U2I Actions such as Like, Conversion and Rate." | |
], | |
"params": { | |
"measureParam": { | |
"name": "Distance Function", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Pearson Correlation Similarity", | |
"value": "correl" | |
}, | |
{ | |
"name": "Cosine Similarity", | |
"value": "cosine" | |
}, | |
{ | |
"name": "Jaccard Similarity", | |
"value": "jaccard" | |
} | |
] | |
}, | |
"defaultvalue": "correl" | |
}, | |
"priorCountParam": { | |
"name": "Virtual Count", | |
"description": "Suggested range: 0 to 100.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 20 | |
}, | |
"priorCorrelParam": { | |
"name": "Prior Correlation", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0 | |
}, | |
"minNumRatersParam": { | |
"name": "Minimum Number of Raters", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"maxNumRatersParam": { | |
"name": "Maximum Number of Raters", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10000 | |
}, | |
"minIntersectionParam": { | |
"name": "Minimum Intersection", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
}, | |
"priorCountParamMin": { | |
"name": "priorCountParamMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10 | |
}, | |
"priorCountParamMax": { | |
"name": "priorCountParamMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 30 | |
}, | |
"minNumRatersParamMin": { | |
"name": "minNumRatersParamMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"minNumRatersParamMax": { | |
"name": "minNumRatersParamMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5 | |
}, | |
"maxNumRatersParamMin": { | |
"name": "maxNumRatersParamMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10000 | |
}, | |
"maxNumRatersParamMax": { | |
"name": "maxNumRatersParamMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 10000 | |
}, | |
"minIntersectionParamMin": { | |
"name": "minIntersectionParamMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"minIntersectionParamMax": { | |
"name": "minIntersectionParamMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5 | |
}, | |
"priorCorrelParamMin": { | |
"name": "priorCorrelParamMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0 | |
}, | |
"priorCorrelParamMax": { | |
"name": "priorCorrelParamMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.1 | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "Item Similarity Measurement", | |
"sectiontype": "normal", | |
"params": [ | |
"measureParam" | |
] | |
}, | |
{ | |
"name": "Numeric Parameters", | |
"sectiontype": "tuning", | |
"subsections": [ | |
{ | |
"name": "Regularization", | |
"sectiontype": "normal", | |
"description": "Add virtual item pairs that have zero correlation. This helps avoid noise if some item pairs have very few user actions in common.", | |
"params": [ | |
"priorCountParam", | |
"priorCorrelParam" | |
] | |
}, | |
{ | |
"name": "Other Parameters", | |
"sectiontype": "normal", | |
"description": "Filters to speed up computation and reduce noise.", | |
"params": [ | |
"minNumRatersParam", | |
"maxNumRatersParam", | |
"minIntersectionParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
] | |
}, | |
"mahout-itemsimcf": { | |
"name": "Mahout's Item Similarity Collaborative Filtering", | |
"description": "This algorithm predicts similar items which the user may also like.", | |
"batchcommands": [ | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $mahoutTempDir$", | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $algoDir$", | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.mahout.itemsim.DataCopy --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.mahout.itemsim.DataPreparator --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $mahoutCoreJob$ org.apache.mahout.cf.taste.hadoop.similarity.item.ItemSimilarityJob --input $dataFilePrefix$ratings.csv --output $algoFilePrefix$similarities.tsv --tempDir $mahoutTempDir$ --maxSimilaritiesPerItem $numSimilarItems$ --booleanData $booleanData$ --maxPrefsPerUser $maxPrefsPerUser$ --minPrefsPerUser $minPrefsPerUser$ --similarityClassname $similarityClassname$ --threshold $threshold$", | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.mahout.itemsim.ModelConstructor --hdfs --dbType $modeldataDbType$ --dbName $modeldataDbName$ --dbHost $modeldataDbHost$ --dbPort $modeldataDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --modelSet $modelset$ --numSimilarItems $numSimilarItems$ --recommendationTime $recommendationTime$" | |
], | |
"offlineevalcommands": [ | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $mahoutTempDir$", | |
"$base$/bin/quiet.sh $hadoop$ fs -rmr $algoDir$", | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.mahout.itemsim.DataCopy --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.mahout.itemsim.DataPreparator --hdfs --dbType $appdataTrainingDbType$ --dbName $appdataTrainingDbName$ --dbHost $appdataTrainingDbHost$ --dbPort $appdataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ $itypes$ --viewParam $viewParam$ --likeParam $likeParam$ --dislikeParam $dislikeParam$ --conversionParam $conversionParam$ --conflictParam $conflictParam$", | |
"$hadoop$ jar $mahoutCoreJob$ org.apache.mahout.cf.taste.hadoop.similarity.item.ItemSimilarityJob --input $dataFilePrefix$ratings.csv --output $algoFilePrefix$similarities.tsv --tempDir $mahoutTempDir$ --maxSimilaritiesPerItem $numSimilarItems$ --booleanData $booleanData$ --maxPrefsPerUser $maxPrefsPerUser$ --minPrefsPerUser $minPrefsPerUser$ --similarityClassname $similarityClassname$ --threshold $threshold$", | |
"$hadoop$ jar $base$/lib/$pdioItemsimAlgo$ io.prediction.algorithms.scalding.mahout.itemsim.ModelConstructor --hdfs --dbType $modeldataTrainingDbType$ --dbName $modeldataTrainingDbName$ --dbHost $modeldataTrainingDbHost$ --dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --algoid $algoid$ --evalid $evalid$ --modelSet $modelset$ --numSimilarItems $numSimilarItems$ --recommendationTime $recommendationTime$" | |
], | |
"paramorder": [ | |
"booleanData", | |
"maxPrefsPerUser", | |
"minPrefsPerUser", | |
"similarityClassname", | |
"threshold", | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam", | |
"conflictParam" | |
], | |
"engineinfoid": "itemsim", | |
"techreq": [ | |
"Hadoop" | |
], | |
"datareq": [ | |
"Users, Items, and U2I Actions such as Like, Conversion and Rate." | |
], | |
"params": { | |
"booleanData": { | |
"name": "Boolean Data", | |
"description": "Treat input data as having no preference values.", | |
"constraint": { | |
"paramtype": "boolean" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "True", | |
"value": "true" | |
}, | |
{ | |
"name": "False", | |
"value": "false" | |
} | |
] | |
}, | |
"defaultvalue": false | |
}, | |
"maxPrefsPerUser": { | |
"name": "Max Num of Preferences per User", | |
"description": "Maximum number of preferences considered per user in final recommendation phase.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1000 | |
}, | |
"minPrefsPerUser": { | |
"name": "Min Num of Preferences per User", | |
"description": "Ignore users with less preferences than this.", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"similarityClassname": { | |
"name": "Distance Function", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Co-occurrence", | |
"value": "SIMILARITY_COOCCURRENCE" | |
}, | |
{ | |
"name": "Log-Likelihood", | |
"value": "SIMILARITY_LOGLIKELIHOOD" | |
}, | |
{ | |
"name": "Tanimoto Coefficient", | |
"value": "SIMILARITY_TANIMOTO_COEFFICIENT" | |
}, | |
{ | |
"name": "City Block", | |
"value": "SIMILARITY_CITY_BLOCK" | |
}, | |
{ | |
"name": "Cosine Similarity", | |
"value": "SIMILARITY_COSINE" | |
}, | |
{ | |
"name": "Pearson Correlation", | |
"value": "SIMILARITY_PEARSON_CORRELATION" | |
}, | |
{ | |
"name": "Euclidean Distance", | |
"value": "SIMILARITY_EUCLIDEAN_DISTANCE" | |
} | |
] | |
}, | |
"defaultvalue": "SIMILARITY_LOGLIKELIHOOD" | |
}, | |
"threshold": { | |
"name": "Threshold", | |
"description": "Discard item pairs with a similarity value below this.", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5e-324 | |
}, | |
"viewParam": { | |
"name": "View Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "3" | |
}, | |
"likeParam": { | |
"name": "Like Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "5" | |
}, | |
"dislikeParam": { | |
"name": "Dislike Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "1" | |
}, | |
"conversionParam": { | |
"name": "Conversion Score", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "1", | |
"value": "1" | |
}, | |
{ | |
"name": "2", | |
"value": "2" | |
}, | |
{ | |
"name": "3", | |
"value": "3" | |
}, | |
{ | |
"name": "4", | |
"value": "4" | |
}, | |
{ | |
"name": "5", | |
"value": "5" | |
}, | |
{ | |
"name": "Ignore", | |
"value": "ignore" | |
} | |
] | |
}, | |
"defaultvalue": "4" | |
}, | |
"conflictParam": { | |
"name": "Override", | |
"description": "", | |
"constraint": { | |
"paramtype": "string" | |
}, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Use the latest action", | |
"value": "latest" | |
}, | |
{ | |
"name": "Use the highest preference score one", | |
"value": "highest" | |
}, | |
{ | |
"name": "Use the lowest preference score one", | |
"value": "lowest" | |
} | |
] | |
}, | |
"defaultvalue": "latest" | |
}, | |
"thresholdMin": { | |
"name": "thresholdMin", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5e-324 | |
}, | |
"thresholdMax": { | |
"name": "thresholdMax", | |
"constraint": { | |
"paramtype": "double" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 0.15 | |
}, | |
"maxPrefsPerUserMin": { | |
"name": "maxPrefsPerUserMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 500 | |
}, | |
"maxPrefsPerUserMax": { | |
"name": "maxPrefsPerUserMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1500 | |
}, | |
"minPrefsPerUserMin": { | |
"name": "minPrefsPerUserMin", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 1 | |
}, | |
"minPrefsPerUserMax": { | |
"name": "minPrefsPerUserMax", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"ui": { | |
"uitype": "text" | |
}, | |
"defaultvalue": 5 | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameter Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "Item Similarity Measurement", | |
"sectiontype": "normal", | |
"params": [ | |
"similarityClassname" | |
] | |
}, | |
{ | |
"name": "Advanced Parameters", | |
"sectiontype": "normal", | |
"params": [ | |
"booleanData" | |
] | |
}, | |
{ | |
"name": "Numeric Parameters", | |
"sectiontype": "tuning", | |
"params": [ | |
"threshold", | |
"maxPrefsPerUser", | |
"minPrefsPerUser" | |
] | |
} | |
] | |
}, | |
{ | |
"name": "User Actions Representation Settings", | |
"sectiontype": "normal", | |
"subsections": [ | |
{ | |
"name": "User Action Scores", | |
"sectiontype": "normal", | |
"description": "Define the preference score represented by each user action from 1 to 5. 5 is the most preferred, 1 is the least preferred. 3 is neutral.", | |
"params": [ | |
"viewParam", | |
"likeParam", | |
"dislikeParam", | |
"conversionParam" | |
] | |
}, | |
{ | |
"name": "Overriding", | |
"sectiontype": "normal", | |
"description": "When there are conflicting actions, e.g. a user gives an item a rating 5 but later dislikes it, determine which action will be considered as final preference.", | |
"params": [ | |
"conflictParam" | |
] | |
} | |
] | |
} | |
] | |
} | |
}, | |
"offlineevalsplitterinfos": { | |
"trainingtestsplit": { | |
"name": "Training/Test Data Splitter With Time Order Option", | |
"description": "Split data into training, validation and test sets", | |
"engineinfoids": [ | |
"itemrec", "itemsim" | |
], | |
"commands": [ | |
"java -jar $base$/lib/$pdioCommonsU2ITrainingTestSplit$ --hadoop $hadoop$ --pdioEvalJar $base$/lib/$pdioCommonsEval$ --sequenceNum $iteration$ --hdfs --dbType $appdataDbType$ --dbName $appdataDbName$ --dbHost $appdataDbHost$ --dbPort $appdataDbPort$ --training_dbType $appdataTrainingDbType$ --training_dbName $appdataTrainingDbName$ --training_dbHost $appdataTrainingDbHost$ --training_dbPort $appdataTrainingDbPort$ --validation_dbType $appdataValidationDbType$ --validation_dbName $appdataValidationDbName$ --validation_dbHost $appdataValidationDbHost$ --validation_dbPort $appdataValidationDbPort$ --test_dbType $appdataTestDbType$ --test_dbName $appdataTestDbName$ --test_dbHost $appdataTestDbHost$ --test_dbPort $appdataTestDbPort$ --hdfsRoot $hdfsRoot$ --localTempRoot $localTempRoot$ --appid $appid$ --engineid $engineid$ --evalid $evalid$ $itypes$ --trainingPercent $trainingPercent$ --validationPercent $validationPercent$ --testPercent $testPercent$ --timeorder $timeorder$" | |
], | |
"params": { | |
"timeorder": { | |
"name": "Data Selection", | |
"description": "Random with Time Order means that data in Test Set is always newer than those in Train Set.", | |
"constraint": { | |
"paramtype": "boolean" | |
}, | |
"defaultvalue": false, | |
"ui": { | |
"uitype": "selection", | |
"selections": [ | |
{ | |
"name": "Random Sampling", | |
"value": "false" | |
}, | |
{ | |
"name": "Random with Time Order", | |
"value": "true" | |
} | |
] | |
} | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameters", | |
"sectiontype": "normal", | |
"description": "", | |
"params": [ | |
"timeorder" | |
] | |
} | |
], | |
"paramorder": [ | |
"timeorder" | |
] | |
} | |
}, | |
"offlineevalmetricinfos": { | |
"map_k": { | |
"name": "MAP@k", | |
"description": "Mean Average Precision", | |
"engineinfoids": [ | |
"itemrec" | |
], | |
"commands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemrecEval$ io.prediction.metrics.scalding.itemrec.map.MAPAtKDataPreparator --hdfs --test_dbType $appdataTestDbType$ --test_dbName $appdataTestDbName$ --test_dbHost $appdataTestDbHost$ --test_dbPort $appdataTestDbPort$ --training_dbType $appdataTrainingDbType$ --training_dbName $appdataTrainingDbName$ --training_dbHost $appdataTrainingDbHost$ --training_dbPort $appdataTrainingDbPort$ --modeldata_dbType $modeldataTrainingDbType$ --modeldata_dbName $modeldataTrainingDbName$ --modeldata_dbHost $modeldataTrainingDbHost$ --modeldata_dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --evalid $evalid$ --metricid $metricid$ --algoid $algoid$ --kParam $kParam$ --goalParam $goalParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -Devalid=$evalid$ -Dalgoid=$algoid$ -Dk=$kParam$ -Dmetricid=$metricid$ -Dhdfsroot=$hdfsRoot$ -jar $base$/lib/$pdioItemrecTopK$", | |
"$hadoop$ jar $base$/lib/$pdioItemrecEval$ io.prediction.metrics.scalding.itemrec.map.MAPAtK --hdfs --dbType $settingsDbType$ --dbName $settingsDbName$ --dbHost $settingsDbHost$ --dbPort $settingsDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --evalid $evalid$ --metricid $metricid$ --algoid $algoid$ --iteration $iteration$ --splitset $splitset$ --kParam $kParam$" | |
], | |
"params": { | |
"kParam": { | |
"name": "k", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"defaultvalue": 20, | |
"ui": { | |
"uitype": "text" | |
} | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameters", | |
"sectiontype": "normal", | |
"description": "", | |
"params": [ | |
"kParam" | |
] | |
} | |
], | |
"paramorder": [ | |
"kParam" | |
] | |
}, | |
"ismap_k": { | |
"name": "ISMAP@k", | |
"description": "Item Similarity Mean Average Precision at k", | |
"engineinfoids": [ | |
"itemsim" | |
], | |
"commands": [ | |
"$hadoop$ jar $base$/lib/$pdioItemsimEval$ io.prediction.metrics.scalding.itemsim.ismap.ISMAPAtKDataPreparator --hdfs --test_dbType $appdataTestDbType$ --test_dbName $appdataTestDbName$ --test_dbHost $appdataTestDbHost$ --test_dbPort $appdataTestDbPort$ --training_dbType $appdataTrainingDbType$ --training_dbName $appdataTrainingDbName$ --training_dbHost $appdataTrainingDbHost$ --training_dbPort $appdataTrainingDbPort$ --modeldata_dbType $modeldataTrainingDbType$ --modeldata_dbName $modeldataTrainingDbName$ --modeldata_dbHost $modeldataTrainingDbHost$ --modeldata_dbPort $modeldataTrainingDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --evalid $evalid$ --metricid $metricid$ --algoid $algoid$ --kParam $kParam$ --goalParam $goalParam$", | |
"java -Dio.prediction.base=$base$ $configFile$ -Devalid=$evalid$ -Dalgoid=$algoid$ -Dk=$kParam$ -Dmetricid=$metricid$ -Dhdfsroot=$hdfsRoot$ -jar $base$/lib/$pdioItemsimTopK$", | |
"$hadoop$ jar $base$/lib/$pdioItemsimEval$ io.prediction.metrics.scalding.itemsim.ismap.ISMAPAtK --hdfs --dbType $settingsDbType$ --dbName $settingsDbName$ --dbHost $settingsDbHost$ --dbPort $settingsDbPort$ --hdfsRoot $hdfsRoot$ --appid $appid$ --engineid $engineid$ --evalid $evalid$ --metricid $metricid$ --algoid $algoid$ --iteration $iteration$ --splitset $splitset$ --kParam $kParam$" | |
], | |
"params": { | |
"kParam": { | |
"name": "k", | |
"description": "", | |
"constraint": { | |
"paramtype": "integer" | |
}, | |
"defaultvalue": 20, | |
"ui": { | |
"uitype": "text" | |
} | |
} | |
}, | |
"paramsections": [ | |
{ | |
"name": "Parameters", | |
"sectiontype": "normal", | |
"description": "", | |
"params": [ | |
"kParam" | |
] | |
} | |
], | |
"paramorder": [ | |
"kParam" | |
] | |
} | |
}, | |
"paramgeninfos": { | |
"random": { | |
"name": "Random Search", | |
"description": "Random search within specified interval", | |
"commands": [ | |
"java -Dio.prediction.base=$base$ $configFile$ -Devalids=$evalids$ -Dalgoid=$algoid$ -Dloop=$loop$ -Dparamsets=$paramsets$ -jar $base$/lib/$pdioCommonsParamGen$" | |
], | |
"paramorder": [], | |
"paramnames": {}, | |
"paramdescription": {}, | |
"paramdefaults": {} | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment