我正在与伯特和图书馆https://huggingface.co/models拥抱脸工作。我想知道您将选择哪些可用的模型进行调试?
换句话说,在我的GPU上,哪种型号的列车/装载速度快,以便尽可能快地运行?阿尔伯特,蒸馏还是?
发布于 2020-06-10 12:01:50
我认为通常使用特定的模型进行调试是非常关键的,并且完全取决于您想要执行的调试类型。
具体来说,请考虑令牌化的方面:因为每个模型都有自己的BaseTokenizer
类派生。因此,只有在您也使用这个特定的令牌程序时,才会显示相应模型的任何细节;例如,您希望通过使用RoBERTa进行调试来调试(稍后的) DistilBert实现。罗伯塔的标记化在DistilBERT中是不一样的,在使用伯特的记号器中。同样,训练过程中的任何细节都可能会使训练完全搞砸。从传闻证据来看,我让模型与RoBERTa一起训练完成(和融合),而不是在BERT上,这使得使用不同模型进行“调试”的拟议解决方案成为一个潜在的危险替代。艾伯特同样具有不同于上述任何一种模型的性质,但类似地,上述方面仍然有效。
如果您想要对服务进行原型化,并且只需要一个介于两者之间的模型,我认为您所建议的这两个模型都会做得很好,而且根据模型参数的确切数量,加载/保存应该只是一个微小的差别。但是要记住,应用程序的推理时间也是值得考虑的。除非您绝对确信在执行时间上不会有任何明显的差异,否则至少要确保您也在使用完整的模型进行测试。
https://stackoverflow.com/questions/62302499
复制相似问题