机器学习小例子:TabPFN回归模型

这个模型框架发表在Nature正刊上(之前竟然没有关注到),论文

https://www.nature.com/articles/s41586-024-08328-6

Accurate predictions on small data with a tabular foundation model

据说是在小型表格型数据上的表现非常好,在网络上一搜就能够找打好多介绍这个模型的内容,我今天的推文就是简单记录一下相关代码

import sklearn
import pandas as pd
df = pd.read_csv('D:/rstudioProject/env001/hanes.csv')
X=df.drop(["ID",'BPSysAve'],axis=1) # not considering the ID nor the target column
y=df['BPSysAve']

# Standard train-test split
X_train, X_test, y_train, y_test= sklearn.model_selection.train_test_split(X, y, test_size=0.3,random_state=6)
reg = TabPFNRegressor(model_path="tabpfn_model/tabpfn-v2.5-regressor-v2.5_default.ckpt",ignore_pretraining_limits=True)
reg.fit(X_train,y_train)
predictions = reg.predict(X_test)

df_pred = pd.DataFrame({"A":predictions,"B":y_test}).dropna()
coef, pvalue = pearsonr(df_pred.A,df_pred.B)
print(coef,pvalue)
mse = sklearn.metrics.mean_squared_error(predictions, y_test)
mae = sklearn.metrics.mean_absolute_error(predictions, y_test)
print("Mean Squared Error:", mse," Mean absolute error: ", mae)

这个模型效果确实比xgboost没有调整参数的时候会好一些

第一次使用的话会自动联网去下载他预训练好的模型,如果网络不好可能下载不下来就报错,我是科学上网然后手动下载的

这个不知道怎么衔接shap 评估变量重要性

找到了一个 tabpfniml 这个需要比较低版本的 tabpf 我还没有安装成功

需要示例数据可以给我留言

声明:来自小明的数据分析笔记本,仅代表创作者观点。链接:https://eyangzhen.com/7736.html

小明的数据分析笔记本的头像小明的数据分析笔记本

相关推荐

添加微信
添加微信
Ai学习群
返回顶部