共通¶
コンフィグ¶
コンフィグファイルを検索して、コンフィグファイルからコンフィグ情報を入手してください。
コンフィグファイルの検索順序については、次の表に記載しています。各コンフィグの値は下記のコンフィグで上書きされます。
Type |
Posix |
Windows |
---|---|---|
System wide |
/etc/nnabla.conf |
c:\ProgramData\NNabla\nnabla.ini |
User |
~/.nnabla |
c:\Users\[USERNAME]\AppData\Roaming\NNabla\nnabla.ini |
Default |
( ‘config.py’ と同じディレクトリ ) / nnabla.conf |
|
Local |
[CURRENT DIRECTORY]/nnabla.conf |
以下のようにコンフィグの値を取得することができます。
from utils.config import nnabla_config
value = nnabla_config.get(CATEGORY, VALUE_NAME)
CATEGORY と VALUE_NAME は、 config.py 内で定義されていません。 CATEGORY と VALUE は自由に追加できます。詳細については、 公式ドキュメント を参照してください。
[CATEGORY]
VALUE_NAME = value
これは、 config.py と同じディレクトリにある 'nnabla.conf' 内で定義されているデフォルト値です。
ロガー¶
ログのためのラッパーモジュール。
次のようなロガーを使うことができます。
from utils.logger import logger
logger.debug('Log message(DEBUG)')
logger.info('Log message(INFO)')
logger.warning('Log message(WARNING)')
logger.error('Log message(ERROR)')
logger.critical('Log message(CRITICAL)')
デフォルトの設定では、以下の出力となります。
$ python scripts/logger_test.py
[nnabla][ERROR]: logger_test.py : <module> : 5 : Log message(ERROR)
[nnabla][CRITICAL]: logger_test.py : <module> : 6 : Log message(CRITICAL)
ログをファイルに出力したい場合は、 nnabla.conf
ファイルを生成し、以下のエントリを記載する必要があります。
コンフィグファイルの詳細については、 nnabla.config
を参照してください。
[LOG]
log_file_name = /tmp/nbla.log
その後、以下にように出力されます。
$ python scripts/logger_test.py
[nnabla][ERROR]: logger_test.py : <module> : 5 : Log message(ERROR)
[nnabla][CRITICAL]: logger_test.py : <module> : 6 : Log message(CRITICAL)
$ cat /tmp/nbla.log
2017-01-19 14:41:35,132 [nnabla][DEBUG]: scripts/logger_test.py : <module> : 3 : Log message(DEBUG)
2017-01-19 14:41:35,132 [nnabla][INFO]: scripts/logger_test.py : <module> : 4 : Log message(INFO)
2017-01-19 14:41:35,132 [nnabla][ERROR]: scripts/logger_test.py : <module> : 5 : Log message(ERROR)
2017-01-19 14:41:35,132 [nnabla][CRITICAL]: scripts/logger_test.py : <module> : 6 : Log message(CRITICAL)
- nnabla.logger.logger¶
<Logger nnabla (INFO)>の別名です。
Auto-forward モード¶
NNabla は動的計算グラフの機能を提供し、グラフの構築中に自動フォーワードプロパゲーションを可能にします。これは、 set_auto_forward()
関数を使うことで可能になります。バックプロパゲーションは動的に構築されたグラフにおいて手動で実行されます。
コンテキスト¶
- class nnabla.Context(backend=None, array_class='', device_id='0')¶
コンテキストは、関数オペレーターモジュールと最適化モジュールが実行される計算エンジン ( cpu、 cuda、 cudnn など ) を指定するために使われます。コンテキストは、各関数に対してセットすることが可能であり、また、
context-specifier()
に列挙されている関数を使って広く全体的にセットすることも可能です。
コンテキスト指定子 API¶
- nnabla.context_scope(ctx)[ソース]¶
Python コンテキストとしてのコンテキスト。
import nnabla as nn import nnabla.functions as F x = nn.Variable([2, 3 ,4]) ctx = nnabla_ext.cuda.context('0') with context_scope(ctx): # Inside with scope, the specified context is used. with parameter_scope('w1'): l1 = F.relu(F.affine(x, 64)) with parameter_scope('w2'): l2 = F.relu(F.affine(x, 64))
- nnabla.set_default_context(ctx)[ソース]¶
デフォルトのコンテキストをセットします。
注釈
context_scope
内で呼び出すことができません。- パラメータ
ctx (Context) -- コンテキスト。
- nnabla.get_current_context()[ソース]¶
現在のコンテキストを取得します。
nnabla.context_scope()
かnnabla.set_default_context()
を使ってセットすることができます。- 戻り値
現在のコンテキスト。
- 戻り値の型