Документация Engee

Чтение документации по Scikit-Learn

Связь со scikit-learn

ScikitLearn.jl является зеркальным отражением проекта scikit-learn на Python, но API пришлось адаптировать к Julia, и пакет следует соглашениям Julia. При чтении документации по Python нужно иметь в виду следующие моменты.

  • Большинство методов объектов теперь являются функциями: model.predict(X) в Python становится predict(model, X).

  • В конце методов, изменяющих состояние модели, присутствует символ !: model.fit_transform(X) становится fit_transform!(model, X).

  • Несколько подмодулей Python были переведены на язык Julia для поддержки моделей Julia: ScikitLearn.Pipelines, ScikitLearn.CrossValidation и ScikitLearn.GridSearch

Вы можете получить доступ к членам классов и методам объекта Python (т. е. ко всем моделям, импортированным с помощью @sk_import), используя obj.member_name. Например:

julia> X=rand(10,4);y=rand(10);


julia> @sk_import linear_model: Lasso
PyObject <class 'sklearn.linear_model._coordinate_descent.Lasso'>

julia> lm = fit!(Lasso(), X, y)
PyObject Lasso()

julia> println(lm.n_iter_)
1

Это редко бывает необходимо, поскольку наиболее важные или часто используемые методы уже определены в Julia (например, transformer.classes_ теперь является get_classes(transformer)).