__init__.py 2.2 KB
Newer Older
Q
qiaolongfei 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13
# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
Y
yi.wu 已提交
14
import os
Q
qiaolongfei 已提交
15
import optimizer
Q
qiaolongfei 已提交
16
import layer
17
import activation
Y
Yu Yang 已提交
18 19
import parameters
import trainer
Y
Yu Yang 已提交
20
import event
21
import data_type
Q
qiaolongfei 已提交
22
import topology
Q
qiaolongfei 已提交
23
import networks
Y
Yu Yang 已提交
24
import evaluator
Y
Yu Yang 已提交
25
from . import dataset
Y
Yu Yang 已提交
26
from . import reader
Y
Yancey1989 已提交
27
from . import plot
L
Luo Tao 已提交
28
import attr
X
xuwei06 已提交
29
import op
L
Luo Tao 已提交
30
import pooling
31
import inference
Y
Yu Yang 已提交
32
import networks
H
Helin Wang 已提交
33
import minibatch
Y
Yancey1989 已提交
34
import plot
D
dangqingqing 已提交
35
import image
36
import model
37
import paddle.trainer.config_parser as cp
38

Q
qiaolongfei 已提交
39
__all__ = [
40 41
    'default_startup_program',
    'default_main_program',
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
    'optimizer',
    'layer',
    'activation',
    'parameters',
    'init',
    'trainer',
    'event',
    'data_type',
    'attr',
    'pooling',
    'dataset',
    'reader',
    'topology',
    'networks',
    'infer',
    'plot',
    'evaluator',
    'image',
H
Helin Wang 已提交
60
    'master',
61
    'model',
Q
qiaolongfei 已提交
62
]
Y
Yu Yang 已提交
63

64 65
cp.begin_parse()

Y
Yu Yang 已提交
66 67

def init(**kwargs):
Y
Yu Yang 已提交
68
    import py_paddle.swig_paddle as api
Y
Yu Yang 已提交
69
    args = []
W
wuyi05 已提交
70
    args_dict = {}
Y
yi.wu 已提交
71 72
    # NOTE: append arguments if they are in ENV
    for ek, ev in os.environ.iteritems():
W
wuyi05 已提交
73 74
        if ek.startswith("PADDLE_INIT_"):
            args_dict[ek.replace("PADDLE_INIT_", "").lower()] = str(ev)
Y
yi.wu 已提交
75

W
wuyi05 已提交
76
    args_dict.update(kwargs)
Y
yi.wu 已提交
77
    # NOTE: overwrite arguments from ENV if it is in kwargs
W
wuyi05 已提交
78
    for key in args_dict.keys():
Y
Yancey1989 已提交
79
        args.append('--%s=%s' % (key, str(args_dict[key])))
Q
qiaolongfei 已提交
80

81 82
    if 'use_gpu' in kwargs:
        cp.g_command_config_args['use_gpu'] = kwargs['use_gpu']
T
tensor-tang 已提交
83 84
    if 'use_mkldnn' in kwargs:
        cp.g_command_config_args['use_mkldnn'] = kwargs['use_mkldnn']
85 86 87
    assert 'parallel_nn' not in kwargs, ("currently 'parallel_nn' is not "
                                         "supported in v2 APIs.")

Y
Yu Yang 已提交
88
    api.initPaddle(*args)
Y
Yu Yang 已提交
89

Y
Yu Yang 已提交
90

Y
Yu Yang 已提交
91 92
infer = inference.infer
batch = minibatch.batch