天才黑客George Hotz開源了一個小型深度學習框架tinygrad

2020-12-17 電子發燒友

天才黑客George Hotz開源了一個小型深度學習框架tinygrad

人工智慧與大數據 發表於 2020-12-16 09:36:56

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

在深度學習時代,谷歌、Facebook、百度等科技巨頭開源了多款框架來幫助開發者更輕鬆地學習、構建和訓練不同類型的神經網絡。而這些大公司也花費了很大的精力來維護 TensorFlow、PyTorch 這樣龐大的深度學習框架。   除了這類主流框架之外,開發者們也會開源一些小而精的框架或者庫。

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

項目地址:https://github.com/geohot/tinygrad   根據 GitHub 內容,下文對 tinygrad 的安裝與使用做了簡要介紹。感興趣的同學也可通過 George Hotz 的 YouTube 視頻進行學習。  

 

視頻地址:https://www.youtube.com/channel/UCwgKmJM4ZJQRJ-U5NjvR2dg  tinygrad 的安裝與使用  「tinygrad 可能不是最好的深度學習框架,但它確實是深度學習框架。」   George 在項目中保證,tinygrad 代碼量會永遠小於 1000 行。  安裝  tinygrad 的安裝過程非常簡單,只需使用以下命令:  

示例  安裝好 tinygrad 之後,就可以進行示例運行,代碼如下:  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   

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

支持 GPU  tinygrad 通過 PyOpenCL 支持 GPU。但後向傳播暫時無法支持所有 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 

       注意:如果你想加速運行,設置 GPU=1。  測試  運行以下代碼可執行測試: 

python -m pytest 

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

 

 

該項目的創建者是著名黑客喬治 · 霍茲,別號 Geohot。   他於 1989 年出生在美國新澤西州,曾就讀於羅切斯特理工學院生物工程專業和卡內基梅隆大學計算機科學系。   然而,喬治 · 霍茲在自己的 LinkedIn 主頁上教育經歷描述裡是這麼寫的:  

在羅切斯特理工學院就讀期間,他的社團活動是「在宿舍黑 iPhone」……    這是他著名的黑客經歷之一。2007 年,17 歲的喬治 · 霍茲成功破解 iPhone 手機,使手機不再局限於 AT&T 網絡,而是支持其他 GSM 網絡。2009 年,他開發出一款針對 iOS 3.1.2 的越獄軟體 blackra1n。2010 年,喬治 · 霍茲宣布不再進行越獄軟體的開發。  

       然而,他的黑客行動並未停止。   2009 年起,喬治 · 霍茲開始破解 PlayStation 3(PS3)。2010 年初,他宣布得到了 PS3 系統內存的讀寫權限和處理器的高級控制權。2011 年 3 月,喬治 · 霍茲被索尼起訴,後和解。   此外,喬治 · 霍茲還破解過三星手機等產品。   就工作經歷而言,他曾在谷歌、Facebook、SpaceX 工作過。目前,他在自己創立的自動駕駛公司 comma.ai 任職。   2015 年,喬治 · 霍茲創立了人工智慧創業公司 comma.ai,旨在基於機器學習算法構建自動駕駛技術。

       喬治 · 霍茲開發出自動駕駛套件 Comma One,只需 1000 美元,用戶就能將傳統汽車升級成自動駕駛版本。不過,後來這一計劃被取消。   2020 年,在 CES 大會上,comma.ai 展出了其最新產品——輔助駕駛設備 Comma Two,售價 999 美元。   comma.ai 公司還開源了輔助駕駛系統 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

 

責任編輯:xj

原文標題:不到1000行代碼,GitHub 1400星,天才黑客開源深度學習框架tinygrad

文章出處:【微信公眾號:人工智慧與大數據技術】歡迎添加關注!文章轉載請註明出處。

 

打開APP閱讀更多精彩內容

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴

