Attributes of a fitted BisectingKMeansModel.
Every accessor here is one name on the server's allowlist for
org.apache.spark.ml.clustering.BisectingKMeansModel — 6 of them — so tab completion is
that allowlist. The server refuses anything else with CONNECT_ML.ATTRIBUTE_NOT_ALLOWED;
these refuse a model of the wrong class before it gets that far, and name the module that
would have taken it.
Allowed by the server but not here: toString is Identifiable's, and tells you less than
the model's own uid. Latu.ML.attribute/2 and Latu.ML.attribute/3 will send any of these
names; it is what comes back that has nowhere to go.
The allowlist is inherited rather than per class: this one is the union of
org.apache.spark.ml.clustering.BisectingKMeansModel,
org.apache.spark.ml.util.HasTrainingSummary, org.apache.spark.ml.util.Identifiable.
Summary
Functions
The JVM class these accessors belong to.
Spark's clusterCenterMatrix. PySpark exposes no attribute under that name, so there is no
description of it to quote here.
Computes the sum of squared distances between the input points and their corresponding cluster centers.
Indicates whether a training summary exists for this model instance.
Number of features, i.e., length of Vectors which this transforms.
Predict label for the given features.
Gets summary of the model trained on the training set. An exception is thrown if no summary exists.
Functions
@spec class() :: String.t()
The JVM class these accessors belong to.
@spec cluster_center_matrix(Latu.ML.Model.t()) :: {:ok, term()} | {:error, Latu.Error.t()}
Spark's clusterCenterMatrix. PySpark exposes no attribute under that name, so there is no
description of it to quote here.
An action: it reaches the server. A Vector or Matrix comes back as an Nx.Tensor, or a
Latu.ML.SparseVector where densifying would be this package's decision rather than yours.
@spec compute_cost(Latu.ML.Model.t(), Latu.DataFrame.t()) :: {:ok, term()} | {:error, Latu.Error.t()}
Computes the sum of squared distances between the input points and their corresponding cluster centers.
An action: it reaches the server. A Vector or Matrix comes back as an Nx.Tensor, or a
Latu.ML.SparseVector where densifying would be this package's decision rather than yours.
Arguments
dataset— aLatu.DataFrame, sent as a relation rather than a literal
@spec has_summary(Latu.ML.Model.t()) :: {:ok, term()} | {:error, Latu.Error.t()}
Indicates whether a training summary exists for this model instance.
An action: it reaches the server. A Vector or Matrix comes back as an Nx.Tensor, or a
Latu.ML.SparseVector where densifying would be this package's decision rather than yours.
@spec num_features(Latu.ML.Model.t()) :: {:ok, term()} | {:error, Latu.Error.t()}
Number of features, i.e., length of Vectors which this transforms.
An action: it reaches the server. A Vector or Matrix comes back as an Nx.Tensor, or a
Latu.ML.SparseVector where densifying would be this package's decision rather than yours.
@spec predict(Latu.ML.Model.t(), Nx.Tensor.t() | Latu.ML.SparseVector.t()) :: {:ok, term()} | {:error, Latu.Error.t()}
Predict label for the given features.
An action: it reaches the server. A Vector or Matrix comes back as an Nx.Tensor, or a
Latu.ML.SparseVector where densifying would be this package's decision rather than yours.
Arguments
value— a SparkVector: anNx.Tensoror aLatu.ML.SparseVector
@spec summary(Latu.ML.Model.t()) :: Latu.ML.Summary.t()
Gets summary of the model trained on the training set. An exception is thrown if no summary exists.
A lazy builder: Spark reaches a summary through the model that owns it, so the reference is
composed here and nothing is sent. Latu.ML.summary/1 is the same thing without the class
check.