/// <summary> /// Initializes a new instance of the FbtBuildParameters class. /// </summary> /// <param name="supportThreshold">Number of co-occurrences of items /// to be considered for modeling.</param> /// <param name="maxItemSetSize">Bound for number of items in a /// frequent set.</param> /// <param name="minimalScore">Minimal score that a frequent set /// should have in order to be included in the returned /// results.</param> /// <param name="similarityFunction">Defines the similarity function /// to be used by the build. /// Lift favors serendipity, Co-occurrence favors /// predictability, and Jaccard is a nice compromise between the /// two.</param> /// <param name="enableModelingInsights">Enable or disable metrics /// computation for the model.</param> /// <param name="splitterStrategy">Defines the splitter strategy to be /// used by the build. /// RandomSplitter splits the usage data in train and test /// sets based on the given /// randomSplitterParameters value. /// LastEventSplitter splits the usage data in train and /// test sets based on the last /// transaction for a each user.</param> /// <param name="randomSplitterParameters">Specifies the parameters to /// be used for random splitter.</param> /// <param name="dateSplitterParameters">Specifies the parameters to /// be used for date splitter.</param> /// <param name="popularItemBenchmarkWindow">Specifies the parameters /// to be used for computing popular items for modeling insights. (in /// number of days)</param> public FbtBuildParameters(int? supportThreshold = default(int?), int? maxItemSetSize = default(int?), double? minimalScore = default(double?), string similarityFunction = default(string), bool? enableModelingInsights = default(bool?), string splitterStrategy = default(string), RandomSplitterParameters randomSplitterParameters = default(RandomSplitterParameters), DateSplitterParameters dateSplitterParameters = default(DateSplitterParameters), int? popularItemBenchmarkWindow = default(int?)) { SupportThreshold = supportThreshold; MaxItemSetSize = maxItemSetSize; MinimalScore = minimalScore; SimilarityFunction = similarityFunction; EnableModelingInsights = enableModelingInsights; SplitterStrategy = splitterStrategy; RandomSplitterParameters = randomSplitterParameters; DateSplitterParameters = dateSplitterParameters; PopularItemBenchmarkWindow = popularItemBenchmarkWindow; }
/// <summary> /// Initializes a new instance of the RecommendationBuildParameters /// class. /// </summary> /// <param name="numberOfModelIterations">The number of iterations the /// model performs. /// The higher the number, the better accuracy, but /// compute time will be higher.</param> /// <param name="numberOfModelDimensions">The number of dimensions /// relates to the number of 'features' the model will try to find /// within your data. /// Increasing the number of dimensions will allow better /// fine-tuning of the results into smaller clusters. /// However, too many dimensions will prevent the model /// from finding correlations between items.</param> /// <param name="itemCutOffLowerBound">Defines the item lower bound /// for usage condenser.</param> /// <param name="itemCutOffUpperBound">Defines the item upper bound /// for usage condenser.</param> /// <param name="userCutOffLowerBound">Defines the user lower bound /// for usage condenser.</param> /// <param name="userCutOffUpperBound">Defines the user upper bound /// for usage condenser.</param> /// <param name="enableModelingInsights">Enable or disable metrics /// computation for the model.</param> /// <param name="splitterStrategy">Defines the splitter strategy to be /// used by the build. /// RandomSplitter splits the usage data in train and test /// sets based on the given /// randomSplitterParameters value. /// LastEventSplitter splits the usage data in train and /// test sets based on the last /// transaction for a each user.</param> /// <param name="randomSplitterParameters">Specifies the parameters to /// be used for random splitter.</param> /// <param name="dateSplitterParameters">Specifies the parameters to /// be used for date splitter.</param> /// <param name="popularItemBenchmarkWindow">Specifies the parameters /// to be used for computing popular items for modeling insights. (in /// number of days)</param> /// <param name="useFeaturesInModel">Indicates if features can be used /// in order to enhance the recommendation model.</param> /// <param name="modelingFeatureList">Comma-separated list of feature /// names to be used during build.</param> /// <param name="allowColdItemPlacement">Indicates if the /// recommendation should also push cold items via feature /// similarity.</param> /// <param name="enableFeatureCorrelation">Indicates if features can /// be used in reasoning.</param> /// <param name="reasoningFeatureList">Comma-separated list of feature /// names to be used for reasoning sentences (e.g. recommendation /// explanations).</param> /// <param name="enableU2I">Allow the personalized recommendation /// a.k.a. U2I (user to item recommendations).</param> public RecommendationBuildParameters(int? numberOfModelIterations = default(int?), int? numberOfModelDimensions = default(int?), int? itemCutOffLowerBound = default(int?), int? itemCutOffUpperBound = default(int?), int? userCutOffLowerBound = default(int?), int? userCutOffUpperBound = default(int?), bool? enableModelingInsights = default(bool?), string splitterStrategy = default(string), RandomSplitterParameters randomSplitterParameters = default(RandomSplitterParameters), DateSplitterParameters dateSplitterParameters = default(DateSplitterParameters), int? popularItemBenchmarkWindow = default(int?), bool? useFeaturesInModel = default(bool?), string modelingFeatureList = default(string), bool? allowColdItemPlacement = default(bool?), bool? enableFeatureCorrelation = default(bool?), string reasoningFeatureList = default(string), bool? enableU2I = default(bool?)) { NumberOfModelIterations = numberOfModelIterations; NumberOfModelDimensions = numberOfModelDimensions; ItemCutOffLowerBound = itemCutOffLowerBound; ItemCutOffUpperBound = itemCutOffUpperBound; UserCutOffLowerBound = userCutOffLowerBound; UserCutOffUpperBound = userCutOffUpperBound; EnableModelingInsights = enableModelingInsights; SplitterStrategy = splitterStrategy; RandomSplitterParameters = randomSplitterParameters; DateSplitterParameters = dateSplitterParameters; PopularItemBenchmarkWindow = popularItemBenchmarkWindow; UseFeaturesInModel = useFeaturesInModel; ModelingFeatureList = modelingFeatureList; AllowColdItemPlacement = allowColdItemPlacement; EnableFeatureCorrelation = enableFeatureCorrelation; ReasoningFeatureList = reasoningFeatureList; EnableU2I = enableU2I; }