__init__.py 11.1 KB
Newer Older
1
# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved
Z
zhangjinchao01 已提交
2 3 4 5 6 7 8 9 10 11 12 13
#
# 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.
C
Chengmo 已提交
14

15 16 17 18 19
import os
from paddle.check_import_scipy import check_import_scipy

check_import_scipy(os.name)

Y
Yancey 已提交
20
try:
21 22
    from paddle.version import full_version as __version__
    from paddle.version import commit as __git_commit__
23

Y
Yancey 已提交
24 25
except ImportError:
    import sys
26
    sys.stderr.write('''Warning with import paddle: you should not
Y
Yancey 已提交
27 28
     import paddle from the source directory; please install paddlepaddle*.whl firstly.'''
                     )
29

30 31 32
import paddle.reader
import paddle.dataset
import paddle.batch
Z
zhangchunle 已提交
33
batch = batch.batch
34 35 36
import paddle.framework
from .framework import VarBase as Tensor
from .framework import ComplexVariable as ComplexTensor
M
minqiyang 已提交
37
import paddle.compat
38
import paddle.distributed
39
import paddle.sysconfig
40
import paddle.tensor
C
Chengmo 已提交
41
import paddle.nn
42
import paddle.distributed.fleet
H
hong 已提交
43 44
import paddle.optimizer
import paddle.metric
45
import paddle.device
46
import paddle.incubate.complex as complex
47

C
Chengmo 已提交
48
# TODO: define alias in tensor and framework directory
49

50
from .tensor.random import randperm
51

