tinygrad 轻量级深度学习框架开源项目

我要开发同款
匿名用户2023年05月12日
254阅读

技术信息

开源地址
https://github.com/geohot/tinygrad
授权协议
MIT

作品详情

tiygrad 是一个轻量级深度学习框架,它的目标是成为最容易添加新加速器的框架,同时支持推理和训练。

tiygrad 支持简单的基本操作,包含SOTA 视觉 models/efficietet.py和 语言模型 models/trasformer.py。

tiygrad  正在努力支持 accel/ 文件夹中的AppleNeuralEgie和GoogleTPU。最终将为tiygrad构建定制硬件,以达到终极目标:极速推理/训练框架。(但现在它还很慢)

安装gitcloehttps://github.com/geohot/tiygrad.gitcdtiygradpytho3-mpipistall-e.例子fromtiygrad.tesorimportTesorx=Tesor.eye(3,requires_grad=True)y=Tesor([[2.0,0,-2.0]],requires_grad=True)z=y.matmul(x).sum()z.backward()prit(x.grad.umpy())#dz/dxprit(y.grad.umpy())#dz/dytorch中的相同示例importtorchx=torch.eye(3,requires_grad=True)y=torch.tesor([[2.0,0,-2.0]],requires_grad=True)z=y.matmul(x).sum()z.backward()prit(x.grad)#dz/dxprit(y.grad)#dz/dy神经网络示例(来自test/models/test_mist.py)fromtiygrad.tesorimportTesorimporttiygrad..optimasoptimclassTiyBobNet:def__iit__(self):self.l1=Tesor.uiform(784,128)self.l2=Tesor.uiform(128,10)defforward(self,x):returx.dot(self.l1).relu().dot(self.l2).log_softmax()model=TiyBobNet()optim=optim.SGD([model.l1,model.l2],lr=0.001)#...adcompletelikepytorch,with(x,y)dataout=model.forward(x)loss=out.mul(y).mea()optim.zero_grad()loss.backward()optim.step()GPU和加速器支持tiygrad通过PyOpeCL支持GPU。

fromtiygrad.tesorimportTesor(Tesor.oes(4,4).gpu()+Tesor.oes(4,4).gpu()).cpu()

功能介绍

tinygrad 是一个轻量级深度学习框架,它的目标是成为最容易添加新加速器的框架,同时支持推理和训练。 tinygrad 支持简单的基本操作,包含 SOTA 视觉 models/efficie...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论