JuliaAI / MLJModelInterface.jl

Lightweight package to interface with MLJ
MIT License
37 stars 8 forks source link

implement statsapi #213

Open tiemvanderdeure opened 1 month ago

tiemvanderdeure commented 1 month ago

It could be neat if MLJ implemented StatsAPI as to avoid duplicate function names

julia> using MLJBase, GLM

julia> predict
WARNING: both GLM and MLJBase export "predict"; uses of it in module Main must be qualified
ERROR: UndefVarError: `predict` not defined

This could be avoided if MLJBase used StatsAPI.predict

ablaom commented 1 month ago

I agree it would be neat but I'm not sure it makes sense at the present time. Here are few reasons:

I'm pretty sure MLJModelInterface predates StatsAPI. At the time we considered taking predict from StatsModels, which I think used to own the method, but didn't want the heavy dependency.

I've personally come around to believing the goal of reducing all method names to a single source is very ambitious, given the number of packages, different approaches, etc.

Perhaps we can revisit this question when there is little more stability.

Related project: LearnAPI.jl.

ablaom commented 1 month ago

Oh, and reversing our decision about ownership is definitely breaking.

tiemvanderdeure commented 1 month ago

Makes sense, thanks for taking the time to provide the reasons for this!