__init__.py 12.5 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
import os

Y
Yancey 已提交
17
try:
18 19
    from paddle.version import full_version as __version__
    from paddle.version import commit as __git_commit__
20

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

27
import paddle.batch
Z
zhangchunle 已提交
28
batch = batch.batch
29 30 31 32
from .fluid import monkey_patch_variable
from .fluid.dygraph import monkey_patch_math_varbase
monkey_patch_variable()
monkey_patch_math_varbase()
33 34
import paddle.framework
from .framework import VarBase as Tensor
M
minqiyang 已提交
35
import paddle.compat
36
import paddle.distributed
37
import paddle.sysconfig
38
import paddle.tensor
39
import paddle.distribution
C
Chengmo 已提交
40
import paddle.nn
41
import paddle.distributed.fleet
H
hong 已提交
42 43
import paddle.optimizer
import paddle.metric
44
import paddle.device
45
import paddle.regularizer
46
import paddle.incubate
47
import paddle.autograd
48

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

51
from .tensor.random import randperm
L
Leo Chen 已提交
52
from .tensor.random import bernoulli
53

54 55
from .tensor.attribute import rank  #DEFINE_ALIAS
from .tensor.attribute import shape  #DEFINE_ALIAS
56 57
from .tensor.attribute import real  #DEFINE_ALIAS
from .tensor.attribute import imag  #DEFINE_ALIAS
58
from .tensor.creation import to_tensor  #DEFINE_ALIAS
59
from .tensor.creation import diag  #DEFINE_ALIAS
60
from .tensor.creation import eye  #DEFINE_ALIAS
61
# from .tensor.creation import fill_constant  #DEFINE_ALIAS
62
# from .tensor.creation import get_tensor_from_selected_rows        #DEFINE_ALIAS
63
from .tensor.creation import linspace  #DEFINE_ALIAS
64 65 66 67
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
68
from .tensor.creation import arange  #DEFINE_ALIAS
69
from .tensor.creation import eye  #DEFINE_ALIAS
W
wangchaochaohu 已提交
70
from .tensor.creation import full  #DEFINE_ALIAS
P
Pei Yang 已提交
71
from .tensor.creation import full_like  #DEFINE_ALIAS
72 73
from .tensor.creation import triu  #DEFINE_ALIAS
from .tensor.creation import tril  #DEFINE_ALIAS
S
suytingwan 已提交
74
from .tensor.creation import meshgrid  #DEFINE_ALIAS
75
from .tensor.creation import empty  #DEFINE_ALIAS
76
from .tensor.creation import empty_like  #DEFINE_ALIAS
77
from .tensor.creation import assign  #DEFINE_ALIAS
78 79 80 81 82 83 84 85 86 87 88
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 已提交
89
from .tensor.linalg import histogram  #DEFINE_ALIAS
90
from .tensor.linalg import mv  #DEFINE_ALIAS
91
from .tensor.logic import equal  #DEFINE_ALIAS
92 93 94
from .tensor.logic import greater_equal  #DEFINE_ALIAS
from .tensor.logic import greater_than  #DEFINE_ALIAS
from .tensor.logic import is_empty  #DEFINE_ALIAS
J
Jack Zhou 已提交
95
#from .tensor.logic import isfinite  #DEFINE_ALIAS
96 97 98 99 100 101 102
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
Z
Zhen Wang 已提交
103
from .tensor.logic import allclose  #DEFINE_ALIAS
W
wawltor 已提交
104
from .tensor.logic import equal_all  #DEFINE_ALIAS
105
# from .tensor.logic import isnan        #DEFINE_ALIAS
Z
zhulei 已提交
106
from .tensor.logic import is_tensor  #DEFINE_ALIAS
107 108 109
from .tensor.manipulation import cast  #DEFINE_ALIAS
from .tensor.manipulation import concat  #DEFINE_ALIAS
from .tensor.manipulation import expand  #DEFINE_ALIAS
L
lilong12 已提交
110
from .tensor.manipulation import broadcast_to  #DEFINE_ALIAS
111
from .tensor.manipulation import expand_as  #DEFINE_ALIAS
L
lilong12 已提交
112
from .tensor.manipulation import tile  #DEFINE_ALIAS
113 114
from .tensor.manipulation import flatten  #DEFINE_ALIAS
from .tensor.manipulation import gather  #DEFINE_ALIAS
115
from .tensor.manipulation import gather_nd  #DEFINE_ALIAS
116
from .tensor.manipulation import reshape  #DEFINE_ALIAS
117
from .tensor.manipulation import reshape_  #DEFINE_ALIAS
Y
yaoxuefeng 已提交
118
from .tensor.manipulation import flip as reverse  #DEFINE_ALIAS
119
from .tensor.manipulation import scatter  #DEFINE_ALIAS
120
from .tensor.manipulation import scatter_  #DEFINE_ALIAS
121 122 123
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
124 125 126
from .tensor.manipulation import slice  #DEFINE_ALIAS
from .tensor.manipulation import split  #DEFINE_ALIAS
from .tensor.manipulation import squeeze  #DEFINE_ALIAS
127
from .tensor.manipulation import squeeze_  #DEFINE_ALIAS
128 129 130 131 132
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
from .tensor.manipulation import unsqueeze  #DEFINE_ALIAS
133
from .tensor.manipulation import unsqueeze_  #DEFINE_ALIAS
134 135
from .tensor.manipulation import unstack  #DEFINE_ALIAS
from .tensor.manipulation import flip  #DEFINE_ALIAS
136
from .tensor.manipulation import unbind  #DEFINE_ALIAS
137
from .tensor.manipulation import roll  #DEFINE_ALIAS
138
from .tensor.manipulation import chunk  #DEFINE_ALIAS
139 140 141
from .tensor.math import abs  #DEFINE_ALIAS
from .tensor.math import acos  #DEFINE_ALIAS
from .tensor.math import asin  #DEFINE_ALIAS
142
from .tensor.math import atan  #DEFINE_ALIAS
143 144
from .tensor.math import ceil  #DEFINE_ALIAS
from .tensor.math import cos  #DEFINE_ALIAS
J
joejiong 已提交
145
from .tensor.math import tan  #DEFINE_ALIAS
146
from .tensor.math import cosh  #DEFINE_ALIAS
147
from .tensor.math import cumsum  #DEFINE_ALIAS
148 149 150 151 152 153
# 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
154 155
from .tensor.math import exp  #DEFINE_ALIAS
from .tensor.math import floor  #DEFINE_ALIAS
156
from .tensor.math import increment  #DEFINE_ALIAS
157
from .tensor.math import log  #DEFINE_ALIAS
J
joejiong 已提交
158
from .tensor.math import log2  #DEFINE_ALIAS
J
joejiong 已提交
159
from .tensor.math import log10  #DEFINE_ALIAS
160
from .tensor.math import multiplex  #DEFINE_ALIAS
161
from .tensor.math import pow  #DEFINE_ALIAS
162
from .tensor.math import reciprocal  #DEFINE_ALIAS
163 164 165 166
# 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
167 168
from .tensor.math import all  #DEFINE_ALIAS
from .tensor.math import any  #DEFINE_ALIAS
169 170 171 172
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
173
from .tensor.math import sin  #DEFINE_ALIAS
174
from .tensor.math import sinh  #DEFINE_ALIAS
175
from .tensor.math import sqrt  #DEFINE_ALIAS
176 177
from .tensor.math import square  #DEFINE_ALIAS
from .tensor.math import stanh  #DEFINE_ALIAS
178
from .tensor.math import sum  #DEFINE_ALIAS
179
from .tensor.math import tanh  #DEFINE_ALIAS
180
from .tensor.math import tanh_  #DEFINE_ALIAS
S
Steffy-zxf 已提交
181
from .tensor.math import add_n  #DEFINE_ALIAS
182
from .tensor.math import max  #DEFINE_ALIAS
183
from .tensor.math import maximum  #DEFINE_ALIAS
184
from .tensor.math import min  #DEFINE_ALIAS
185
from .tensor.math import minimum  #DEFINE_ALIAS
186
from .tensor.math import mm  #DEFINE_ALIAS
187 188 189 190 191
from .tensor.math import divide  #DEFINE_ALIAS
from .tensor.math import floor_divide  #DEFINE_ALIAS
from .tensor.math import remainder  #DEFINE_ALIAS
from .tensor.math import mod  #DEFINE_ALIAS
from .tensor.math import floor_mod  #DEFINE_ALIAS
192
from .tensor.math import multiply  #DEFINE_ALIAS
193
from .tensor.math import add  #DEFINE_ALIAS
194
from .tensor.math import subtract  #DEFINE_ALIAS
195
from .tensor.math import atan  #DEFINE_ALIAS
196
from .tensor.math import logsumexp  #DEFINE_ALIAS
197
from .tensor.math import inverse  #DEFINE_ALIAS
198
from .tensor.math import log1p  #DEFINE_ALIAS
199
from .tensor.math import erf  #DEFINE_ALIAS
200
from .tensor.math import addmm  #DEFINE_ALIAS
Y
Yang Zhang 已提交
201
from .tensor.math import clip  #DEFINE_ALIAS
L
Li Fuchen 已提交
202
from .tensor.math import trace  #DEFINE_ALIAS
203
from .tensor.math import kron  #DEFINE_ALIAS
J
Jack Zhou 已提交
204 205 206
from .tensor.math import isfinite  #DEFINE_ALIAS
from .tensor.math import isinf  #DEFINE_ALIAS
from .tensor.math import isnan  #DEFINE_ALIAS
G
guofei 已提交
207
from .tensor.math import prod  #DEFINE_ALIAS
L
Leo Chen 已提交
208
from .tensor.math import broadcast_shape  #DEFINE_ALIAS
209
from .tensor.math import conj  #DEFINE_ALIAS
L
Leo Chen 已提交
210

