gpt4 book ai didi

python - 如何从 GaussianProcessClassifier 中提取估计参数 (theta)

转载 作者:太空宇宙 更新时间:2023-11-04 04:40:52 25 4
gpt4 key购买 nike

# Scale/ Normalize Independent Variables 
X = StandardScaler().fit_transform(X)
#Split data into train an test set at 50% each
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=.5, random_state=42)
gpc= GaussianProcessClassifier(1.0 * RBF(1.0), n_jobs=-1)
gpc.fit(X_train,y_train)
y_proba=gpc.predict_proba(X_test)
#classify as 1 if prediction probablity greater than 15.8%
y_pred = [1 if x >= .158 else 0 for x in y_proba[:, 1]]

以上代码按预期运行。但是,为了解释模型,例如“Beta1 中 1 个单位的变化将导致成功概率提高 .7%”,我需要能够看到 theta。我该怎么做呢?感谢您的协助。顺便说一句,这是为了家庭作业

最佳答案

非常好的问题。您确实可以访问 thetas 但是在文档中并不清楚如何执行此操作。


使用以下内容。我在这里使用 iris 数据集。

from sklearn.gaussian_process.kernels import RBF
from sklearn.gaussian_process import GaussianProcessClassifier
from sklearn.preprocessing import StandardScaler
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split

# Scale/ Normalize Independent Variables
X = StandardScaler().fit_transform(X)

#Split data into train an test set at 50% each
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size= .5, random_state=42)

gpc= GaussianProcessClassifier(1.0 * RBF(1.0), n_jobs=-1)
gpc.fit(X_train,y_train)
y_proba=gpc.predict_proba(X_test)

#classify as 1 if prediction probablity greater than 15.8%
y_pred = [1 if x >= .158 else 0 for x in y_proba[:, 1]]

# thetas
gpc.kernel_.theta

结果:

array([7.1292252 , 1.35355145, 5.54106817, 0.61431805, 7.00063873,
1.3175175 ])

可以找到文档中访问 thetas 的示例 HERE


希望这对您有所帮助。

关于python - 如何从 GaussianProcessClassifier 中提取估计参数 (theta),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50668340/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com