0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

天才黑客George Hotz開源了一個(gè)小型深度學(xué)習(xí)框架tinygrad

人工智能與大數(shù)據(jù)技術(shù) ? 來源:人工智能與大數(shù)據(jù)技術(shù) ? 作者:人工智能與大數(shù)據(jù) ? 2020-12-16 09:36 ? 次閱讀

最近,天才黑客 George Hotz 開源了一個(gè)小型深度學(xué)習(xí)框架 tinygrad,兼具 PyTorch 和 micrograd 的功能。tinygrad 的代碼數(shù)量不到 1000 行,目前該項(xiàng)目獲得了 GitHub 1400 星。

在深度學(xué)習(xí)時(shí)代,谷歌、Facebook、百度等科技巨頭開源了多款框架來幫助開發(fā)者更輕松地學(xué)習(xí)、構(gòu)建和訓(xùn)練不同類型的神經(jīng)網(wǎng)絡(luò)。而這些大公司也花費(fèi)了很大的精力來維護(hù) TensorFlow、PyTorch 這樣龐大的深度學(xué)習(xí)框架。 除了這類主流框架之外,開發(fā)者們也會(huì)開源一些小而精的框架或者庫。

比如今年 4 月份,特斯拉人工智能部門主管 Andrej Karpathy 開源了其編寫的微型 autograd 引擎 micrograd,該引擎還用 50 行代碼實(shí)現(xiàn)了一個(gè)類 PyTorch api 的神經(jīng)網(wǎng)絡(luò)庫。目前,micrograd 項(xiàng)目的 GitHub star 量達(dá)到 1200 星。 不久前,天才黑客 George Hotz(喬治 · 霍茲)開源了一個(gè)小型 Autograd Tensor 庫 tinygrad,它介于 PyTorch 和 micrograd 之間,能夠滿足做深度學(xué)習(xí)的大部分要求。上線不到一個(gè)月,該項(xiàng)目在 GitHub 上已經(jīng)獲得 1400 星。

項(xiàng)目地址:https://github.com/geohot/tinygrad 根據(jù) GitHub 內(nèi)容,下文對(duì) tinygrad 的安裝與使用做了簡要介紹。感興趣的同學(xué)也可通過 George Hotz 的 YouTube 視頻進(jìn)行學(xué)習(xí)。

視頻地址:https://www.youtube.com/channel/UCwgKmJM4ZJQRJ-U5NjvR2dg tinygrad 的安裝與使用 「tinygrad 可能不是最好的深度學(xué)習(xí)框架,但它確實(shí)是深度學(xué)習(xí)框架?!? George 在項(xiàng)目中保證,tinygrad 代碼量會(huì)永遠(yuǎn)小于 1000 行。 安裝 tinygrad 的安裝過程非常簡單,只需使用以下命令:

pIYBAF_ZZQ2APyvUAAAML8hQgVg458.jpg

示例 安裝好 tinygrad 之后,就可以進(jìn)行示例運(yùn)行,代碼如下: from tinygrad.tensor import Tensorx = Tensor.eye(3)y = Tensor([[2.0,0,-2.0]])z = y.matmul(x).sum()z.backward()print(x.grad) # dz/dxprint(y.grad)#dz/dy 使用 torch 的代碼如下:

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

滿足對(duì)神經(jīng)網(wǎng)絡(luò)的需求 一個(gè)不錯(cuò)的 autograd 張量庫可以滿足你對(duì)神經(jīng)網(wǎng)絡(luò) 90%的需求。從 tinygrad.optim 添加優(yōu)化器(SGD、RMSprop、Adam),再編寫一些 minibatching 樣板代碼,就可以實(shí)現(xiàn)你的需求。 示例如下:

pIYBAF_ZZd6AHx5DAACPO_1tbLc902.jpg

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

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

推斷 「麻雀雖小,五臟俱全。」tinygrad 還能夠支持 full EfficientNet,輸入一張圖像,即可得到其類別。

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

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

ipython3 examples/efficientnet.py webcam

注意:如果你想加速運(yùn)行,設(shè)置 GPU=1。 測(cè)試 運(yùn)行以下代碼可執(zhí)行測(cè)試:

python -m pytest

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

該項(xiàng)目的創(chuàng)建者是著名黑客喬治 · 霍茲,別號(hào) Geohot。 他于 1989 年出生在美國新澤西州,曾就讀于羅切斯特理工學(xué)院生物工程專業(yè)和卡內(nèi)基梅隆大學(xué)計(jì)算機(jī)科學(xué)系。 然而,喬治 · 霍茲在自己的 LinkedIn 主頁上教育經(jīng)歷描述里是這么寫的:

