yuqs
yuqs
## 项目介绍 Swin-Transformer V2 [Liu et al.2021] 是微软对原有 Swin-Transformer 的继续深入研究。原有的 Swin-Transformer 通过引入图像自身的先验知识(shift 窗口来实现)在图像分类,目标检测,语义分割上取得了良好的性能。然而由于一系列问题: 大模型训练产生的激活阈值过大,下游任务的分辨率太大而预训练的分辨率太低导致相对位置编码损害了性能,以及预训练需要大量标记数据的问题。作者分别采用将 Layernorm 移动至 MLP 以及 Attention 的后方,采用 log-spaced 的元网络生成,利用 SimMIM 来辅助训练解决了上述问题。最后设计了一个具备 3 亿参数量的模型在众多数据集上取得了极为优异的性能。本课题的目标便是通过 Libai 复现网络,并且能够拓展模型,支持各种并行形式的训练。并在 ImageNet-21k, ImageNet-1k...
问题来自于该commit: - https://github.com/Oneflow-Inc/oneflow/commit/5409a531b43a26dac43dcca2b73f88d8a95fb068 里面只有一句代码可能导致这个问题:  具体排查细节查看以下连接: - https://github.com/Oneflow-Inc/libai/discussions/366#discussioncomment-3554950 在现在nightly版本的oneflow,这句话已经不在这个文件里面了,而在 https://github.com/Oneflow-Inc/oneflow/blob/4338d962b88d82707955e0a9068f8bc7923e3724/python/oneflow/nn/init.py 中:  **当然,问题很可能不止这一个pr导致的,根据绘图感觉是多个pr共同作用的结果,但这个pr是第一个导致问题的** **因为涉及到随机数,也导致了无法通过精度对齐来找到对应的问题了,所以只能靠这种二分来找**
这个算子太重要了,实现smoothing损失可能会用到(虽然libai中用了另一种方式替代),以及一系列涉及3D视觉的操作非常需要,可以的话可能需要尽快添加 同时这个和之前那个flow.cumprod对我项目产生了影响,因为我如果要优雅地实现cumprod那就需要scatter,如果没有scatter我只能不优雅地去实现了 ```python import oneflow as flow import torch a = torch.randn(1, 10) c = torch.randn(1, 10) b = torch.randint(9, (1, 3)).long() a.scatter_(1, b, c) print(a) """ libibverbs not available,...
这是一个非常神奇的问题,因为这个问题困扰了我2天,出现这个问题的原因是这次数据集的准备和以往不同,由于拼接nerf光线的原因,导致必须采用flow.cat进行数据集的拼接。 首先是oneflow的代码: ```python import oneflow as flow import oneflow.nn as nn A=[] for i in range(160000): A.append(flow.ones(100,11)*2) print(i) A = flow.cat(A,0) print(A.shape) A = flow.split(A,1,0) """ oneflow.Size([16000000, 11]) """ ```...
1. 第一个认为可以扩展的地方是验证器的输入无法简单地从模型输出获得,因为在libai中,默认所有的计算是在模型中计算完毕。但我在复现Nerf时存在需要每个epoch中batch的索引,这个需求模型无法完成,经过chengpeng老师的指导,我将代码转移到了Evaluator中,并继承之。但是模型的输出需要通过libai/evaluation/evaluator.py中210行开始的检查,因此无法轻易通过,只能像NeRF项目中采用projects/NeRF/modeling/System.py中411行开始到416行结束的形式,以及projects/NeRF/evaluation/nerf_evaluator.py中38行开始到44行结束的形式通过冗余代码来实现。 2. 第二个认为可以扩展的地方是可以借鉴openmmlab采用装饰器的形式,毕竟以后的项目肯定不可能都是公司的人来实现,用户也会为了自己需求进行扩展。这样的话,可以通过装饰器来将相应的模型,数据加载器,验证器加入其中并实现轻易地扩展。
Hello! I‘m glad that you open the implementation of "DragDiffusion". However, the function "step" in "dragdiffusion.py" is empty, so the procedure cannot run correctly and I cannot use it to...
Thank you very much for your contribution to implementing VideoCrafterV2 in Diffusers. I would like to ask if this paper was accepted at NeurIPS. If so, I think I can...