Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

官方文档相比于TensorFlow和PyTorch过于简单,很多API的描述没有写明参数之间的约束 #587

Open
PhyllisJi opened this issue Sep 6, 2024 · 0 comments

Comments

@PhyllisJi
Copy link

下列API的实现代码中都包含许多断言,作者应该仿照PyTorch和TensorFlow的做法,把对应断言的约束在文档中写清楚,这更有利于初学者去调试代码

jittor.nn.ReflectionPad2d等一系列和Pad相关的API

AssertionError: padding_left and padding_right should be smaller than input width
AssertionError: padding_top and padding_bottom should be smaller than input height

jittor.nn.PixelShuffle

AssertionError: input channel needs to be divided by upscale_factor's square in PixelShuffle

jittor.nn.Conv2d等一系列卷积API

AssertionError: out_channels must be divisible by groups
AssertionError: in_channels must be divisible by groups

jittor.nn.ConvTranspose等一系列API

AssertionError: output padding must be smaller than max(stride, dilation)

jittor.nn.GroupNorm

    assert C % self.num_groups == 0
Traceback (most recent call last):
  File "/home/moco_jt2/test.py", line 47, in <module>
    print(go())
  File "/home/moco_jt2/test.py", line 40, in go
    y = m(x)
  File "/root/miniconda3/envs/myconda/lib/python3.9/site-packages/jittor/__init__.py", line 1168, in __call__
    return self.execute(*args, **kw)
  File "/home/moco_jt2/test.py", line 30, in execute
    x = self.layer8_mutated(x)
  File "/root/miniconda3/envs/myconda/lib/python3.9/site-packages/jittor/__init__.py", line 1168, in __call__
    return self.execute(*args, **kw)
  File "/root/miniconda3/envs/myconda/lib/python3.9/site-packages/jittor/nn.py", line 817, in execute
    x = x.reshape((N, self.num_groups, C//self.num_groups, -1))
  File "/root/miniconda3/envs/myconda/lib/python3.9/site-packages/jittor/__init__.py", line 644, in reshape
    return origin_reshape(x, shape)
RuntimeError: Wrong inputs arguments, Please refer to examples(help(jt.ops.reshape)).

Types of your inputs are:
 self   = module,
 args   = (Var, tuple, ),

The function declarations are:
 VarHolder* reshape(VarHolder* x,  NanoVector shape)

Failed reason:[f 0829 07:07:34.156075 04 reshape_op.cc:50] Check failed: y_items != 0 && x_items % y_items == 0  reshape shape is invalid for input of size  618496
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant