2026a

# fitsemigraph


使用基于半监督图的方法标记数据

函数库: TyMachineLearning

# 语法

Mdl = fitsemigraph(X,Y,UnlabeledX)

# 说明

Mdl = fitsemigraph(XYUnlabeledX) 使用 X 中的预测变量数据和 Y 中的标签来标记 UnlabeledX 中的数据。

# 示例

拟合未标记的数据的标签

使用随机生成的 60 个标记数据的观测值,三个类中每个类中有 20 个观测值。

using TyMachineLearning
using CSV
using DataFrames
file1 = joinpath(pkgdir(TyMachineLearning), "data/Classification/labeledX.csv")
X = CSV.read(file1, DataFrame; header=false)
file2 = joinpath(pkgdir(TyMachineLearning), "data/Classification/Y.csv")
y = CSV.read(file2, DataFrame; header=false)

使用随机生成的 300 个未标记数据的额外观测值,每个类 100 个观测值。

file3 = joinpath(pkgdir(TyMachineLearning), "data/Classification/unlabeledX.csv")
UnlabeledX = CSV.read(file3, DataFrame; header=false)

使用基于半监督图的方法将标签拟合到未标记的数据。函数 fitsemigraph 返回包含未标记数据的拟合标签。

Mdl, Unlabeledy = fitsemigraph(X, y, UnlabeledX)
(PyObject LabelPropagation(kernel='knn'), [1, 1, 1, 1, 1, 1, 1, 1, 1, 1  …  3, 3, 3, 3, 2, 3, 3, 3, 3, 3])

# 输入参数

X - 预测数据
矩阵、数组

预测数据,指定为矩阵。X 的每一行对应一个观测值,每一列对应一个预测变量。

数据类型: Matrix | Array

Y - 类标签
向量、数组

类标签,指定为数字向量、分类向量、逻辑向量、字符数组、字符串数组或字符向量的单元数组。Y 的每一行表示 X 的对应行的分类。

数据类型: Vector | Array

UnlabeledX - 未标记的预测变量数据
矩阵、数组

未标记的预测变量数据,指定为矩阵。UnlabeledX 的每一行对应一个观测值,每列对应一个预测变量。UnlabeledX 必须具有与 X 相同的预测变量,顺序相同。

数据类型: Matrix | Array

# 输出参数

Mdl - 输出值
半监督图模型对象

半监督图模型,作为半监督图模型对象返回。

# 另请参阅

predict