成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

存儲和操作n維數據的難題,谷歌用一個開源軟件庫解決了

人工智能 新聞
TensorStore 是專為存儲和操作 n 維數據而設計的開源軟件庫。

計算機科學和機器學習 (ML) 的許多應用都需要處理跨坐標系的多維數據集,并且單個數據集可能也需要存儲 TB 或 PB 的數據。另一方面,使用此類數據集也具有挑戰性,因為用戶可能會以不規則的間隔和不同的規模讀取和寫入數據,通常還會執行大量的并行工作。

為了解決上述問題,谷歌開發了一個開源的 C++ 和 Python 軟件庫 TensorStore,專為存儲和操作 n 維數據而設計。谷歌 AI 負責人 Jeff Dean 也在推特上發文表示 TensorStore 現已正式開源。

圖片

TensorStore 的主要功能包括:

  • 提供統一的 API 用于讀寫多種數組格式,包括 zarr 和 N5;
  • 原生支持多種存儲系統,包括谷歌云存儲、本地和網絡文件系統、HTTP 服務器和內存存儲;
  • 支持讀 / 寫緩存和事務,具有很強的原子性、隔離性、一致性和持久性(ACID)特性;
  • 支持從多個進程和機器進行安全、高效的并發訪問;
  • 提供異步 API 以實現對高延遲遠程存儲的高吞吐量訪問;
  • 提供高級、完全可組合的索引操作和虛擬視圖。

TensorStore 已被用于解決科學計算中的工程挑戰,還被用于創建大型機器學習模型,例如用來管理 PaLM 在分布式訓練期間的模型參數(檢查點)。

圖片

GitHub 地址:https://github.com/google/tensorstore

用于數據訪問和操作的 API

TensorStore 提供了一個簡單的 Python API 用于加載和操作大型數組數據。例如,下面的代碼創建了一個 TensorStore 對象,該對象代表一個 56 萬億體素的蒼蠅大腦 3D 圖像,并允許訪問 NumPy 數組中 100x100 的圖像 patch 數據:

圖片

值得注意的是,該程序在訪問特定的 100x100 patch 之前,不會訪問內存中的實際數據,因此可以加載和操作任意大的基礎數據集,而無需將整個數據集存儲在內存中。TensorStore 使用與標準 NumPy 基本相同的索引和操作語法。 

此外,TensorStore 還為高級索引功能提供廣泛支持,包括對齊、虛擬視圖等。

下面的代碼演示了如何使用 TensorStore 創建一個 zarr 數組,以及 TensorStore 的異步 API 如何實現更高的吞吐量:

圖片

安全和性能擴展

眾所周知,分析和處理大型數據集需要大量的計算資源,通常需要分布在多個機器上的 CPU 或加速器內核的并行化來實現。因此,TensorStore 的一個基本目標是實現并行處理,達到既安全又高性能的目的。事實上,在谷歌數據中心內的測試中,他們發現隨著 CPU 數量的增加,TensorStore 讀寫性能幾乎呈線性增長:

圖片

在谷歌云存儲 (GCS) 上對 zarr 格式數據集的讀寫性能,讀和寫性能與計算任務的數量幾乎成線性增長。

TensorStore 還提供了可配置的內存緩存和異步 API,以允許讀寫操作在程序完成其他工作時在后臺繼續執行。為了使 TensorStore 的分布式計算與數據處理工作流兼容,谷歌還將 TensorStore 與 Apache Beam 等并行計算庫集成。

示例展示

示例 1 語言模型:最近一段時間,機器學習領域出現了一些 PaLM 等高級語言模型。這些模型包含數千億個參數,在自然語言理解和生成方面表現出驚人的能力。不過這些模型對計算設施提出了挑戰,特別是,訓練一個像 PaLM 這樣的語言模型需要數千個 TPU 并行工作。

其中有效地讀取和寫入模型參數是訓練過程面臨的一個問題:例如訓練分布在不同的機器上,但參數又必須定時的保存到 checkpoint 中;又比如單個訓練必須僅讀取特定參數集,以避免加載整個模型參數集(可能是數百 GB)所需的開銷。