在羅切斯特理工學(xué)院就讀期間,他的社團(tuán)活動(dòng)是「在宿舍黑 iPhone」…… 這是他著名的黑客經(jīng)歷之一。2007 年,17 歲的喬治 · 霍茲成功破解 iPhone 手機(jī),使手機(jī)不再局限于 AT&T 網(wǎng)絡(luò),而是支持其他 GSM 網(wǎng)絡(luò)。2009 年,他開發(fā)出一款針對(duì) iOS 3.1.2 的越獄軟件 blackra1n。2010 年,喬治 · 霍茲宣布不再進(jìn)行越獄軟件的開發(fā)。

然而,他的黑客行動(dòng)并未停止。 2009 年起,喬治 · 霍茲開始破解 PlayStation 3(PS3)。2010 年初,他宣布得到了 PS3 系統(tǒng)內(nèi)存的讀寫權(quán)限和處理器的高級(jí)控制權(quán)。2011 年 3 月,喬治 · 霍茲被索尼起訴,后和解。 此外,喬治 · 霍茲還破解過三星手機(jī)等產(chǎn)品。 就工作經(jīng)歷而言,他曾在谷歌、Facebook、SpaceX 工作過。目前,他在自己創(chuàng)立的自動(dòng)駕駛公司 comma.ai 任職。 2015 年,喬治 · 霍茲創(chuàng)立了人工智能創(chuàng)業(yè)公司 comma.ai,旨在基于機(jī)器學(xué)習(xí)算法構(gòu)建自動(dòng)駕駛技術(shù)。

喬治 · 霍茲開發(fā)出自動(dòng)駕駛套件 Comma One,只需 1000 美元,用戶就能將傳統(tǒng)汽車升級(jí)成自動(dòng)駕駛版本。不過,后來這一計(jì)劃被取消。 2020 年,在 CES 大會(huì)上,comma.ai 展出了其最新產(chǎn)品——輔助駕駛設(shè)備 Comma Two,售價(jià) 999 美元。 comma.ai 公司還開源了輔助駕駛系統(tǒng) openpilot,參見:https://github.com/commaai/openpilot。 參考鏈接:https://zh.wikipedia.org/wiki/%E4%B9%94%E6%B2%BB%C2%B7%E9%9C%8D%E5%85%B9 https://en.m.wikipedia.org/wiki/George_Hotz

責(zé)任編輯:xj

原文標(biāo)題:不到1000行代碼,GitHub 1400星,天才黑客開源深度學(xué)習(xí)框架tinygrad

文章出處:【微信公眾號(hào):人工智能與大數(shù)據(jù)技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開源
    +關(guān)注

    關(guān)注

    3

    文章

    3349

    瀏覽量

    42505
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4788

    瀏覽量

    68625
  • GitHub
    +關(guān)注

    關(guān)注

    3

    文章

    471

    瀏覽量

    16450

原文標(biāo)題:不到1000行代碼,GitHub 1400星,天才黑客開源深度學(xué)習(xí)框架tinygrad

