The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
"HeSC", "HeEC") now uses the closed-form
M-step of the classification likelihood under the implied mixing
proportions. Earlier versions iterated the stationarity conditions (Eqs.
14 and 16 of Melnykov and Michael, 2020) as updates with lagged
proportions; that recursion is not a contraction (it oscillates for p =
2 and diverges for p > 2), which produced the component collapses and
non-convergence documented for version 0.2.0.chooseK() seeds every grid point from the calling RNG
stream, so the curve and the recommendation are reproducible from
set.seed() for any number of cores; previously
cores > 1 gave irreproducible results.G = "auto" is
not available.G = "auto" measured gaps on the raw log-overlap scale,
so numerical underflow among negligible overlaps (1e-11 versus exactly
0, say) could produce the largest gap and a spurious cut: four
well-separated clusters on a line were cut into three. Gaps are now
measured on log(overlap + 1e-4), which treats overlaps
below 1e-4 as ties. The rule targets well-separated clusters and is now
refused with Ward’s linkage, where it was never meaningful.set.seed() for any
value of cores (previously results with
cores > 1 were not reproducible). The serial
init = "random" path is unchanged. On Windows,
cores > 1 now emits a message and runs serially instead
of being silently ignored.cem.iter.max is reached without convergence; previously
this was visible only in summary().start accepts centers as well as labels: a
K x p matrix, or a list with a
centers/centroids element such as the value of
ClusterR::MiniBatchKmeans(). Observations are assigned to
the nearest center, which makes the partition consistent with
predict() by construction.pairwise_overlap() accepts mixing proportions
tau in the heteroscedastic cases as well, so the overlap of
an arbitrary fitted Gaussian mixture can be computed; the DEMP-K implied
proportions remain the default.chooseK() locates the elbow by the chord method (the
grid point farthest from the line joining the first and last points of
the SSB/SSTO curve), which is less sensitive to the starting point of
the grid than the previous marginal-gain threshold. The recommendation
remains one grid step beyond the elbow.predict() reproduces them.predict()
round-trip.G = "auto" is now computed from the single-linkage
merge sequence of the overlap matrix regardless of the fitting linkage
(the previous Ward-height gaps were unreliable); its limits (range
2:(K-1), spurious suggestions on structureless data) are
documented.variant = "HeEC" crashed on univariate data;
plot(fit, what = "tree") failed for K = 2; Inf
values slipped past validation into cryptic downstream errors
(MergeKmeans, predict, chooseK); overlap_map() crashed on
missing values; predict() silently propagated
NA.init = "kmeans++" is the new default initialization of
the K-means restarts (Arthur & Vassilvitskii, 2007), stabilizing the
large-K component solutions on which the merging is built;
init = "random" restores the previous behavior.start argument: MergeKmeans() can now
merge a partition computed by any external engine (a kmeans
object, a ClusterR-style list, or a bare label vector), skipping its own
K-means step entirely. This removes the single-threaded
stats::kmeans ceiling for very large datasets.G = "auto" cuts the merge tree at the largest gap in
merge heights (also available in recut()); when no
G/omega.star is supplied the fit-time message
now reports the suggested G.K = NULL (new default) selects the number of components
automatically via chooseK().chooseK() now reports and marks a recommended
K (one grid step beyond the detected elbow) and gained a
cores argument.cores argument forks the K-means restarts via the
parallel package (POSIX systems).tidy(), glance(), and
augment() methods are registered when broom is loaded.omega.star with Ward’s linkage is now an error (it
previously warned and returned a degenerate unmerged partition).recut(),
chooseK(), pairwise_overlap(), and
print/summary/plot/predict methods.MixSim::overlap() and by independent Monte Carlo
simulation; the paper’s illustrative examples and pen-digits application
reproduced.These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.