繁体   English   中英

sklearn:将属性 out_activation_ 的值设置为“logistic”

[英]sklearn: Set the valute to the attribute out_activation_ to 'logistic'

我需要在 sklearn 的 MLPRegressor 中设置属性 activation_out = 'logistic'。 假定此属性可以采用相关激活函数的名称('relu'、'logistic'、'tanh' 等)。 问题是我找不到您可以控制此属性并将其设置为首选功能的方式。 拜托,如果有人以前遇到过这个问题或知道更多,我需要一些帮助。

我试图将属性设置为 MLPRegressor(),错误。 我试过 set_params() 方法,错误。 我曾尝试通过变量资源管理器手动更改它,错误。 最后,我使用了 MLPName.activation_out = 'logistic' 但是当我再次使用 fit() 方法时它又变成了 'identity'。 代码:

X_train2, X_test2, y_train2,y_test2 = 
train_test_split(signals_final,masks,test_size=0.05,random_state = 
17)
scaler2 = MinMaxScaler()
X_train2 = scaler.fit_transform(X_train2)
X_test2 = scaler.transform(X_test2)

MatchingNetwork = MLPRegressor(alpha = 1e-15,hidden_layer_sizes= 
(300,)                          
,random_state=1,max_iter=20000,activation='logistic',batch_size=64)
MLPRegressor().out_activation_ = 'logistic'

你不能。 output 激活由fit时的问题类型决定。 对于回归,使用身份激活; 请参阅用户指南

这是相关的源代码 也许可以通过拟合一次迭代、更改属性然后使用partial_fit来破解它,从那时起将不会再次调用此_initialize方法; 但是在反向传播时它很可能会中断。

一般来说,我认为 sklearn neural.networks 并没有设计得非常灵活:还有其他包可以扮演这个角色,效率更高(使用 GPU)等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM