在您的Ignite训练中逐步增加Fastai优点
 

我们将使用Ignite示例目录(截至2020年8月)中的MNIST培训代码,并将其转换为模块。

from migrating_ignite import *

from 法泰.vision.all import *

要在fastai中使用它,我们首先将DataLoader从模块中拉到 数据加载器s 目的:

data = 数据加载器s(*get_data_loaders(64, 128)).cuda()

我们现在可以创建一个 学习者 适合:

opt_func = partial(SGD, momentum=0.5)
learn = 学习者(data, Net(), loss_func=nn.NLLLoss(), opt_func=opt_func, metrics=准确性)
learn.fit_one_cycle(1, 0.01)
时代 train_loss 有效损失 准确性 时间
0 0.999266 0.597913 0.856200 00:22

As you can see, migrating from 点燃 allowed us to replace 52 lines of code (in run()) with just 3 lines, and doesn't require you to change any of your existing data pipelines, optimizers, loss functions, models, etc. Once you've made this change, you can then benefit from 法泰's rich set of callbacks, transforms, visualizations, and so forth.

请注意,fastai与Ignite有很大的不同,它不仅仅是一个训练循环(尽管在此示例中我们仅使用训练循环)-它是一个完整的框架,包括GPU加速的转换,端到端终端推理,视觉,文本,表格和协作过滤等集成应用程序。您可以单独使用框架的任何部分,也可以将它们组合在一起,如 法纸.