Чтение документации по 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)
).