public ItemAverageRecommender(IDataModel dataModel) : base(dataModel) { this.itemAverages = new FastByIDMap <IRunningAverage>(); this.refreshHelper = new RefreshHelper(() => { buildAverageDiffs(); }); refreshHelper.AddDependency(dataModel); buildAverageDiffs(); }
public AbstractUserNeighborhood(UserSimilarity userSimilarity, DataModel dataModel, double samplingRate) { this.userSimilarity = userSimilarity; this.dataModel = dataModel; this.samplingRate = samplingRate; this.refreshHelper = new RefreshHelper(null); this.refreshHelper.addDependency(this.dataModel); this.refreshHelper.addDependency(this.userSimilarity); }
private void DoRefreshColumns() { var list = NodesTableColumns = new ObservableCollection <NodeDbTableColumnsToExcel>(); RefreshHelper.RefreshTableColumns(eventAgg, root, ref list); NodesTableColumns = list; // slow?? :-) SetDescShown(AreDescsShown); }
public SupplierManagementCtrl(IManagementService managemntService) : base() { _managementService = managemntService; InitializeComponent(); this.Dock = DockStyle.Fill; this.gridControl1.DataSource = _managementService.GetAllSuppliers(); colId.Visible = false; _refreshHelper = new RefreshHelper(gridView1, nameof(parentModel.Id).ToString()); }
/// Creates this on top of the given {@link UserSimilarity}. /// The cache size is capped by the given size. public CachingUserSimilarity(IUserSimilarity similarity, int maxCacheSize) { //Preconditions.checkArgument(similarity != null, "similarity is null"); this.similarity = similarity; this.similarityCache = new Cache <Tuple <long, long>, Double>(new SimilarityRetriever(similarity), maxCacheSize); this.refreshHelper = new RefreshHelper(() => { similarityCache.Clear(); }); refreshHelper.AddDependency(similarity); }
public AbstractUserNeighborhood(IUserSimilarity userSimilarity, IDataModel dataModel, double samplingRate) { //Preconditions.checkArgument(userSimilarity != null, "userSimilarity is null"); //Preconditions.checkArgument(dataModel != null, "dataModel is null"); //Preconditions.checkArgument(samplingRate > 0.0 && samplingRate <= 1.0, "samplingRate must be in (0,1]"); this.userSimilarity = userSimilarity; this.dataModel = dataModel; this.samplingRate = samplingRate; this.refreshHelper = new RefreshHelper(null); this.refreshHelper.AddDependency(this.dataModel); this.refreshHelper.AddDependency(this.userSimilarity); }
public ItemUserAverageRecommender(IDataModel dataModel) : base(dataModel) { this.itemAverages = new FastByIDMap <IRunningAverage>(); this.userAverages = new FastByIDMap <IRunningAverage>(); this.overallAveragePrefValue = new FullRunningAverage(); //this.buildAveragesLock = new ReentrantReadWriteLock(); this.refreshHelper = new RefreshHelper(() => { buildAverageDiffs(); }); refreshHelper.AddDependency(dataModel); buildAverageDiffs(); }
/// <p> /// Creates a possibly weighted {@link AbstractSimilarity}. /// </p> public AbstractSimilarity(IDataModel dataModel, Weighting weighting, bool centerData) : base(dataModel) { this.weighted = weighting == Weighting.WEIGHTED; this.centerData = centerData; this.cachedNumItems = dataModel.GetNumItems(); this.cachedNumUsers = dataModel.GetNumUsers(); this.refreshHelper = new RefreshHelper(() => { cachedNumItems = dataModel.GetNumItems(); cachedNumUsers = dataModel.GetNumUsers(); } ); }
public ContractManagementCtrl(IManagementService managemntService) { _managemntService = managemntService; InitializeComponent(); this.Dock = DockStyle.Fill; this.gridControl1.DataSource = _managemntService.GetAllPoNumbers(); colPOId.Visible = false; RenderCommonHelper.SetColNotEditable(colCreateDate); RenderCommonHelper.SetColNotEditable(colUpdateDate); _refreshHelper = new RefreshHelper(gridView1, nameof(parentModel.PoNumber).ToString()); }
public CachingUserSimilarity(UserSimilarity similarity, int maxCacheSize) { Action refreshRunnable = null; this.similarity = similarity; this.similarityCache = new Cache <Tuple <long, long>, double>(new SimilarityRetriever(similarity), maxCacheSize); if (refreshRunnable == null) { refreshRunnable = () => this.similarityCache.clear(); } this.refreshHelper = new RefreshHelper(refreshRunnable); this.refreshHelper.addDependency(similarity); }
private void DoRefresh() { var list = NodesTable = new ObservableCollection <NodeDbTableToExcel>(); RefreshHelper.RefreshTables(eventAgg, root, ref list); NodesTable = list; // slow?? :-) SetDescShown(AreDescsShown); //third tree view... (Tables-Columns -> Excels -> Sheets) DoRefreshColumns(); }
protected AbstractFactorizer(DataModel dataModel) { Action refreshRunnable = null; this.dataModel = dataModel; this.buildMappings(); if (refreshRunnable == null) { refreshRunnable = () => this.buildMappings(); } this.refreshHelper = new RefreshHelper(refreshRunnable); this.refreshHelper.addDependency(dataModel); }
public ItemAverageRecommender(DataModel dataModel) : base(dataModel) { Action refreshRunnable = null; this.itemAverages = new FastByIDMap <RunningAverage>(); if (refreshRunnable == null) { refreshRunnable = () => this.buildAverageDiffs(); } this.refreshHelper = new RefreshHelper(refreshRunnable); this.refreshHelper.addDependency(dataModel); this.buildAverageDiffs(); }
private async Task <bool> DisableRefresh(IDocumentStore store) { var config = new RefreshConfiguration { Disabled = true, RefreshFrequencyInSec = 100, }; await RefreshHelper.SetupExpiration(store, Server.ServerStore, config); var database = await Databases.GetDocumentDatabaseInstanceFor(store); return(database.ExpiredDocumentsCleaner != null); }
public InDeliveryCtrl(IStockService stockService) { _stockService = stockService; _refreshHelper = new RefreshHelper(gridView1, nameof(parentModel.OutStockNumber).ToString()); InitializeComponent(); this.Dock = DockStyle.Fill; //this.gridControl1.DataSource = _stockService.GetAllOutInstock(); RenderCommonHelper.SetColNotEditable(colOutStockCategory); RenderCommonHelper.SetColNotEditable(colRequestNumber); RenderCommonHelper.SetColNotEditable(colAddress); RenderCommonHelper.SetColNotEditable(colContractNumber); }
private void Form1_Load(object sender, System.EventArgs e) { helper = new RefreshHelper(gridView1, "ID"); DataSet dataSet11 = new DataSet(); dataSet11.Tables.Add(GetCustomerDataTable()); dataSet11.Tables.Add(GetPersonDataTable()); DataColumn keyColumn = dataSet11.Tables["Customers"].Columns["ID"]; DataColumn foreignKeyColumn = dataSet11.Tables["Persons"].Columns["ID"]; dataSet11.Relations.Add("CustomersPersons", keyColumn, foreignKeyColumn); gridControl1.DataSource = dataSet11.Tables["Customers"]; gridControl1.ForceInitialize(); }
public GenericUserBasedRecommender(IDataModel dataModel, IUserNeighborhood neighborhood, IUserSimilarity similarity) : base(dataModel) { //Preconditions.checkArgument(neighborhood != null, "neighborhood is null"); this.neighborhood = neighborhood; this.similarity = similarity; this.refreshHelper = new RefreshHelper(() => { capper = buildCapper(); }); refreshHelper.AddDependency(dataModel); refreshHelper.AddDependency(similarity); refreshHelper.AddDependency(neighborhood); capper = buildCapper(); }
public CachingRecommender(IRecommender recommender) { //Preconditions.checkArgument(recommender != null, "recommender is null"); this.recommender = recommender; maxHowMany = new int[] { 1 }; // Use "num users" as an upper limit on cache size. Rough guess. int numUsers = recommender.GetDataModel().GetNumUsers(); recommendationsRetriever = new RecommendationRetriever(this); recommendationCache = new Cache <long, Recommendations>(recommendationsRetriever, numUsers); estimatedPrefCache = new Cache <Tuple <long, long>, float>(new EstimatedPrefRetriever(this), numUsers); refreshHelper = new RefreshHelper(() => { clear(); }); refreshHelper.AddDependency(recommender); }
public GenericUserBasedRecommender(DataModel dataModel, UserNeighborhood neighborhood, UserSimilarity similarity) : base(dataModel) { Action refreshRunnable = null; this.neighborhood = neighborhood; this.similarity = similarity; if (refreshRunnable == null) { refreshRunnable = () => this.capper = this.buildCapper(); } this.refreshHelper = new RefreshHelper(refreshRunnable); this.refreshHelper.addDependency(dataModel); this.refreshHelper.addDependency(similarity); this.refreshHelper.addDependency(neighborhood); this.capper = this.buildCapper(); }
/** * @param dataModel * {@link DataModel} which provides users * @param clusterSimilarity * {@link ClusterSimilarity} used to compute cluster similarity * @param numClusters * desired number of clusters to create * @throws IllegalArgumentException * if arguments are {@code null}, or {@code numClusters} is less than 2 */ public TreeClusteringRecommender2(DataModel dataModel, ClusterSimilarity clusterSimilarity, int numClusters) : base(dataModel) { if (numClusters < 2) { throw new Exception("numClusters must be at least 2"); } //Preconditions.checkArgument(numClusters >= 2, "numClusters must be at least 2"); this.clusterSimilarity = clusterSimilarity;//Preconditions.checkNotNull(clusterSimilarity); this.numClusters = numClusters; this.clusteringThreshold = Double.NaN; this.clusteringByThreshold = false; this.refreshHelper = new RefreshHelper(buildClusters); refreshHelper.addDependency(dataModel); refreshHelper.addDependency(clusterSimilarity); buildClusters(); }
public CachingRecommender(Recommender recommender) { Action refreshRunnable = null; this.recommender = recommender; this.maxHowMany = new int[] { 1 }; int maxEntries = recommender.getDataModel().getNumUsers(); this.recommendationsRetriever = new RecommendationRetriever(this); this.recommendationCache = new Cache <long, Recommendations>(this.recommendationsRetriever, maxEntries); this.estimatedPrefCache = new Cache <Tuple <long, long>, float>(new EstimatedPrefRetriever(this), maxEntries); if (refreshRunnable == null) { refreshRunnable = () => this.clear(); } this.refreshHelper = new RefreshHelper(refreshRunnable); this.refreshHelper.addDependency(recommender); }
public GenericItemBasedRecommender(DataModel dataModel, ItemSimilarity similarity, CandidateItemsStrategy candidateItemsStrategy, MostSimilarItemsCandidateItemsStrategy mostSimilarItemsCandidateItemsStrategy) : base(dataModel, candidateItemsStrategy) { Action refreshRunnable = null; this.similarity = similarity; this.mostSimilarItemsCandidateItemsStrategy = mostSimilarItemsCandidateItemsStrategy; if (refreshRunnable == null) { refreshRunnable = () => this.capper = this.buildCapper(); } this.refreshHelper = new RefreshHelper(refreshRunnable); this.refreshHelper.addDependency(dataModel); this.refreshHelper.addDependency(similarity); this.refreshHelper.addDependency(candidateItemsStrategy); this.refreshHelper.addDependency(mostSimilarItemsCandidateItemsStrategy); this.capper = this.buildCapper(); }
public MemoryDiffStorage(DataModel dataModel, Weighting stdDevWeighted, long maxEntries) { //Preconditions.checkArgument(dataModel != null, "dataModel is null"); //Preconditions.checkArgument(dataModel.getNumItems() >= 1, "dataModel has no items"); //Preconditions.checkArgument(maxEntries > 0L, "maxEntries must be positive"); this.dataModel = dataModel; this.stdDevWeighted = stdDevWeighted == Weighting.WEIGHTED; this.maxEntries = maxEntries; this.averageDiffs = new FastByIDMap <FastByIDMap <RunningAverage> >(); this.averageItemPref = new FastByIDMap <RunningAverage>(); this.buildAverageDiffsLock = new ReaderWriterLockSlim(); this.allRecommendableItemIDs = new FastIDSet(dataModel.getNumItems()); this.refreshHelper = new RefreshHelper(buildAverageDiffs); refreshHelper.addDependency(dataModel); buildAverageDiffs(); }
public InStockCtrl(IStockService stockService) { _stockService = stockService; _refreshHelper = new RefreshHelper(gridView1, nameof(parentModel.InStockNumber).ToString()); InitializeComponent(); this.Dock = DockStyle.Fill; //this.gridControl1.DataSource = _stockService.GetAllInstock(); RenderCommonHelper.SetColNotEditable(colInStockNumber); RenderCommonHelper.SetColNotEditable(colPoNumber); RenderCommonHelper.SetColNotEditable(colPurchaseNumber); RenderCommonHelper.SetColNotEditable(colRequestNumber); RenderCommonHelper.SetColNotEditable(colContractNumber); RenderCommonHelper.SetColNotEditable(colSupplierName); RenderCommonHelper.SetColNotEditable(colInStockCategory); RenderCommonHelper.SetColNotEditable(colCreateDate); }
public AbstractSimilarity(DataModel dataModel, Weighting weighting, bool centerData) : base(dataModel) { Action refreshRunnable = null; this.weighted = weighting == Weighting.WEIGHTED; this.centerData = centerData; this.cachedNumItems = dataModel.getNumItems(); this.cachedNumUsers = dataModel.getNumUsers(); if (refreshRunnable == null) { refreshRunnable = delegate { this.cachedNumItems = dataModel.getNumItems(); this.cachedNumUsers = dataModel.getNumUsers(); }; } this.refreshHelper = new RefreshHelper(refreshRunnable); }
/** * @param dataModel * {@link DataModel} which provides users * @param clusterSimilarity * {@link ClusterSimilarity} used to compute cluster * similarity * @param clusteringThreshold * clustering similarity threshold; clusters will be aggregated into larger clusters until the next * two nearest clusters' similarity drops below this threshold * @throws IllegalArgumentException * if arguments are {@code null}, or {@code clusteringThreshold} is {@link Double#NaN} */ public TreeClusteringRecommender2(DataModel dataModel, ClusterSimilarity clusterSimilarity, double clusteringThreshold) : base(dataModel) { // Preconditions.checkArgument(!Double.isNaN(clusteringThreshold), "clusteringThreshold must not be NaN"); if (Double.IsNaN(clusteringThreshold)) { throw new Exception("clusteringThreshold must not be NaN"); } this.clusterSimilarity = clusterSimilarity; //Preconditions.checkNotNull(clusterSimilarity); this.numClusters = int.MinValue; // Integer.MIN_VALUE; this.clusteringThreshold = clusteringThreshold; this.clusteringByThreshold = true; this.refreshHelper = new RefreshHelper(buildClusters); refreshHelper.addDependency(dataModel); refreshHelper.addDependency(clusterSimilarity); buildClusters(); }
/** * @param dataModel * {@link DataModel} which provides users * @param clusterSimilarity * {@link ClusterSimilarity} used to compute cluster similarity * @param clusteringThreshold * clustering similarity threshold; clusters will be aggregated into larger clusters until the next * two nearest clusters' similarity drops below this threshold * @param samplingRate * percentage of all cluster-cluster pairs to consider when finding next-most-similar clusters. * Decreasing this value from 1.0 can increase performance at the cost of accuracy * @throws IllegalArgumentException * if arguments are {@code null}, or {@code clusteringThreshold} is {@link Double#NaN}, * or samplingRate is {@link Double#NaN} or nonpositive or greater than 1.0 */ public TreeClusteringRecommender(DataModel dataModel, ClusterSimilarity clusterSimilarity, double clusteringThreshold, double samplingRate) : base(dataModel) { //Preconditions.checkArgument(!Double.IsNaN(clusteringThreshold), "clusteringThreshold must not be NaN"); //Preconditions.checkArgument(samplingRate > 0.0 && samplingRate <= 1.0, "samplingRate is invalid: %f", samplingRate); random = RandomUtils.getRandom(); this.clusterSimilarity = clusterSimilarity; //Preconditions.checkNotNull(clusterSimilarity); this.numClusters = int.MinValue; //Integer.MIN_VALUE; this.clusteringThreshold = clusteringThreshold; this.clusteringByThreshold = true; this.samplingRate = samplingRate; this.refreshHelper = new RefreshHelper(buildClusters); refreshHelper.addDependency(dataModel); refreshHelper.addDependency(clusterSimilarity); buildClusters(); }
public GenericItemBasedRecommender(IDataModel dataModel, IItemSimilarity similarity, ICandidateItemsStrategy candidateItemsStrategy, IMostSimilarItemsCandidateItemsStrategy mostSimilarItemsCandidateItemsStrategy) : base(dataModel, candidateItemsStrategy) { //Preconditions.checkArgument(similarity != null, "similarity is null"); this.similarity = similarity; //Preconditions.checkArgument(mostSimilarItemsCandidateItemsStrategy != null, // "mostSimilarItemsCandidateItemsStrategy is null"); this.mostSimilarItemsCandidateItemsStrategy = mostSimilarItemsCandidateItemsStrategy; this.refreshHelper = new RefreshHelper(() => { capper = buildCapper(); }); refreshHelper.AddDependency(dataModel); refreshHelper.AddDependency(similarity); refreshHelper.AddDependency(candidateItemsStrategy); refreshHelper.AddDependency(mostSimilarItemsCandidateItemsStrategy); capper = buildCapper(); }
/** * @param dataModel * {@link DataModel} which provdes users * @param clusterSimilarity * {@link ClusterSimilarity} used to compute cluster similarity * @param numClusters * desired number of clusters to create * @param samplingRate * percentage of all cluster-cluster pairs to consider when finding next-most-similar clusters. * Decreasing this value from 1.0 can increase performance at the cost of accuracy * @throws IllegalArgumentException * if arguments are {@code null}, or {@code numClusters} is less than 2, or samplingRate * is {@link Double#NaN} or nonpositive or greater than 1.0 */ public TreeClusteringRecommender(DataModel dataModel, ClusterSimilarity clusterSimilarity, int numClusters, double samplingRate) : base(dataModel) { //Preconditions.checkArgument(numClusters >= 2, "numClusters must be at least 2"); //Preconditions.checkArgument(samplingRate > 0.0 && samplingRate <= 1.0, // "samplingRate is invalid: %f", samplingRate); random = RandomUtils.getRandom(); this.clusterSimilarity = clusterSimilarity;//Preconditions.checkNotNull(clusterSimilarity); this.numClusters = numClusters; this.clusteringThreshold = Double.NaN; this.clusteringByThreshold = false; this.samplingRate = samplingRate; this.refreshHelper = new RefreshHelper(buildClusters); refreshHelper.addDependency(dataModel); refreshHelper.addDependency(clusterSimilarity); buildClusters(); }
public PurchaseApplicationCtrl(IPurchaseService purchaseService, IManagementService managementService) { _purchaseService = purchaseService; _managementService = managementService; InitializeComponent(); this.Dock = DockStyle.Fill; SetCurrentRequestCategory(RequestCategoriesEnum.材料需求); RenderCommonHelper.SetColNotEditable(colApplicationNumber); RenderCommonHelper.SetColNotEditable(colRequestHeaderNumber); RenderCommonHelper.SetColNotEditable(colPoNumber); RenderCommonHelper.SetColNotEditable(colTotalApplied); RenderCommonHelper.SetColNotEditable(colTotalConfirmed); RenderCommonHelper.SetColNotEditable(colAuditStatus); RenderCommonHelper.SetColNotEditable(colStatus); RenderCommonHelper.SetColNotEditable(colCompletePercentage); RenderCommonHelper.SetColNotEditable(colCreateDate); RenderCommonHelper.SetColNotEditable(colUpdateDate); colCompletePercentage.DisplayFormat.FormatType = FormatType.Numeric; colCompletePercentage.DisplayFormat.FormatString = "P"; _refreshHelper = new RefreshHelper(gridView1, nameof(parentModel.ApplicationNumber)); }