提斯训练Pythorch模型更快。。。

tez的Python项目详细描述


提兹:火车Pythorch型号Fasterrrr

注意:目前,我们不接受任何请求!所有PRs将关闭。如果你想要某个功能或某个功能不工作,请创建一个问题。在

tez(त2375; 2395;/تیز)的意思是锐利、快速和活跃。这是一个简单的,重点,图书馆,使你的Pythorch培训容易。在

注意:此库目前处于非常早期的阶段!所以,可能会有突破性的变化。在

关于tez的想法很简单:

  • 把事情尽可能简单
  • 让它尽可能的可定制
  • 清洁代码
  • 更快的原型设计
  • 生产准备就绪

目前,tez支持cpu和gpu的培训。更多的很快就要来了!在

使用tez是非常容易的。我们不想让你远离派托克。所以,你什么事都是自己做的,只是用特克斯来简化一些事情。在

使用Tez进行培训:

  • 要训练模型,请定义数据集和模型。dataset类与编写Pythorch模型时编写的旧类相同。在

  • 创建模型类。不是从nn.Module继承,而是导入tez并从tez.Model继承,如下例所示。在

classMyModel(tez.Model):def__init__(self):super().__init__()..# tell when to step the schedulerself.step_scheduler_after="batch"defmonitor_metrics(self,outputs,targets):iftargetsisNone:return{}outputs=torch.sigmoid(outputs).cpu().detach().numpy()>=0.5targets=targets.cpu().detach().numpy()accuracy=metrics.accuracy_score(targets,outputs)return{"accuracy":accuracy}deffetch_scheduler(self):# create your own schedulerdeffetch_optimizer(self):# create your own optimizerdefforward(self,ids,mask,token_type_ids,targets=None):_,o_2=self.bert(ids,attention_mask=mask,token_type_ids=token_type_ids)b_o=self.bert_drop(o_2)output=self.out(b_o)# calculate loss hereloss=nn.BCEWithLogitsLoss()(output,targets)# calculate the metric dictionary heremetric_dict=self.monitor_metrics(output,targets)returnoutput,loss,metric_dict

一切都是超直观的!在

  • 现在你可以训练你的模特了!在
^{pr2}$

您可以在examples/中检查示例

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JFrame中的Java多线程   java Servlet异常映射   java无法从输出流读取   swing Java带来的小程序GUI问题   java什么原因导致错误“'void'类型此处不允许”以及如何修复它?   Java选择器select(长)与selectNow的区别   java自定义arraylist<mygames>获得不同   java Icepdf注释让页面消失   java反向整数数组   java I在生成同步“无法解析配置的所有依赖项”时遇到此错误:app:debugRuntimeClasspath   多个虚拟机上的java线程访问单个DB实例上的表,有时会导致性能低下和异常   swing更改Java中的默认按钮,使其看起来“更好”   java慢速MQ主题订阅。并行化不能提高性能   java运行Boggle Solver需要一个多小时。我的代码怎么了?   数据库中的java循环与应用程序中的java循环   正则表达式匹配${123…456}并在Java中提取2个数字?   java如何制作我们软件的试用版   Java内存参数计算   从另一个类调用方法时出现java问题