P
pangyoki 已提交
211
from .tensor.random import multinomial  #DEFINE_ALIAS
212 213
from .tensor.random import standard_normal
from .tensor.random import normal
P
pangyoki 已提交
214
from .tensor.random import uniform  #DEFINE_ALIAS
215 216 217 218
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
219
from .tensor.search import argmax  #DEFINE_ALIAS
220 221
from .tensor.search import argmin  #DEFINE_ALIAS
from .tensor.search import argsort  #DEFINE_ALIAS
222 223
# from .tensor.search import has_inf  #DEFINE_ALIAS
# from .tensor.search import has_nan  #DEFINE_ALIAS
224
from .tensor.search import masked_select  #DEFINE_ALIAS
225
from .tensor.search import topk  #DEFINE_ALIAS
G
GaoWei8 已提交
226
from .tensor.search import where  #DEFINE_ALIAS
227 228
from .tensor.search import index_select  #DEFINE_ALIAS
from .tensor.search import nonzero  #DEFINE_ALIAS
229
from .tensor.search import sort  #DEFINE_ALIAS
230

L
Leo Chen 已提交
231
from .tensor.to_string import set_printoptions  #DEFINE_ALIAS
232

C
cnn 已提交
233
from .framework.random import seed  #DEFINE_ALIAS
Y
yaoxuefeng 已提交
234 235
from .framework.random import get_cuda_rng_state  #DEFINE_ALIAS
from .framework.random import set_cuda_rng_state  #DEFINE_ALIAS
236
from .framework import ParamAttr  #DEFINE_ALIAS
237
# from .framework import create_global_var  #DEFINE_ALIAS
H
hong 已提交
238 239 240
from .framework import create_parameter  #DEFINE_ALIAS
from .framework import CPUPlace  #DEFINE_ALIAS
from .framework import CUDAPlace  #DEFINE_ALIAS
241
from .framework import NPUPlace  #DEFINE_ALIAS
H
hong 已提交
242
from .framework import CUDAPinnedPlace  #DEFINE_ALIAS
243 244 245 246 247 248 249

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 DataParallel  #DEFINE_ALIAS

