% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/M_ABCdeep.R
\name{M_ABCdeep}
\alias{M_ABCdeep}
\title{Multi-source M-ABC with a deep-learning (autoencoder) Step 4 (M-ABCdeep)}
\usage{
M_ABCdeep(
  List,
  weighting = rep("var", length(List)),
  normalize = rep(FALSE, length(List)),
  gr = c(),
  bag = rep(TRUE, length(List)),
  numsim = 500,
  numvar = rep(100, length(List)),
  NC = NULL,
  dissimilarity = "mabc",
  final_linkage = "ward",
  alpha = 0.625,
  mds = FALSE,
  topk_frac = 0.2,
  latent_dim = "auto",
  hidden_units = 32L,
  ae_epochs = 80L,
  ae_lr = 0.001,
  cluster_in_latent = "ward",
  linkage = rep("ward.D2", length(List)),
  nugget_type = "between",
  nugget_args = list(),
  min_samples = 40L,
  seed = NULL
)
}
\arguments{
\item{List}{A list of \eqn{K} data matrices over the same objects,
\strong{objects (samples) in rows} and features in columns.}

\item{weighting, normalize, bag, numvar}{Per-source vectors (recycled to \eqn{K})
forwarded to \code{\link{ABCdeep.SingleInMultiple}}.}

\item{gr}{Unused; kept for compatibility.}

\item{numsim}{Iterations per source.}

\item{NC}{Base-cluster count per source (\code{NULL} = data-driven).}

\item{dissimilarity}{Consensus dissimilarity, \code{"mabc"} or \code{"abc"}.}

\item{final_linkage, alpha}{Final clustering controls.}

\item{mds}{Logical; MDS of the consensus dissimilarities.}

\item{topk_frac}{Fraction of top-weighted features the autoencoder focuses on
(default 0.2); forwarded to \code{\link{ABCdeep.SingleInMultiple}}.}

\item{latent_dim, hidden_units, ae_epochs, ae_lr, cluster_in_latent, linkage}{Autoencoder / latent-clustering controls (scalar or length-\eqn{K}),
forwarded to \code{\link{ABCdeep.SingleInMultiple}}.}

\item{nugget_type, nugget_args}{Forwarded to the nugget weighting.}

\item{min_samples}{Warn (per source) when \eqn{N} is below this; the
autoencoder is underdetermined at very small \eqn{N} (default 40).}

\item{seed}{Optional RNG seed.}
}
\value{
A list of class \code{"M_ABC"} with \code{DistM} and \code{Clust}.
}
\description{
The deep-learning counterpart of \code{\link{M_ABCpp}}: runs
\code{\link{ABCdeep.SingleInMultiple}} per source (autoencoder embedding +
latent clustering for the base partitions), row-stacks the per-iteration label
matrices, and builds one consensus dissimilarity via
\code{\link{f.clustABC.MultiSource}}. The ABC algorithm of
\insertCite{Amaratunga2008}{MosaiClusteR} is preserved end to end; only Step 4
is deep. There is no Python/torch dependency and no PCA fallback (see
\code{\link{ABCdeep.SingleInMultiple}}).
}
\examples{
data(mosaic_toy)
fit <- M_ABCdeep(mosaic_toy$List, numsim = 40, NC = 3, ae_epochs = 40, seed = 1)
table(stats::cutree(stats::as.hclust(fit$Clust), 3))
}
\references{
\insertAllCited{}
}
\seealso{
\code{\link{ABCdeep.SingleInMultiple}}, \code{\link{M_ABCpp}},
\code{\link{f.clustABC.MultiSource}}
}
