MLJ Models

PersistenceDiagrams.PersistenceImageVectorizerType
PersistenceImageVectorizer(; kwargs...)

Converts persistence diagrams into persistence images. Each pixel in the image curve is mapped to a column.

Hyperparameters

  • distribution::Any = :default: the distribution used to smear each point in the diagram. Can be a function, a callable object, or :default. When set to :default, a binormal distribution is used.

  • sigma::Float64 = -1: the width of the gaussian distribution. Only applicable when distribution=:default. If set to -1, its value is learned from data.

  • weight::Any = :default: the weighting function. Can be a function, a callable object, or :default. When set to :default, a piecewise linear function is used. To make this method work correctly, weight(0.0, _) == 0.0 should always hold.

  • slope_end::Float64 = 1.0: the (relative) position in the diagram where the default weight function stops decreasing. Only applicable when weight=:default.

  • width::Int = 10, height::Int = 10: the size of the image. Note that all pixels of the image will be converted to columns. For example a 3×4 image will produce 12 columns per dimension.

See also

source
PersistenceDiagrams.PersistenceCurveVectorizerType
PersistenceCurveVectorizer(; kwargs...)

Converts persistence diagrams into persistence curves. Each value of the curve is mapped to a column.

Hyperparameters

  • fun::Function = always_one: The function used to construct the curve. See also PersistenceCurve. Note: the curve argument must be :custom if this argument is set.

  • stat::Function = sum: The statistic used to construct the curve. See also PersistenceCurve. Note: the curve argument must be :custom if this argument is set.

  • curve::Symbol = :custom: The type of curve used. Available options are :custom, :betti, :silhuette, :life, :midlife, :life_entropy, :midlife_entropy, and :pd_thresholding.

  • integrate::Bool = true: If set to true, the curve is integrated. If set to false, the curve is simply sampled at specified points.

  • normalize::Bool = false: Normalize the curve by dividing all values by stat(fun.(diagram)).

  • length::Int = 10: The number of columns per dimension to output.

See also

source
PersistenceDiagrams.PersistenceLandscapeVectorizerType
PersistenceLandscapeVectorizer

Converts persistence diagrams into persistence landscapes. Each value of the curve is mapped to a column.

Hyperparameters

  • n_landscapes = 1: use the top $n$ landscapes.

  • length = 10: the number of columns per dimension per landscape to output. For example, for n_landscapes=3, length=10, and two persistence diagrams, the vectorization will produce 30 columns.

See also

source