相關焦點

  • 不到1000行代碼,GitHub 1400星,天才黑客開源深度學習框架tinygrad
    機器之心報導機器之心編輯部最近,天才黑客 George Hotz 開源了一個小型深度學習框架 tinygrad,兼具 PyTorch 和 micrograd 的功能。
  • 曠視開源深度學習框架「天元」!孫劍:COCO三連冠背後的秘密武器
    剛剛,深度學習驅動之下最早創業的中國AI獨角獸曠視,宣布開源自研深度學習框架MegEngine(Brain++核心組件之一),中文名天元——取自圍棋棋盤中心點的名稱。在發布會上,曠視聯合創始人、CTO唐文斌透露,這也是向AlphaGO致敬。與之前開源的「前輩」框架們不同,曠視開源的AI框架,是其創業、壯大和屢屢刷新業內紀錄的核心驅動引擎。
  • 深度學習-Pytorch框架學習之模型訓練和測試
    前言前面四篇文章,介紹了模型搭建、數據準備及pytorch中常用的計算方法等,有了上述基礎後就可以訓練模型了,下面這篇文章會簡單介紹下在pytorch框架下如何訓練深度學習模型,以及一些常用代碼。模型訓練
  • 從曠視開源自研深度學習框架 看曠視商業進化的底層邏輯
    一個產業的發展,離不開一套能用、好用的基礎設施,降低生產成本,提高生產效率,吸引更多人參與。作為全球最早用深度學習方法開展人工智慧商業化探索的科技企業,曠視成立於AI 開發工具匱乏的早期人工智慧時代,於是曠視靠自主研發,從0到1地解決了算法生產的問題。自公司創辦以來,曠視一直奔跑在AI的主流賽道上,並形成了眾多基於核心AI算法的硬體、軟體、解決方案。
  • 飛槳深度學習開源框架2.0搶先看:成熟完備的動態圖開發模式
    允中 發自 凹非寺量子位 編輯 | 公眾號 QbitAI百度飛槳於近期宣布,深度學習開源框架2.0搶先版本正式發布,進入2.0時代。其中一項重大升級,就是推出更加成熟完備的命令式編程模式,即通常說的動態圖模式。
  • 深度學習框架哪家強?國產框架OneFlow做了一份測評報告
    機器之心報導 機器之心編輯部 近日,國產深度學習框架 OneFlow 發布了人工智慧方向深度學習領域的 DLPerf 測評報告。
  • 國際巨頭重金投入,國產深度學習框架OneFlow有何優勢?
    李彎彎 發表於 2020-12-17 09:31:50 近日,國產深度學習框架OneFlow發布了人工智慧方向深度學習領域的DLPerf測評報告,填補了業內針對深度學習框架測評的空白。
  • 小米高管談深度學習框架MACE:被多家軟體公司的APP集成
    集微網9月29日消息(文/數碼控),小米集團副總裁、小米技術委員會主席崔寶秋在昨天晚間談到了深度學習框架MACE。 圖片來源:微博 崔寶秋稱,為了將小米算法團隊的諸多技術成果通過AI框架儘快地落地到手機上,2017年,在考察當時流行的深度學習框架並反覆權衡之後
  • 深度學習-Pytorch框架學習之模型定義與簡單操作
    前言這一篇文章主要簡單的了解下在Pytorch框架下,卷積神經網絡的一些設置和應用,如有遺漏或錯誤,歡迎指出,不甚感激,互相學習!(0), -1)out = self.fc(out)return outmodel = ConvNet(num_classes).to(device)關於卷積運算和對應的可視化,有很多網站做的都很好,可以便於理解和學習卷積操作
  • 挑戰TensorFlow、PyTorch,誰才是中國AI開源框架之星?
    眾所周知,深度學習開源框架的應用正在推動人工智慧技術從實驗室走向產業界。作為AI時代的重要的生產工具,AI開源框架是開發者研發AI應用的重要基石,也是開發者們發展路上的相伴者。 不過,縱觀市場上的開源框架,TensorFlow、PyTorch基本兩分天下,從技術能力到生態建設可以滿足大部分企業在其中構建自己的AI應用。反觀國產AI開源框架,無論從市場影響力和使用規模來看,還難與前兩者抗衡。
  • 小米自研並開源!端上機器學習框架MACE將存放1000年
    7月17日消息,MIUI宣布小米自研並開源的端上機器學習框架MACE已經隨著其他幾百萬個開源項目以數字光感檔案膠片的形式被GitHub官方儲存在北極代碼倉庫中,將保存1000年。1000年後的人類還能看到這個支持了MIUI 12小米健康靈弦算法、魔法換天、AI相機等等功能,同時支持手機與AIoT設備的機器學習框架。據悉,小米糰隊打造的MACE是專門為移動端晶片優化的深度學習框架,且已開源供開發者使用。
  • 黑客全家桶、文字提取利器、深度學習 500 問|GitHub 熱點速覽
    作者 | HelloGitHub-小魚乾摘要:一個程式設計師除了技術好,還得品位高,有什麼比一個高顏值的 GUI 更能體現你品味的呢?rocketredis 就是一個高顏值、簡約的 Redis 管理界面,比它簡直更高的是極客風的 eDEX-UI,一看它濃濃科幻風的界面,你一定會被它圈粉的。
  • 曠視宣布開源深度學習框架「天元」;淘寶回應彈窗問題;蘋果或推遲...
    曠視宣布開源深度學習框架「天元」3月25日,曠視科技舉辦線上發布會,宣布開源新一代AI生產力平臺Brain++的核心深度學習框架曠視天元(MegEngine)。發布會上,曠視聯合創始人兼CTO唐文斌正式宣布將MegEngine的代碼開源,並指出這是一套訓練推理一體化、動靜態合一的工業級深度學習框架。
  • Facebook全新開源深度學習框架Pythia,即插即用快速構建AI模型
    新智元彙編 編輯:鵬飛,張佳【新智元導讀】Facebook的人工智慧研究部門近期推出Pythia,一個模塊化的即插即用框架。目標是使數據科學家能夠快速構建、複製和基準人工智慧模型,將VQA v2.0數據集模型的性能從65.67%提高到70.22%,已在Github上開源。Facebook最近在開發者社區拋出了一系列工具。
  • 2020年深度學習發展大盤點及對2021年深度學習的未來展望|極客雲算
    深度學習框架作為AI底層工具,對個人而言是進入深度學習世界的一把鑰匙,掌握深度學習框架並不等於理解了深度學習,要在AI開發中有所作為,關鍵還是要真正理解框架背後的技術、實踐和生態。隨著近年來的人工智慧發展,2020年深度學習依然是發展最快的領域之一,直奔未來工作。其發展是多方面的,而且是多方位的。
  • 醫療AI公司繞不開的選擇難題:開源框架與專用晶片
    在醫療AI領域,圍繞晶片和AI開源框架的討論也一直熱度不減。《後浪》視頻一夜刷屏。其實在AI時代,晶片和開源框架也有諸多不斷趕超「前浪」的攪局者和顛覆者。為了搶佔市場、營造生態,科技巨頭也都推出了自己的開源深度學習框架,如Google的TensorFlow、Amazon的MXNet、Facebook的Pytorch和Microsoft的CNTK等。
  • 盤點四大民間機器學習開源框架:Theano、Caffe、Torch和SciKit-learn
    在上期的,我們盤點了 TensorFlow,CNTK,SystemML,DeepMind Lab 等各大網際網路巨頭的開源平臺。本期,雷鋒網將帶領大家來看看誕生於民間(學界)的另外四大開源項目:谷歌、微軟、OpenAI 等巨頭的七大機器學習開源項目 看這篇就夠了1. TheanoTheano 在深度學習框架中是祖師級的存在。
  • 8次迭代5大升級,曠視深度學習框架天元1.0預覽版正式發布
    9 月 18 日,中關村論壇曠視平行論壇中,曠視研究院院長、首席科學家孫劍正式發布了開源深度學習框架天元 1.0 預覽版,並對天元的技術特性與發展方向進行了深入解讀。曠視 2014 年開始研發深度學習框架天元。
  • 重磅發布開源框架、生物計算平臺螺旋槳,百度飛槳交了年終成績單
    同時,在以深度學習為代表的人工智慧發展浪潮中,產業界已經成為驅動開源開放的重要力量。而成熟的開源開放技術生態與開放平臺,也正在推動社會各界加快融合發展。」關於飛槳,王海峰分享了幾個重要的數字:從今年 5 月份的「WAVE SUMMIT 2020」深度學習開發者峰會到現在,飛槳平臺的開發者數量實現了大幅度的增長,達到了 265 萬。