250 251
from .framework import set_default_dtype  #DEFINE_ALIAS
from .framework import get_default_dtype  #DEFINE_ALIAS
252

253 254
from .tensor.search import index_sample  #DEFINE_ALIAS
from .tensor.stat import mean  #DEFINE_ALIAS
255
# from .tensor.stat import reduce_mean  #DEFINE_ALIAS
256 257
from .tensor.stat import std  #DEFINE_ALIAS
from .tensor.stat import var  #DEFINE_ALIAS
258
# from .fluid.data import data
259
from .tensor.stat import numel  #DEFINE_ALIAS
Z
zhulei 已提交
260
from .tensor.stat import median  #DEFINE_ALIAS
261
from .device import get_cudnn_version
262 263
from .device import set_device
from .device import get_device
264
from .device import is_compiled_with_cuda  #DEFINE_ALIAS
265
from .device import is_compiled_with_xpu
266
from .device import is_compiled_with_npu
267
from .device import XPUPlace
268
# from .tensor.tensor import Tensor        #DEFINE_ALIAS
269 270
# from .tensor.tensor import LoDTensor        #DEFINE_ALIAS
# from .tensor.tensor import LoDTensorArray        #DEFINE_ALIAS
271

272 273 274
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
275 276
from .fluid.layers import crop_tensor as crop  #DEFINE_ALIAS

277 278
from . import jit
from . import static
279
from . import amp
C
channings 已提交
280
from . import onnx
281 282 283 284

# high-level api
from .hapi import Model
from .hapi import callbacks
L
LielinJiang 已提交
285
from .hapi import summary
Y
yukavio 已提交
286
from .hapi import flops
287 288
import paddle.text
import paddle.vision
P
pangyoki 已提交
289 290

disable_static()