52 53
from .tensor.attribute import rank  #DEFINE_ALIAS
from .tensor.attribute import shape  #DEFINE_ALIAS
54
from .tensor.creation import to_tensor  #DEFINE_ALIAS
55 56
from .tensor.creation import crop_tensor  #DEFINE_ALIAS
from .tensor.creation import diag  #DEFINE_ALIAS
57
from .tensor.creation import eye  #DEFINE_ALIAS
58
from .tensor.creation import fill_constant  #DEFINE_ALIAS
59
# from .tensor.creation import get_tensor_from_selected_rows        #DEFINE_ALIAS
60
from .tensor.creation import linspace  #DEFINE_ALIAS
61 62 63 64
from .tensor.creation import ones  #DEFINE_ALIAS
from .tensor.creation import ones_like  #DEFINE_ALIAS
from .tensor.creation import zeros  #DEFINE_ALIAS
from .tensor.creation import zeros_like  #DEFINE_ALIAS
65
from .tensor.creation import arange  #DEFINE_ALIAS
66
from .tensor.creation import eye  #DEFINE_ALIAS
W
wangchaochaohu 已提交
67
from .tensor.creation import full  #DEFINE_ALIAS
P
Pei Yang 已提交
68
from .tensor.creation import full_like  #DEFINE_ALIAS
69 70
from .tensor.creation import triu  #DEFINE_ALIAS
from .tensor.creation import tril  #DEFINE_ALIAS
S
suytingwan 已提交
71
from .tensor.creation import meshgrid  #DEFINE_ALIAS
72 73 74 75 76 77 78 79 80 81 82
from .tensor.linalg import matmul  #DEFINE_ALIAS
from .tensor.linalg import dot  #DEFINE_ALIAS
# from .tensor.linalg import einsum        #DEFINE_ALIAS
from .tensor.linalg import norm  #DEFINE_ALIAS
from .tensor.linalg import transpose  #DEFINE_ALIAS
from .tensor.linalg import dist  #DEFINE_ALIAS
from .tensor.linalg import t  #DEFINE_ALIAS
from .tensor.linalg import cross  #DEFINE_ALIAS
from .tensor.linalg import cholesky  #DEFINE_ALIAS
# from .tensor.linalg import tensordot        #DEFINE_ALIAS
from .tensor.linalg import bmm  #DEFINE_ALIAS
Q
Qi Li 已提交
83
from .tensor.linalg import histogram  #DEFINE_ALIAS
84
from .tensor.logic import equal  #DEFINE_ALIAS
85 86 87 88 89 90 91 92 93 94 95 96 97
from .tensor.logic import greater_equal  #DEFINE_ALIAS
from .tensor.logic import greater_than  #DEFINE_ALIAS
from .tensor.logic import is_empty  #DEFINE_ALIAS
from .tensor.logic import isfinite  #DEFINE_ALIAS
from .tensor.logic import less_equal  #DEFINE_ALIAS
from .tensor.logic import less_than  #DEFINE_ALIAS
from .tensor.logic import logical_and  #DEFINE_ALIAS
from .tensor.logic import logical_not  #DEFINE_ALIAS
from .tensor.logic import logical_or  #DEFINE_ALIAS
from .tensor.logic import logical_xor  #DEFINE_ALIAS
from .tensor.logic import not_equal  #DEFINE_ALIAS
from .tensor.logic import reduce_all  #DEFINE_ALIAS
from .tensor.logic import reduce_any  #DEFINE_ALIAS
Z
Zhen Wang 已提交
98
from .tensor.logic import allclose  #DEFINE_ALIAS
W
wawltor 已提交
99
from .tensor.logic import equal_all  #DEFINE_ALIAS
100 101 102 103 104
# from .tensor.logic import isnan        #DEFINE_ALIAS
from .tensor.manipulation import cast  #DEFINE_ALIAS
from .tensor.manipulation import concat  #DEFINE_ALIAS
from .tensor.manipulation import expand  #DEFINE_ALIAS
from .tensor.manipulation import expand_as  #DEFINE_ALIAS
L
lilong12 已提交
105
from .tensor.manipulation import tile  #DEFINE_ALIAS
106 107
from .tensor.manipulation import flatten  #DEFINE_ALIAS
from .tensor.manipulation import gather  #DEFINE_ALIAS
108
from .tensor.manipulation import gather_nd  #DEFINE_ALIAS
109
from .tensor.manipulation import reshape  #DEFINE_ALIAS
Y
yaoxuefeng 已提交
110
from .tensor.manipulation import flip as reverse  #DEFINE_ALIAS
111
from .tensor.manipulation import scatter  #DEFINE_ALIAS
112 113 114
from .tensor.manipulation import scatter_nd_add  #DEFINE_ALIAS
from .tensor.manipulation import scatter_nd  #DEFINE_ALIAS
from .tensor.manipulation import shard_index  #DEFINE_ALIAS
115 116 117 118 119 120 121
from .tensor.manipulation import slice  #DEFINE_ALIAS
from .tensor.manipulation import split  #DEFINE_ALIAS
from .tensor.manipulation import squeeze  #DEFINE_ALIAS
from .tensor.manipulation import stack  #DEFINE_ALIAS
from .tensor.manipulation import strided_slice  #DEFINE_ALIAS
from .tensor.manipulation import transpose  #DEFINE_ALIAS
from .tensor.manipulation import unique  #DEFINE_ALIAS
122
from .tensor.manipulation import unique_with_counts  #DEFINE_ALIAS
123 124 125
from .tensor.manipulation import unsqueeze  #DEFINE_ALIAS
from .tensor.manipulation import unstack  #DEFINE_ALIAS
from .tensor.manipulation import flip  #DEFINE_ALIAS
126
from .tensor.manipulation import unbind  #DEFINE_ALIAS
127 128 129 130
from .tensor.manipulation import roll  #DEFINE_ALIAS
from .tensor.math import abs  #DEFINE_ALIAS
from .tensor.math import acos  #DEFINE_ALIAS
from .tensor.math import asin  #DEFINE_ALIAS
131
from .tensor.math import atan  #DEFINE_ALIAS
132 133
from .tensor.math import ceil  #DEFINE_ALIAS
from .tensor.math import cos  #DEFINE_ALIAS
134
from .tensor.math import cosh  #DEFINE_ALIAS
135 136 137 138 139 140 141 142 143
from .tensor.math import cumsum  #DEFINE_ALIAS
from .tensor.math import elementwise_add  #DEFINE_ALIAS
from .tensor.math import elementwise_div  #DEFINE_ALIAS
from .tensor.math import elementwise_floordiv  #DEFINE_ALIAS
from .tensor.math import elementwise_mod  #DEFINE_ALIAS
from .tensor.math import elementwise_pow  #DEFINE_ALIAS
from .tensor.math import elementwise_sub  #DEFINE_ALIAS
from .tensor.math import exp  #DEFINE_ALIAS
from .tensor.math import floor  #DEFINE_ALIAS
144
from .tensor.math import increment  #DEFINE_ALIAS
145
from .tensor.math import log  #DEFINE_ALIAS
146
from .tensor.math import multiplex  #DEFINE_ALIAS
147
from .tensor.math import pow  #DEFINE_ALIAS
148 149 150 151 152 153 154 155 156
from .tensor.math import reciprocal  #DEFINE_ALIAS
from .tensor.math import reduce_max  #DEFINE_ALIAS
from .tensor.math import reduce_min  #DEFINE_ALIAS
from .tensor.math import reduce_prod  #DEFINE_ALIAS
from .tensor.math import reduce_sum  #DEFINE_ALIAS
from .tensor.math import round  #DEFINE_ALIAS
from .tensor.math import rsqrt  #DEFINE_ALIAS
from .tensor.math import scale  #DEFINE_ALIAS
from .tensor.math import sign  #DEFINE_ALIAS
157
from .tensor.math import sin  #DEFINE_ALIAS
158
from .tensor.math import sinh  #DEFINE_ALIAS
159
from .tensor.math import sqrt  #DEFINE_ALIAS
160 161
from .tensor.math import square  #DEFINE_ALIAS
from .tensor.math import stanh  #DEFINE_ALIAS
162
from .tensor.math import sum  #DEFINE_ALIAS
163
from .tensor.math import sums  #DEFINE_ALIAS
164
from .tensor.math import tanh  #DEFINE_ALIAS
165
from .tensor.math import elementwise_sum  #DEFINE_ALIAS
166
from .tensor.math import max  #DEFINE_ALIAS
167
from .tensor.math import maximum  #DEFINE_ALIAS
168
from .tensor.math import min  #DEFINE_ALIAS
169
from .tensor.math import minimum  #DEFINE_ALIAS
170
from .tensor.math import mm  #DEFINE_ALIAS
171
from .tensor.math import div  #DEFINE_ALIAS
172
from .tensor.math import multiply  #DEFINE_ALIAS
173
from .tensor.math import add  #DEFINE_ALIAS
174
from .tensor.math import atan  #DEFINE_ALIAS
175
from .tensor.math import logsumexp  #DEFINE_ALIAS
176
from .tensor.math import inverse  #DEFINE_ALIAS
177
from .tensor.math import log1p  #DEFINE_ALIAS
178
from .tensor.math import erf  #DEFINE_ALIAS
B
Bai Yifan 已提交
179
from .tensor.math import addcmul  #DEFINE_ALIAS
180
from .tensor.math import addmm  #DEFINE_ALIAS
181
from .tensor.math import clamp  #DEFINE_ALIAS
L
Li Fuchen 已提交
182
from .tensor.math import trace  #DEFINE_ALIAS
183 184 185 186 187 188 189 190
from .tensor.math import kron  #DEFINE_ALIAS
# from .tensor.random import gaussin        #DEFINE_ALIAS
# from .tensor.random import uniform        #DEFINE_ALIAS
from .tensor.random import shuffle  #DEFINE_ALIAS
from .tensor.random import randn  #DEFINE_ALIAS
from .tensor.random import rand  #DEFINE_ALIAS
from .tensor.random import randint  #DEFINE_ALIAS
from .tensor.random import randperm  #DEFINE_ALIAS
191
from .tensor.search import argmax  #DEFINE_ALIAS
192 193 194 195 196 197
from .tensor.search import argmin  #DEFINE_ALIAS
from .tensor.search import argsort  #DEFINE_ALIAS
from .tensor.search import has_inf  #DEFINE_ALIAS
from .tensor.search import has_nan  #DEFINE_ALIAS
# from .tensor.search import masked_select        #DEFINE_ALIAS
from .tensor.search import topk  #DEFINE_ALIAS
G
GaoWei8 已提交
198
from .tensor.search import where  #DEFINE_ALIAS
199 200
from .tensor.search import index_select  #DEFINE_ALIAS
from .tensor.search import nonzero  #DEFINE_ALIAS
201
from .tensor.search import sort  #DEFINE_ALIAS
0
0YuanZhang0 已提交
202
from .framework.random import manual_seed  #DEFINE_ALIAS
203 204
from .framework import Variable  #DEFINE_ALIAS
from .framework import ParamAttr  #DEFINE_ALIAS
H
hong 已提交
205 206 207 208 209
from .framework import create_global_var  #DEFINE_ALIAS
from .framework import create_parameter  #DEFINE_ALIAS
from .framework import CPUPlace  #DEFINE_ALIAS
from .framework import CUDAPlace  #DEFINE_ALIAS
from .framework import CUDAPinnedPlace  #DEFINE_ALIAS
210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228

