unifiedml este acum disponibil pe CRAN. Doar pentru că. Am vrut să văd ce este nou 🙂
Am avut o discuție interesantă despre procesul de publicare a pachetelor și AI înlocuind ființe umane (tipul de discuție pe care o voi avea cu voi când voi ieși din această închisoare misterioasă).
Iată ce Trebuia să spun despre asta:
> > I see it has changed :) Just a question for my personal culture:
> Is this going to be done by AI someday? Because it could/should.
>
> You want to be replaced by AI?
On 11.11.2025 09:23, Thierry Moudiki wrote:
> The question of whether one would want to be replaced by AI or not is
> too narrow (in general and in particular in this context).
>
> To me, personally, it's like asking someone, back in the day, whether
> he/she wants to use the wheel or not.
>
> It's already much better than us in many mundane tasks. And it could be
> way, way more objective in this particular context.
On 11.12.2025 00:09, Thierry Moudiki wrote:
I said "AI" to follow up on your argument but this has nothing to do with text models. Not everything has to be AI.
In order to validate or push such a thing in prod, you typically need GitHub Actions and a set of objective rules (e.g what's a critical warning, or a critical note, if there's such a thing...). It's not even AI (see e.g https://github.com/Techtonique/techtonique-r-pkgs).
Typically, since submitting this package to your highest authority, I've shipped ~5 packages to PyPI (within minutes, and they also check if the code is malicious, or it will be removed) without being bothered by gatekeeping ("this comma is missing", "oh english grammar requires a full stop there"). And this is not an insult, it's food for thought (if you're humble enough to accept it), when Python is eating R at breakfast everyday.
R seems to be stuck somewhere in a very distant past with discussions like this.
Acesta este comentariul unui prostesc tip. Dacă asta este nebunievreau să fiu prostesc pentru totdeauna.
Pachetul, unifiedmloferă o interfață coerentă pentru învățarea automată în R, facilitând lucrul cu diferiți algoritmi ML folosind un API unificat.
R are un ecosistem incredibil de bogat de pachete de învățare automată, dar fiecare vine cu propria sintaxă și convenții. unifiedml este un efort de a reduce acest decalaj oferind:
- Extrem de ușor (vedeți singuri: https://github.com/Techtonique/unifiedml/blob/main/R/model.R) și API consecvent în diferiți algoritmi ML
- Detectarea automată a sarcinilor (regresie vs clasificare)
- Validare încrucișată încorporată cu valori adecvate
- Instrumente de interpretare a modelelor, inclusiv diagrame de importanță a caracteristicilor și de dependență parțială
- Integrare perfectă cu pachetele R existente (odată instalate) precum glmnet, randomForest și multe altele
install.packages("unifiedml", repos = "https://cran.r-project.org/")
library(unifiedml)
Iată cât de ușor este să construiți un model de regresie:
library(glmnet)
data(mtcars)
# Prepare data
X <- as.matrix(mtcars(, -1))
y <- mtcars$mpg # numeric → automatic regression
# Fit model
mod <- Model$new(glmnet::glmnet)
mod$fit(X, y, alpha = 0, lambda = 0.1)
# Make predictions
predictions <- mod$predict(X)
# Get model summary with feature importance
mod$summary()
# Visualize partial dependence
mod$plot(feature = 1)
# Cross-validation (automatically uses RMSE for regression)
cv_scores <- cross_val_score(mod, X, y, cv = 5)
cat("Mean RMSE:", mean(cv_scores), "n")
Același API intuitiv funcționează pentru clasificare:
library(randomForest)
data(iris)
# Prepare data
X <- as.matrix(iris(, 1:4))
y <- iris$Species # factor → automatic classification
# Fit model
mod <- Model$new(randomForest::randomForest)
mod$fit(X, y, ntree = 100)
# Make predictions
predictions <- mod$predict(X)
# Cross-validation (automatically uses accuracy for classification)
cv_scores <- cross_val_score(mod, X, y, cv = 5)
cat("Mean Accuracy:", mean(cv_scores), "n")
Caracteristici cheie
- Interfață consistentă Indiferent dacă utilizați glmnet, randomForest, xgboost sau orice alt algoritm compatibil, interfața rămâne aceeași. Acest lucru facilitează:
- Comutați între algoritmi
- Comparați performanța modelului
- Creați fluxuri de lucru reproductibile
-
Detectarea automată a sarcinilor Nu este nevoie să specificați dacă faceți regresie sau clasificare — unifiedml detectează automat acest lucru pe baza tipului dvs. de variabilă țintă.
-
Interpretarea modelului (în desfășurare) Instrumente încorporate pentru înțelegerea modelelor dvs.: Clasamentul importanței caracteristicilor Grafice de dependență parțială Rezumate cuprinzătoare ale modelului
unifiedml este încă foarte tânăr, așa că acolo s-ar putea fie niște margini aspre. Pachetul se va maturiza în timp pe măsură ce perfecționez API-ul ușor (vedeți singuri: https://github.com/Techtonique/unifiedml/blob/main/R/model.R), extind funcționalitatea și încorporez feedback-ul utilizatorilor.
Feedback Bine ați venit.

