簡體   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