blob: 74041f08e8f298dbf639ef3c04b2139532e70cc9 [file] [log] [blame]
{
"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"
}
},
"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-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": {}
}
}
}