You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

mindspore.ops.rst 14 kB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393
  1. mindspore.ops
  2. =============
  3. .. include:: operations.rst
  4. functional
  5. -----------
  6. functional算子是经过初始化后的Primitive,可以直接作为函数使用。functional算子的使用示例如下:
  7. .. code-block:: python
  8. from mindspore import Tensor, ops
  9. from mindspore import dtype as mstype
  10. input_x = Tensor(-1, mstype.int32)
  11. input_dict = {'x':1, 'y':2}
  12. result_abs = ops.absolute(input_x)
  13. print(result_abs)
  14. result_in_dict = ops.in_dict('x', input_dict)
  15. print(result_in_dict)
  16. result_not_in_dict = ops.not_in_dict('x', input_dict)
  17. print(result_not_in_dict)
  18. result_isconstant = ops.isconstant(input_x)
  19. print(result_isconstant)
  20. result_typeof = ops.typeof(input_x)
  21. print(result_typeof)
  22. # outputs:
  23. # 1
  24. # True
  25. # False
  26. # True
  27. # Tensor[Int32]
  28. .. list-table::
  29. :widths: 50 50
  30. :header-rows: 1
  31. * - functional
  32. - Description
  33. * - mindspore.ops.absolute
  34. - Refer to :class:`mindspore.ops.Abs`.
  35. * - mindspore.ops.acos
  36. - Refer to :class:`mindspore.ops.ACos`.
  37. * - mindspore.ops.acosh
  38. - Refer to :class:`mindspore.ops.Acosh`.
  39. * - mindspore.ops.add
  40. - Refer to :class:`mindspore.ops.Add`.
  41. * - mindspore.ops.addn
  42. - Refer to :class:`mindspore.ops.AddN`.
  43. * - mindspore.ops.asin
  44. - Refer to :class:`mindspore.ops.Asin`.
  45. * - mindspore.ops.asinh
  46. - Refer to :class:`mindspore.ops.Asinh`.
  47. * - mindspore.ops.assign
  48. - Refer to :class:`mindspore.ops.Assign`.
  49. * - mindspore.ops.assign_add
  50. - Refer to :class:`mindspore.ops.AssignAdd`.
  51. * - mindspore.ops.assign_sub
  52. - Refer to :class:`mindspore.ops.AssignSub`.
  53. * - mindspore.ops.atan
  54. - Refer to :class:`mindspore.ops.Atan`.
  55. * - mindspore.ops.atan2
  56. - Refer to :class:`mindspore.ops.Atan2`.
  57. * - mindspore.ops.atanh
  58. - Refer to :class:`mindspore.ops.Atanh`.
  59. * - mindspore.ops.bitwise_and
  60. - Refer to :class:`mindspore.ops.BitwiseAnd`.
  61. * - mindspore.ops.bitwise_or
  62. - Refer to :class:`mindspore.ops.BitwiseOr`.
  63. * - mindspore.ops.bitwise_xor
  64. - Refer to :class:`mindspore.ops.BitwiseXor`.
  65. * - mindspore.ops.bool_and
  66. - Calculate the result of logical AND operation. (Usage is the same as "and" in Python)
  67. * - mindspore.ops.bool_eq
  68. - Determine whether the Boolean values are equal. (Usage is the same as "==" in Python)
  69. * - mindspore.ops.bool_not
  70. - Calculate the result of logical NOT operation. (Usage is the same as "not" in Python)
  71. * - mindspore.ops.bool_or
  72. - Calculate the result of logical OR operation. (Usage is the same as "or" in Python)
  73. * - mindspore.ops.cast
  74. - Refer to :class:`mindspore.ops.Cast`.
  75. * - mindspore.ops.check_bprop
  76. - Refer to :class:`mindspore.ops.CheckBprop`.
  77. * - mindspore.ops.cos
  78. - Refer to :class:`mindspore.ops.Cos`.
  79. * - mindspore.ops.cosh
  80. - Refer to :class:`mindspore.ops.Cosh`.
  81. * - mindspore.ops.cumprod
  82. - Refer to :class:`mindspore.ops.CumProd`.
  83. * - mindspore.ops.cumsum
  84. - Refer to :class:`mindspore.ops.CumSum`.
  85. * - mindspore.ops.div
  86. - Refer to :class:`mindspore.ops.RealDiv`.
  87. * - mindspore.ops.depend
  88. - Refer to :class:`mindspore.ops.Depend`.
  89. * - mindspore.ops.dtype
  90. - Refer to :class:`mindspore.ops.DType`.
  91. * - mindspore.ops.erf
  92. - Refer to :class:`mindspore.ops.Erf`.
  93. * - mindspore.ops.erfc
  94. - Refer to :class:`mindspore.ops.Erfc`.
  95. * - mindspore.ops.eye
  96. - Refer to :class:`mindspore.ops.Eye`.
  97. * - mindspore.ops.equal
  98. - Refer to :class:`mindspore.ops.Equal`.
  99. * - mindspore.ops.expand_dims
  100. - Refer to :class:`mindspore.ops.ExpandDims`.
  101. * - mindspore.ops.exp
  102. - Refer to :class:`mindspore.ops.Exp`.
  103. * - mindspore.ops.fill
  104. - Refer to :class:`mindspore.ops.Fill`.
  105. * - mindspore.ops.floor
  106. - Refer to :class:`mindspore.ops.Floor`.
  107. * - mindspore.ops.floordiv
  108. - Refer to :class:`mindspore.ops.FloorDiv`.
  109. * - mindspore.ops.floormod
  110. - Refer to :class:`mindspore.ops.FloorMod`.
  111. * - mindspore.ops.gather
  112. - Refer to :class:`mindspore.ops.Gather`.
  113. * - mindspore.ops.gather_d
  114. - Refer to :class:`mindspore.ops.GatherD`.
  115. * - mindspore.ops.gather_nd
  116. - Refer to :class:`mindspore.ops.GatherNd`.
  117. * - mindspore.ops.ge
  118. - Refer to :class:`mindspore.ops.GreaterEqual`.
  119. * - mindspore.ops.gt
  120. - Refer to :class:`mindspore.ops.Greater`.
  121. * - mindspore.ops.invert
  122. - Refer to :class:`mindspore.ops.Invert`.
  123. * - mindspore.ops.in_dict
  124. - Determine if a str in dict.
  125. * - mindspore.ops.is_not
  126. - Determine whether the input is not the same as the other one. (Usage is the same as "is not" in Python)
  127. * - mindspore.ops.is\_
  128. - Determine whether the input is the same as the other one. (Usage is the same as "is" in Python)
  129. * - mindspore.ops.isconstant
  130. - Determine whether the object is constant.
  131. * - mindspore.ops.isfinite
  132. - Refer to :class:`mindspore.ops.IsFinite`.
  133. * - mindspore.ops.isinstance\_
  134. - Refer to :class:`mindspore.ops.IsInstance`.
  135. * - mindspore.ops.isnan
  136. - Refer to :class:`mindspore.ops.IsNan`.
  137. * - mindspore.ops.issubclass\_
  138. - Refer to :class:`mindspore.ops.IsSubClass`.
  139. * - mindspore.ops.log
  140. - Refer to :class:`mindspore.ops.Log`.
  141. * - mindspore.ops.logical_and
  142. - Refer to :class:`mindspore.ops.LogicalAnd`.
  143. * - mindspore.ops.le
  144. - Refer to :class:`mindspore.ops.LessEqual`.
  145. * - mindspore.ops.less
  146. - Refer to :class:`mindspore.ops.Less`.
  147. * - mindspore.ops.logical_and
  148. - Refer to :class:`mindspore.ops.LogicalAnd`.
  149. * - mindspore.ops.logical_not
  150. - Refer to :class:`mindspore.ops.LogicalNot`.
  151. * - mindspore.ops.logical_or
  152. - Refer to :class:`mindspore.ops.LogicalOr`.
  153. * - mindspore.ops.maximum
  154. - Refer to :class:`mindspore.ops.Maximum`.
  155. * - mindspore.ops.minimum
  156. - Refer to :class:`mindspore.ops.Minimum`.
  157. * - mindspore.ops.mul
  158. - Refer to :class:`mindspore.ops.Mul`.
  159. * - mindspore.ops.neg_tensor
  160. - Refer to :class:`mindspore.ops.Neg`.
  161. * - mindspore.ops.not_equal
  162. - Refer to :class:`mindspore.ops.NotEqual`.
  163. * - mindspore.ops.not_in_dict
  164. - Determine whether the object is not in the dict.
  165. * - mindspore.ops.ones_like
  166. - Refer to :class:`mindspore.ops.OnesLike`.
  167. * - mindspore.ops.partial
  168. - Refer to :class:`mindspore.ops.Partial`.
  169. * - mindspore.ops.pows
  170. - Refer to :class:`mindspore.ops.Pow`.
  171. * - mindspore.ops.print\_
  172. - Refer to :class:`mindspore.ops.Print`.
  173. * - mindspore.ops.rank
  174. - Refer to :class:`mindspore.ops.Rank`.
  175. * - mindspore.ops.reduce_max
  176. - Refer to :class:`mindspore.ops.ReduceMax`.
  177. * - mindspore.ops.reduce_mean
  178. - Refer to :class:`mindspore.ops.ReduceMean`.
  179. * - mindspore.ops.reduce_min
  180. - Refer to :class:`mindspore.ops.ReduceMin`.
  181. * - mindspore.ops.reduce_prod
  182. - Refer to :class:`mindspore.ops.ReduceProd`.
  183. * - mindspore.ops.reduce_sum
  184. - Refer to :class:`mindspore.ops.ReduceSum`.
  185. * - mindspore.ops.reshape
  186. - Refer to :class:`mindspore.ops.Reshape`.
  187. * - mindspore.ops.same_type_shape
  188. - Refer to :class:`mindspore.ops.SameTypeShape`.
  189. * - mindspore.ops.scalar_add
  190. - Get the sum of two numbers. (Usage is the same as "+" in Python)
  191. * - mindspore.ops.scalar_cast
  192. - Refer to :class:`mindspore.ops.ScalarCast`.
  193. * - mindspore.ops.scalar_div
  194. - Get the quotient of dividing the first input number by the second input number. (Usage is the same as "/" in Python)
  195. * - mindspore.ops.scalar_eq
  196. - Determine whether two numbers are equal. (Usage is the same as "==" in Python)
  197. * - mindspore.ops.scalar_floordiv
  198. - Divide the first input number by the second input number and round down to the closest integer. (Usage is the same as "//" in Python)
  199. * - mindspore.ops.scalar_ge
  200. - Determine whether the number is greater than or equal to another number. (Usage is the same as ">=" in Python)
  201. * - mindspore.ops.scalar_gt
  202. - Determine whether the number is greater than another number. (Usage is the same as ">" in Python)
  203. * - mindspore.ops.scalar_le
  204. - Determine whether the number is less than or equal to another number. (Usage is the same as "<=" in Python)
  205. * - mindspore.ops.scalar_log
  206. - Get the natural logarithm of the input number.
  207. * - mindspore.ops.scalar_lt
  208. - Determine whether the number is less than another number. (Usage is the same as "<" in Python)
  209. * - mindspore.ops.scalar_mod
  210. - Get the remainder of dividing the first input number by the second input number. (Usage is the same as "%" in Python)
  211. * - mindspore.ops.scalar_mul
  212. - Get the product of the input two numbers. (Usage is the same as "*" in Python)
  213. * - mindspore.ops.scalar_ne
  214. - Determine whether two numbers are not equal. (Usage is the same as "!=" in Python)
  215. * - mindspore.ops.scalar_pow
  216. - Compute a number to the power of the second input number.
  217. * - mindspore.ops.scalar_sub
  218. - Subtract the second input number from the first input number. (Usage is the same as "-" in Python)
  219. * - mindspore.ops.scalar_to_array
  220. - Refer to :class:`mindspore.ops.ScalarToArray`.
  221. * - mindspore.ops.scalar_to_tensor
  222. - Refer to :class:`mindspore.ops.ScalarToTensor`.
  223. * - mindspore.ops.scalar_uadd
  224. - Get the positive value of the input number.
  225. * - mindspore.ops.scalar_usub
  226. - Get the negative value of the input number.
  227. * - mindspore.ops.scatter_nd
  228. - Refer to :class:`mindspore.ops.ScatterNd`.
  229. * - mindspore.ops.scatter_nd_update
  230. - Refer to :class:`mindspore.ops.ScatterNdUpdate`.
  231. * - mindspore.ops.scatter_update
  232. - Refer to :class:`mindspore.ops.ScatterUpdate`.
  233. * - mindspore.ops.shape
  234. - Refer to :class:`mindspore.ops.Shape`.
  235. * - mindspore.ops.shape_mul
  236. - The input of shape_mul must be shape multiply elements in tuple(shape).
  237. * - mindspore.ops.sin
  238. - Refer to :class:`mindspore.ops.Sin`.
  239. * - mindspore.ops.sinh
  240. - Refer to :class:`mindspore.ops.Sinh`.
  241. * - mindspore.ops.size
  242. - Refer to :class:`mindspore.ops.Size`.
  243. * - mindspore.ops.sort
  244. - Refer to :class:`mindspore.ops.Sort`.
  245. * - mindspore.ops.sqrt
  246. - Refer to :class:`mindspore.ops.Sqrt`.
  247. * - mindspore.ops.square
  248. - Refer to :class:`mindspore.ops.Square`.
  249. * - mindspore.ops.squeeze
  250. - Refer to :class:`mindspore.ops.Squeeze`.
  251. * - mindspore.ops.stack
  252. - Refer to :class:`mindspore.ops.Stack`.
  253. * - mindspore.ops.stop_gradient
  254. - Disable update during back propagation. (`stop_gradient <https://www.mindspore.cn/tutorials/en/master/autograd.html#stop-gradient>`_)
  255. * - mindspore.ops.strided_slice
  256. - Refer to :class:`mindspore.ops.StridedSlice`.
  257. * - mindspore.ops.string_concat
  258. - Concatenate two strings.
  259. * - mindspore.ops.string_eq
  260. - Determine if two strings are equal.
  261. * - mindspore.ops.sub
  262. - Refer to :class:`mindspore.ops.Sub`.
  263. * - mindspore.ops.tan
  264. - Refer to :class:`mindspore.ops.Tan`.
  265. * - mindspore.ops.tanh
  266. - Refer to :class:`mindspore.ops.Tanh`.
  267. * - mindspore.ops.tensor_add
  268. - Refer to :class:`mindspore.ops.Add`.
  269. * - mindspore.ops.tensor_div
  270. - Refer to :class:`mindspore.ops.RealDiv`.
  271. * - mindspore.ops.tensor_exp
  272. - Refer to :class:`mindspore.ops.Exp`.
  273. * - mindspore.ops.tensor_expm1
  274. - Refer to :class:`mindspore.ops.Expm1`.
  275. * - mindspore.ops.tensor_floordiv
  276. - Refer to :class:`mindspore.ops.FloorDiv`.
  277. * - mindspore.ops.tensor_ge
  278. - Refer to :class:`mindspore.ops.GreaterEqual`.
  279. * - mindspore.ops.tensor_gt
  280. - Refer to :class:`mindspore.ops.Greater`.
  281. * - mindspore.ops.tensor_le
  282. - Refer to :class:`mindspore.ops.LessEqual`.
  283. * - mindspore.ops.tensor_lt
  284. - Refer to :class:`mindspore.ops.Less`.
  285. * - mindspore.ops.tensor_mod
  286. - Refer to :class:`mindspore.ops.FloorMod`.
  287. * - mindspore.ops.tensor_mul
  288. - Refer to :class:`mindspore.ops.Mul`.
  289. * - mindspore.ops.tensor_pow
  290. - Refer to :class:`mindspore.ops.Pow`.
  291. * - mindspore.ops.tensor_scatter_add
  292. - Refer to :class:`mindspore.ops.TensorScatterAdd`.
  293. * - mindspore.ops.tensor_scatter_update
  294. - Refer to :class:`mindspore.ops.TensorScatterUpdate`.
  295. * - mindspore.ops.tensor_slice
  296. - Refer to :class:`mindspore.ops.Slice`.
  297. * - mindspore.ops.tensor_sub
  298. - Refer to :class:`mindspore.ops.Sub`.
  299. * - mindspore.ops.tile
  300. - Refer to :class:`mindspore.ops.Tile`.
  301. * - mindspore.ops.transpose
  302. - Refer to :class:`mindspore.ops.Transpose`.
  303. * - mindspore.ops.tuple_to_array
  304. - Refer to :class:`mindspore.ops.TupleToArray`.
  305. * - mindspore.ops.typeof
  306. - Get type of object.
  307. * - mindspore.ops.zeros_like
  308. - Refer to :class:`mindspore.ops.ZerosLike`.
  309. .. mscnplatformautosummary::
  310. :toctree: ops
  311. :nosignatures:
  312. :template: classtemplate.rst
  313. mindspore.ops.batch_dot
  314. mindspore.ops.clip_by_global_norm
  315. mindspore.ops.clip_by_value
  316. mindspore.ops.core
  317. mindspore.ops.count_nonzero
  318. mindspore.ops.cummin
  319. mindspore.ops.dot
  320. mindspore.ops.gamma
  321. mindspore.ops.grad
  322. mindspore.ops.GradOperation
  323. mindspore.ops.HyperMap
  324. mindspore.ops.jvp
  325. mindspore.ops.laplace
  326. mindspore.ops.Map
  327. mindspore.ops.matmul
  328. mindspore.ops.multinomial
  329. mindspore.ops.MultitypeFuncGraph
  330. mindspore.ops.narrow
  331. mindspore.ops.normal
  332. mindspore.ops.poisson
  333. mindspore.ops.repeat_elements
  334. mindspore.ops.select
  335. mindspore.ops.sequence_mask
  336. mindspore.ops.tensor_dot
  337. mindspore.ops.uniform
  338. mindspore.ops.vjp
  339. 原语
  340. -----
  341. .. mscnautosummary::
  342. :toctree: ops
  343. :nosignatures:
  344. :template: classtemplate.rst
  345. mindspore.ops.constexpr
  346. mindspore.ops.prim_attr_register
  347. mindspore.ops.Primitive
  348. mindspore.ops.PrimitiveWithCheck
  349. mindspore.ops.PrimitiveWithInfer
  350. 函数实现注册
  351. ----------------
  352. .. mscnautosummary::
  353. :toctree: ops
  354. :nosignatures:
  355. :template: classtemplate.rst
  356. mindspore.ops.get_vm_impl_fn
  357. 算子信息注册
  358. ----------------
  359. .. mscnautosummary::
  360. :toctree: ops
  361. :nosignatures:
  362. :template: classtemplate.rst
  363. mindspore.ops.AiCPURegOp
  364. mindspore.ops.custom_info_register
  365. mindspore.ops.CustomRegOp
  366. mindspore.ops.DataType
  367. mindspore.ops.op_info_register
  368. mindspore.ops.TBERegOp