- Python快樂編程:人工智能深度學習基礎
- 千鋒教育高教產品研發部編著
- 495字
- 2022-07-27 18:56:00
2.6.1 函數的定義
事實上,前面已經引入了Theano中一個非常重要的函數:theano.function,該函數主要用于定義一個函數的自變量和返回值(因變量)。
函數的語法格式如下所示:

可以看出,函數具有很多參數,但通常只會用到inputs、outputs、updates這3個參數,分別表示函數的自變量、函數的返回值(因變量)、共享變量參數更新策略。
(1)inputs:用于指定函數的自變量列表。python以列表的形式來表示,列表的每一個元素都是一個In類型,In類型的函數有很多參數設置,詳細的參數定義建議參考Theano的官方文檔,本書僅對其中較為常用的兩個參數進行介紹。
· variable:指定符號變量。
· value:指定變量的默認值。
(2)outputs:指定函數的返回值列表。outputs的值如果為空,則說明沒有輸出結果;也可以是一個值或者以列表的形式表示多個返回值。如果outputs的值不為空,則每一個返回值都是一個Out類,Out類的構造函數相對簡單,一般只需要指定返回的符號變量即可。
(3)updates:共享變量參數更新策略。通常以字典或元組列表的形式來指定。updates應用最廣泛的就是在最優化計算過程中,指定每一次迭代時參數的更新策略。通過updates來對梯度下降算法中的權重參數進行迭代更新。
當函數同時存在多個自變量和對應的因變量時定義格式如下:

輸出如下所示:
[array(5.,dtype = float32),array(6.,dtype = float32)]
推薦閱讀