__init__.py 12.0 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

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

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

P
pangyoki 已提交
201
from .tensor.random import multinomial  #DEFINE_ALIAS
202 203
from .tensor.random import standard_normal
from .tensor.random import normal
P
pangyoki 已提交
204
from .tensor.random import uniform  #DEFINE_ALIAS
205 206 207 208
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
209
from .tensor.search import argmax  #DEFINE_ALIAS
210 211
from .tensor.search import argmin  #DEFINE_ALIAS
from .tensor.search import argsort  #DEFINE_ALIAS
212 213
# from .tensor.search import has_inf  #DEFINE_ALIAS
# from .tensor.search import has_nan  #DEFINE_ALIAS
214
from .tensor.search import masked_select  #DEFINE_ALIAS
215
from .tensor.search import topk  #DEFINE_ALIAS
G
GaoWei8 已提交
216
from .tensor.search import where  #DEFINE_ALIAS
217 218
from .tensor.search import index_select  #DEFINE_ALIAS
from .tensor.search import nonzero  #DEFINE_ALIAS
219
from .tensor.search import sort  #DEFINE_ALIAS
220

L
Leo Chen 已提交
221
from .tensor.to_string import set_printoptions  #DEFINE_ALIAS
222

C
cnn 已提交
223
from .framework.random import seed  #DEFINE_ALIAS
Y
yaoxuefeng 已提交
224 225
from .framework.random import get_cuda_rng_state  #DEFINE_ALIAS
from .framework.random import set_cuda_rng_state  #DEFINE_ALIAS
226
from .framework import ParamAttr  #DEFINE_ALIAS
227
# from .framework import create_global_var  #DEFINE_ALIAS
H
hong 已提交
228 229 230 231
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
232 233 234 235 236 237 238

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

239 240
from .framework import set_default_dtype  #DEFINE_ALIAS
from .framework import get_default_dtype  #DEFINE_ALIAS
241

242 243
from .tensor.search import index_sample  #DEFINE_ALIAS
from .tensor.stat import mean  #DEFINE_ALIAS
244
# from .tensor.stat import reduce_mean  #DEFINE_ALIAS
245 246
from .tensor.stat import std  #DEFINE_ALIAS
from .tensor.stat import var  #DEFINE_ALIAS
247
# from .fluid.data import data
248
from .tensor.stat import numel  #DEFINE_ALIAS
Z
zhulei 已提交
249
from .tensor.stat import median  #DEFINE_ALIAS
250
from .device import get_cudnn_version
251 252
from .device import set_device
from .device import get_device
253
from .device import is_compiled_with_cuda  #DEFINE_ALIAS
254 255
from .device import is_compiled_with_xpu
from .device import XPUPlace
256
# from .tensor.tensor import Tensor        #DEFINE_ALIAS
257 258
# from .tensor.tensor import LoDTensor        #DEFINE_ALIAS
# from .tensor.tensor import LoDTensorArray        #DEFINE_ALIAS
259

260 261 262
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
263 264
from .fluid.layers import crop_tensor as crop  #DEFINE_ALIAS

265 266
from . import jit
from . import static
267
from . import amp
C
channings 已提交
268
from . import onnx
269 270 271 272

# high-level api
from .hapi import Model
from .hapi import callbacks
L
LielinJiang 已提交
273
from .hapi import summary
274
from .hapi import flops
275 276
import paddle.text
import paddle.vision
P
pangyoki 已提交
277 278

disable_static()