TensorStore 可以解決上述問題。它已被用于管理大型(multipod)模型相關的 checkpoint,并已與 T5X 和 Pathways 等框架集成。TensorStore 將 Checkpoint 轉換為 zarr 格式存儲,并選擇塊結構以允許每個 TPU 的分區并行獨立地讀取和寫入。


圖片

當保存 checkpoint 時,參數以 zarr 格式寫入,塊網格進一步被劃分,以用于在 TPU 上劃分參數網格。主機為分配給該主機的 TPU 的每個分區并行寫入 zarr 塊。使用 TensorStore 的異步 API,即使數據仍被寫入持久存儲,訓練也會繼續進行。當從 checkpoint 恢復時,每個主機只讀取分配給該主機的分區塊。

示例 2 大腦 3D 映射:突觸分辨連接組學的目標是在單個突觸連接水平上繪制動物和人腦的連線。完成這一目標需要在毫米或更大的視野范圍內以極高的分辨率 (納米級) 對大腦進行成像,由此產生的數據大小達到 PB 級。然而,即使是現在,數據集也面臨著存儲、處理等方面的問題,即使是單個大腦樣本也可能需要數百萬 GB 的空間。

谷歌已經使用 TensorStore 來解決與大規模連接組學數據集相關的計算挑戰。具體而言,TensorStore 已經開始管理一些連接組學數據集,并將谷歌云存儲作為底層對象存儲系統。

目前,TensorStore 已被用于人類大腦皮層數據集 H01,原始成像數據為 1.4 PB(約為 500000 * 350000 * 5000 像素)。之后原始數據被細分為 128x128x16 像素的獨立塊,以「Neuroglancer precomputed」格式存儲,TensorStore 可以很容易的對其進行操作。

圖片

利用 TensorStore 可以輕松訪問和操作底層數據(蒼蠅大腦重建)

想要上手一試的小伙伴,可以使用以下方法安裝 TensorStore PyPI 包:

pip install tensorstore


責任編輯:張燕妮 來源: 新智元
相關推薦

2018-11-30 18:30:17

數據庫運維機器學習

2025-02-08 08:42:22

2011-08-29 14:33:02

Oracle存儲過程

2017-11-21 09:30:00

2017-12-14 16:55:33

2021-03-17 08:11:29

SpringBoot項目數據庫

2019-07-24 14:49:48

SQL開源庫BI軟件

2020-11-15 18:20:44

GnuCash開源會計軟

2012-07-30 09:40:52

Lua

2013-07-31 10:56:35

VDI虛擬化

2025-06-27 07:17:52

2022-01-17 09:22:42

SwiftUI App Store開源

2023-12-21 11:12:31

Node.js.NET開源庫

2021-05-19 22:23:56

PythonJavaScript數據

2011-03-28 09:56:03

存儲增刪操作

2017-04-12 09:54:18

運維SREDevOPS

2025-04-17 01:30:00

開源PostgreSQL存儲引擎

2013-10-21 18:30:19

2021-05-14 10:45:21

PythonNoSQL數據庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日日碰狠狠躁久久躁婷婷 | 一区二区国产精品 | 欧美一区二区三区在线 | 国产清纯白嫩初高生视频在线观看 | 欧美美女一区二区 | 中文字幕一区在线观看视频 | 一区二区精品 | 成人欧美一区二区三区在线播放 | 日韩精品在线看 | 国产高清在线精品 | 免费黄色日本 | 亚洲国产精品福利 | www国产成人免费观看视频 | 北条麻妃一区二区三区在线视频 | 亚洲女人天堂成人av在线 | 国产视频一区在线 | 国产精品免费视频一区 | 中文字幕一区二区三区四区五区 | 国产99久久精品一区二区300 | 国产不卡在线观看 | 国产精品精品3d动漫 | 一区在线观看 | 久久精品小视频 | 日韩精品 电影一区 亚洲 | 黄色网页在线 | 日韩综合在线 | 男女深夜网站 | 精品国产精品一区二区夜夜嗨 | 国产精品一区二区免费看 | 国产精品免费观看视频 | 黄色一级毛片 | 久久伦理电影 | 在线观看国产 | 欧美日韩久久 | 涩涩视频大全 | 久久夜视频 | 国产精品久久久久久久岛一牛影视 | 中文字幕一级毛片 | 国产午夜三级一区二区三 | 亚洲成人在线视频播放 | 精品久久久久久久久久久 |