国产精品久久国产精麻豆99网站,激烈18禁高潮视频免费,老师含紧一点h边做边走视频动漫,双乳被一左一右的吸着

小型深度學習框架 – TinyGrad,不到1K行代碼(附代碼下載)

歡迎關注“

計算機視覺研究院

小型深度學習框架 - TinyGrad,不到1K行代碼(附代碼下載)

計算機視覺研究院專欄

作者:Edison_G

最近,天才黑客 George Hotz 開源了一個小型深度學習框架 tinygrad,兼具 PyTorch 和 micrograd 的功能。tinygrad 的代碼數量不到 1000 行,目前該項目獲得了 GitHub 1400 星。

小型深度學習框架 - TinyGrad,不到1K行代碼(附代碼下載)

在深度學習時代,谷歌、Facebook、百度等科技巨頭開源了多款框架來幫助開發(fā)者更輕松地學習、構建和訓練不同類型的神經網絡。而這些大公司也花費了很大的精力來維護 TensorFlow、PyTorch 這樣龐大的深度學習框架。除了這類主流框架之外,開發(fā)者們也會開源一些小而精的框架或者庫。比如今年 4 月份,特斯拉人工智能部門主管 Andrej Karpathy 開源了其編寫的微型 autograd 引擎 micrograd,該引擎還用 50 行代碼實現了一個類 PyTorch api 的神經網絡庫。目前,micrograd 項目的 GitHub star 量達到 1200 星。不久前,天才黑客 George Hotz(喬治 · 霍茲)開源了一個小型 Autograd Tensor 庫 tinygrad,它介于 PyTorch 和 micrograd 之間,能夠滿足做深度學習的大部分要求。上線不到一個月,該項目在 GitHub 上已經獲得 1400 星。

根據 GitHub 內容,下文對 tinygrad 的安裝與使用做了簡要介紹。感興趣的同學也可通過 George Hotz 的 YouTube 視頻進行學習。

小型深度學習框架 - TinyGrad,不到1K行代碼(附代碼下載)

視頻地址:https://www.youtube.com/channel/UCwgKmJM4ZJQRJ-U5NjvR2dg

tinygrad 的安裝與使用

「tinygrad 可能不是最好的深度學習框架,但它確實是深度學習框架。」

George 在項目中保證,tinygrad 代碼量會永遠小于 1000 行。

安裝

tinygrad 的安裝過程非常簡單,只需使用以下命令:

pip3 install tinygrad --upgrade

示例

安裝好 tinygrad 之后,就可以進行示例運行,代碼如下:

from tinygrad.tensor import Tensor
x = Tensor.eye(3)y = Tensor([[2.0,0,-2.0]])z = y.matmul(x).sumz.backward
print(x.grad) # dz/dxprint(y.grad) # dz/dy

使用 torch 的代碼如下:

import torch
x = torch.eye(3, requires_grad=True)y = torch.tensor([[2.0,0,-2.0]], requires_grad=True)z = y.matmul(x).sumz.backward
print(x.grad) # dz/dxprint(y.grad) # dz/dy

滿足對神經網絡的需求

一個不錯的autograd張量庫可以滿足你對神經網絡 90%的需求。從 tinygrad.optim 添加優(yōu)化器(SGD、RMSprop、Adam),再編寫一些 minibatching 樣板代碼,就可以實現你的需求。

示例如下:

from tinygrad.tensor import Tensorimport tinygrad.optim as optimfrom tinygrad.utils import layer_init_uniform
class TinyBobNet: def __init__(self): self.l1 = Tensor(layer_init_uniform(784, 128)) self.l2 = Tensor(layer_init_uniform(128, 10))
def forward(self, x): return x.dot(self.l1).relu.dot(self.l2).logsoftmax
model = TinyBobNetoptim = optim.SGD([model.l1, model.l2], lr=0.001)
# ... and complete like pytorch, with (x,y) data
out = model.forward(x)loss = out.mul(y).meanloss.backwardoptim.step

