lib/rumale/decomposition/nmf.rb in rumale-0.11.0 vs lib/rumale/decomposition/nmf.rb in rumale-0.12.0

- old
+ new

@@ -111,11 +111,12 @@ def partial_fit(x, update_comps = true) # initialize some variables. n_samples, n_features = x.shape scale = Math.sqrt(x.mean / @params[:n_components]) - @components = Rumale::Utils.rand_uniform([@params[:n_components], n_features], @rng) * scale if update_comps - coefficients = Rumale::Utils.rand_uniform([n_samples, @params[:n_components]], @rng) * scale + sub_rng = @rng.dup + @components = Rumale::Utils.rand_uniform([@params[:n_components], n_features], sub_rng) * scale if update_comps + coefficients = Rumale::Utils.rand_uniform([n_samples, @params[:n_components]], sub_rng) * scale # optimization. @params[:max_iter].times do # update if update_comps nume = coefficients.transpose.dot(x)