from .framework import BackwardStrategy  #DEFINE_ALIAS
from .framework import to_variable  #DEFINE_ALIAS
from .framework import grad  #DEFINE_ALIAS
from .framework import no_grad  #DEFINE_ALIAS
from .framework import save  #DEFINE_ALIAS
from .framework import load  #DEFINE_ALIAS
from .framework import prepare_context  #DEFINE_ALIAS
from .framework import ParallelEnv  #DEFINE_ALIAS
from .framework import DataParallel  #DEFINE_ALIAS

from .framework import NoamDecay  #DEFINE_ALIAS
from .framework import PiecewiseDecay  #DEFINE_ALIAS
from .framework import NaturalExpDecay  #DEFINE_ALIAS
from .framework import ExponentialDecay  #DEFINE_ALIAS
from .framework import InverseTimeDecay  #DEFINE_ALIAS
from .framework import PolynomialDecay  #DEFINE_ALIAS
from .framework import CosineDecay  #DEFINE_ALIAS

229 230 231 232 233
from .tensor.search import index_sample  #DEFINE_ALIAS
from .tensor.stat import mean  #DEFINE_ALIAS
from .tensor.stat import reduce_mean  #DEFINE_ALIAS
from .tensor.stat import std  #DEFINE_ALIAS
from .tensor.stat import var  #DEFINE_ALIAS
H
hong 已提交
234
from .fluid.data import data
235
from .device import get_cudnn_version
236 237 238
from .device import set_device
from .device import get_device
# from .tensor.tensor import Tensor        #DEFINE_ALIAS
239 240
# from .tensor.tensor import LoDTensor        #DEFINE_ALIAS
# from .tensor.tensor import LoDTensorArray        #DEFINE_ALIAS
241 242 243

from . import incubate
from .incubate import hapi
244 245 246
from .fluid.dygraph.base import enable_dygraph as disable_static  #DEFINE_ALIAS
from .fluid.dygraph.base import disable_dygraph as enable_static  #DEFINE_ALIAS
from .fluid.framework import in_dygraph_mode as in_dynamic_mode  #DEFINE_ALIAS
247
from .fluid.dygraph.base import no_grad  #DEFINE_ALIAS
248 249 250

from . import jit
from . import static