支持 GPU

tinygrad 通過 PyOpenCL 支持 GPU。但后向傳播暫時無法支持所有 ops。

from tinygrad.tensor import Tensor(Tensor.ones(4,4).cuda Tensor.ones(4,4).cuda).cpu

ImageNet inference

「麻雀雖小,五臟俱全?!箃inygrad 還能夠支持 full EfficientNet,輸入一張圖像,即可得到其類別。

ipython3 examples/efficientnet.py https://upload.wikimedia.org/wikipedia/commons/4/41/Chicken.jpg

如果你安裝了 webcam 和 cv2,則可以使用以下代碼:

ipython3 examples/efficientnet.py webcam

注意:如果你想加速運行,設置 GPU=1。

測試

運行以下代碼可執(zhí)行測試:

python -m pytest

此外,喬治 · 霍茲還計劃添加語言模型、檢測模型,進一步減少代碼量、提升速度等。

TODO

  • Train an EfficientNet on ImageNet

    • Make broadcasting work on the backward pass (simple please)

    • EfficientNet backward pass

    • Tensors on GPU (a few more backward)

  • Add a language model. BERT?

  • Add a detection model. EfficientDet?

  • Reduce code

  • Increase speed

  • Add features

/End.

如果想加入我們“計算機視覺研究院”,請掃二維碼加入我們。我們會按照你的需求將你拉入對應的學習群!

計算機視覺研究院主要涉及深度學習領域,主要致力于人臉檢測、人臉識別,多目標檢測、目標跟蹤、圖像分割等研究方向。研究院接下來會不斷分享最新的論文算法新框架,我們這次改革不同點就是,我們要著重”研究“。之后我們會針對相應領域分享實踐過程,讓大家真正體會擺脫理論的真實場景,培養(yǎng)愛動手編程愛動腦思考的習慣!

后臺回復“TinyGrad”

小型深度學習框架 - TinyGrad,不到1K行代碼(附代碼下載)

計算機視覺研究院

版權聲明:本文內容由互聯網用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發(fā)現本站有涉嫌抄襲侵權/違法違規(guī)的內容, 請發(fā)送郵件至 舉報,一經查實,本站將立刻刪除。

末成年女a片一区二区 | 亚洲综合AV一区二区三区不卡| 最近免费中文字幕中文高清6| 亚洲乱亚洲乱妇24p| 人人人妻人人澡人人爽欧美一区| 精品国产18久久久久久| 麻豆精品无码国产在线果冻| 丰满大码的熟女在线视频| 999久久久免费精品国产| 在熟睡夫面前侵犯我在线播放| 免费人成视频x8x8入口观看大| 男人激烈吮乳吃奶动态图| 粗了大了 整进去好爽视频| 中文无码熟妇人妻av在线| 被男朋友摸下面流了很多血| 被拉到野外强要好爽| 老根嫩草1一40淑媛全文| 亚洲日韩国产精品乱-久| 国产成人亚洲精品狼色在线 | 亚洲乱码av中文一区二区| 九九精品99久久久香蕉| 玩弄japan白嫩少妇hd小说 | 国产SUV精品一区二区88L | 日韩av无码免费播放| 久久人人爽人人爽人人AV东京热| 国产av一区二区三区最新精品| 日韩乱码人妻无码中文字幕久久| chinese中年熟妇free| 久久午夜无码鲁丝片| 老头边吃奶边弄进去呻吟| 国产SUV精品一区二区五| 少妇无码一区二区三区免费| 国内精品久久久久久久影视麻豆| 久久久久亚洲av无码观看| 老师露出两个奶球让我吃奶头| 岳女四人共侍一夫婷婷| 亚洲AV无码国产精品久久久不卡| 最近日本MV字幕免费观看| 精品国产av 无码一区二区三区| 久热中文字幕无码视频| 久久精品AⅤ无码中文字字 |