私はJuliaのMXNetの象徴的なAPIのニュアンスを理解するのに苦労しています。 act_type
シンボル:relu
が割り当てられているのはなぜJuliaのMXNetのシンボリックAPIに関する問い合わせ
act1 = mx.Activation(data = fc1, name=:relu1, act_type=:relu)
:私は、次の行を持っているMXNetマニュアルに例を見ましたか。?
:relu
は関数ポインタですか?そうでない場合は、値を:relu
シンボルに割り当てますか?データにシンボルが割り当てられないのはなぜですか?名前に文字列ではなくシンボルが割り当てられるのはなぜですか?
あなたが通過したシンボルに応じて実行するスイッチスタイルステートメントは、 - reluシンボルが何らかの名前でチェックできることを意味します。 typeof(:relu)は結果に-Symbolを与えます。だから、どのタイプのシンボルが –
に渡されたかをどうやって確認することができますか?それは 'if name ==:relu;という単純なものかもしれません。 callrelu(); elseif name ==:エクスポ; callexpo();終わり。ソースコードを見ると、MXNetライブラリはPythonベースのようです。シンボルはPyCall内でPythonモジュールの各メンバーを呼び出すために使用されることがあります。例えばPythonの中で 'mx.relu'を持っていれば、通常は' mx [:relu] 'になるjuliaにあります。これがここで起こっている可能性があります。 'relu'は' mx' pythonモジュールのメンバーです。 –
と思ったので、PyCallの構文です。 Pythonの同等のドキュメントを見てください。 (たとえば、pipを使用してmxnetをインストールし、pythonで 'mxnetをインポート 'してから' help(mxnet.symbol.Activation) 'を実行します)。 Pythonモジュールがインストールされている限り、 'pyCall'、' mxnet = pyimport( "mxnet"); '、' pybuiltin( "help")を使ってjuliaを使って同じ情報を得ることができます(mxnet [ :シンボル] [:アクティベーション]) ' –