文章出處:【微信號(hào):TheBigData1024,微信公眾號(hào):人工智能與大數(shù)據(jù)技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    卷積神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)工具與框架

    : TensorFlow是由Google Brain團(tuán)隊(duì)開發(fā)的開源機(jī)器學(xué)習(xí)框架,它支持多種深度學(xué)習(xí)模型的構(gòu)建和訓(xùn)練,包括卷積神經(jīng)網(wǎng)絡(luò)。Ten
    的頭像 發(fā)表于 11-15 15:20 ?274次閱讀

    GPU深度學(xué)習(xí)應(yīng)用案例

    能力,可以顯著提高圖像識(shí)別模型的訓(xùn)練速度和準(zhǔn)確性。例如,在人臉識(shí)別、自動(dòng)駕駛等領(lǐng)域,GPU被廣泛應(yīng)用于加速深度學(xué)習(xí)模型的訓(xùn)練和推理過程。 二、自然語言處理 自然語言處理(NLP)是深度學(xué)習(xí)
    的頭像 發(fā)表于 10-27 11:13 ?398次閱讀

    FPGA加速深度學(xué)習(xí)模型的案例

    :DE5Net_Conv_Accelerator 應(yīng)用場(chǎng)景 :面向深度學(xué)習(xí)開源項(xiàng)目,實(shí)現(xiàn)AlexNet的第層卷積運(yùn)算加速。 技術(shù)特點(diǎn)
    的頭像 發(fā)表于 10-25 09:22 ?229次閱讀

    AI大模型與深度學(xué)習(xí)的關(guān)系

    AI大模型與深度學(xué)習(xí)之間存在著密不可分的關(guān)系,它們互為促進(jìn),相輔相成。以下是對(duì)兩者關(guān)系的介紹: 、深度學(xué)習(xí)是AI大模型的基礎(chǔ) 技術(shù)支撐 :
    的頭像 發(fā)表于 10-23 15:25 ?745次閱讀

    真格基金宣布捐贈(zèng)開源AI項(xiàng)目vLLM

    開源技術(shù)處于 AI 革命的中心。Llama 3、Mistral 等開源大模型迅速追趕 GPT-4,TensorFlow、Pytorch 等開源深度學(xué)
    的頭像 發(fā)表于 09-24 16:13 ?392次閱讀

    NVIDIA推出全新深度學(xué)習(xí)框架fVDB

    在 SIGGRAPH 上推出的全新深度學(xué)習(xí)框架可用于打造自動(dòng)駕駛汽車、氣候科學(xué)和智慧城市的 AI 就緒型虛擬表示。
    的頭像 發(fā)表于 08-01 14:31 ?613次閱讀

    PyTorch深度學(xué)習(xí)開發(fā)環(huán)境搭建指南

    PyTorch作為種流行的深度學(xué)習(xí)框架,其開發(fā)環(huán)境的搭建對(duì)于深度學(xué)習(xí)研究者和開發(fā)者來說至關(guān)重要
    的頭像 發(fā)表于 07-16 18:29 ?1059次閱讀

    深度學(xué)習(xí)與nlp的區(qū)別在哪

    深度學(xué)習(xí)和自然語言處理(NLP)是計(jì)算機(jī)科學(xué)領(lǐng)域中兩個(gè)非常重要的研究方向。它們之間既有聯(lián)系,也有區(qū)別。本文將介紹深度學(xué)習(xí)與NLP的區(qū)別。
    的頭像 發(fā)表于 07-05 09:47 ?936次閱讀

    深度學(xué)習(xí)常用的Python庫

    深度學(xué)習(xí)作為人工智能的個(gè)重要分支,通過模擬人類大腦中的神經(jīng)網(wǎng)絡(luò)來解決復(fù)雜問題。Python作為種流行的編程語言,憑借其簡潔的語法和豐富的
    的頭像 發(fā)表于 07-03 16:04 ?653次閱讀

    TensorFlow與PyTorch深度學(xué)習(xí)框架的比較與選擇

    深度學(xué)習(xí)作為人工智能領(lǐng)域的個(gè)重要分支,在過去十年中取得了顯著的進(jìn)展。在構(gòu)建和訓(xùn)練深度學(xué)習(xí)模型的
    的頭像 發(fā)表于 07-02 14:04 ?973次閱讀

    深度學(xué)習(xí)模型訓(xùn)練過程詳解

    深度學(xué)習(xí)模型訓(xùn)練是個(gè)復(fù)雜且關(guān)鍵的過程,它涉及大量的數(shù)據(jù)、計(jì)算資源和精心設(shè)計(jì)的算法。訓(xùn)練個(gè)
    的頭像 發(fā)表于 07-01 16:13 ?1279次閱讀

    螞蟻集團(tuán)發(fā)布首個(gè)開源金融場(chǎng)景多智能體框架

    在第七屆數(shù)字中國建設(shè)峰會(huì)上,螞蟻集團(tuán)宣布項(xiàng)引人注目的舉措:正式開源其多智能體框架agentUniverse。這
    的頭像 發(fā)表于 05-28 09:25 ?714次閱讀

    FPGA在深度學(xué)習(xí)應(yīng)用中或?qū)⑷〈鶪PU

    現(xiàn)場(chǎng)可編程門陣列 (FPGA) 解決 GPU 在運(yùn)行深度學(xué)習(xí)模型時(shí)面臨的許多問題 在過去的十年里,人工智能的再次興起使顯卡行業(yè)受益匪淺。英偉達(dá) (Nvidia) 和 AMD 等公
    發(fā)表于 03-21 15:19

    為什么深度學(xué)習(xí)的效果更好?

    導(dǎo)讀深度學(xué)習(xí)是機(jī)器學(xué)習(xí)個(gè)子集,已成為人工智能領(lǐng)域的項(xiàng)變革性技術(shù),在從計(jì)算機(jī)視覺、自然語言處
    的頭像 發(fā)表于 03-09 08:26 ?624次閱讀
    為什么<b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b>的效果更好?

    谷歌模型框架是什么軟件?谷歌模型框架怎么用?

    谷歌模型框架通常指的是谷歌開發(fā)的用于機(jī)器學(xué)習(xí)和人工智能的軟件框架,其中最著名的是TensorFlow。TensorFlow是個(gè)
    的頭像 發(fā)表于 03-01 16:25 ?884次閱讀