add numeric type hierarchy and issubdtype as well as a set_dtype meth… (#427)

* add numeric type hierarchy and issubdtype as well as a set_dtype method to nn.Module with predicate

numeric type hierarchy and issubtype is compatible to the [numpy hierarchy](https://github.com/numpy/numpy/blob/220f0ab2c5958f9d49b9a28c69a760657b06d9b9/numpy/_core/numerictypes.py#L42).

Closes #285.

* nits in docs

* unify type category checking

* nits in docs

* nits in docs

* more docs nits

* fix callable type

---------

Co-authored-by: Awni Hannun <[email protected]>
This commit is contained in:
Daniel Strobusch
2024-03-25 12:32:59 -07:00
committed by GitHub
co-authored by Awni Hannun
parent bfb5bad4f0
commit 479051ce1c
26 changed files with 538 additions and 97 deletions
-2
View File
@@ -19,7 +19,6 @@ Array
array.ndim
array.shape
array.size
Dtype
array.abs
array.all
array.any
@@ -32,7 +31,6 @@ Array
array.cumsum
array.diag
array.diagonal
array.dtype
array.exp
array.flatten
array.log
+12 -2
View File
@@ -1,7 +1,5 @@
.. _data_types:
:orphan:
Data Types
==========
@@ -56,3 +54,15 @@ The default floating point type is ``float32`` and the default integer type is
* - ``complex64``
- 8
- 64-bit complex float
Data type are aranged in a hierarchy. See the :obj:`DtypeCategory` object
documentation for more information. Use :func:`issubdtype` to determine if one
``dtype`` (or category) is a subtype of another category.
.. autosummary::
:toctree: _autosummary
Dtype
DtypeCategory
issubdtype
+1
View File
@@ -30,6 +30,7 @@ Module
Module.named_modules
Module.parameters
Module.save_weights
Module.set_dtype
Module.train
Module.trainable_parameters
Module.unfreeze
+3 -3
View File
@@ -62,10 +62,10 @@ Operations
identity
inner
isclose
isnan
isposinf
isneginf
isinf
isnan
isneginf
isposinf
less
less_equal
linspace