Memperkenalkan Data 2.0, didukung oleh Hub.
Cara tercepat untuk mengakses dan manajemen dataset dengan version-control untuk PyTorch/Tensorflow. Dapat bekerja secara lokal atau dalam cloud apa pun. Pipeline data yang dapat diskalakan.
[ English | Français | 简体中文 | Türkçe | 한글 | Bahasa Indonesia ] | Русский]
Perhatian: translasi ini mungkin bukan berasal dari dokumen yang paling baru
Software 2.0 membutuhkan Data 2.0, dan Hub menyediakan ini. Lebih banyak waktu yang dihabiskan oleh Data Scientists atau ML researchers untuk mengatur data dan preprocessing data daripada melakukan training model. Dengan Hub, kami akan memperbaiki ini. Kami menyimpan dataset milikmu (hingga berskala petabyte) sebagai sebuah array tunggal serupa numpy di cloud sehingga kamu dapat dengan mudah mengaksesnya dan menggunakannya dari perangkat manapun. Hub membantu tipe data apapun (gambar, file teks, audio, atau video) yang disimpan dalam cloud dapat digunakan secara cepat seakan-akan data tersebut disimpan dalam penyimpanan lokal. Dengan pandangan data yang sama, tim kalian dapat selalu tersonkrinisasi.
Hub juga digunakan oleh Waymo, Red Cross, World Resources Institute, Omdena, dan lainnya.
- Simpan dan ambil dataset besar menggunakan version-control
- Berkolaborasi seakan menggunakan Google Docs: Beberapa data scientist mengerjakan data yang sama secara sinkron tanpa gangguan
- Dapat diakses dari beberapa perangkat secara bersamaan
- Gunakan dimana saja - penyimpanan lokal, Google Cloud, S3, Azure atau juga di Activeloop (pengaturan tetap - tanpa biaya!)
- Integrasikan dengan tool ML seperti Numpy, Dask, Ray, PyTorch, atau TensorFlow
- Buatlah array sebesar yang kamu mau. Kamu dapat menyimpan gambar-gambar yang sangat besar seperti ukuran 100k x 100k
- Jaga ukuran tiap sampel menjadi dinamis. Dengan cara ini, kamu dapat menyimpan array kecil dan array besar dalam 1 buah array yang sama
- Visualisasikan tiap potongan data dalam hitungan detik tanpa manipulasi yang berlebihan.
Visualisasi sebuah dataset yang diunggah ke Hub melalui app.activeloop.ai (aplikasi gratis).
Bekerja dengan data terbuka atau data milik sendiri, pada peyimpanan lokal atau di penyimpanan cloud mana pun.
Untuk memuat data terbuka, kamu harus menulis banyak baris kode dan menghabiskan berjam-jam untuk mengakses dan memahami API yang digunakan serta mengunduh datanya. Dengan Hub, kamu hanya membutuhkan 2 baris kode dan kamu dapat mulai mengolah dataset dalam waktu kurang dari 3 menit
pip3 install hub
Akses dataset terbuka (public) dengan mudah yang tersedia di Hub menggunakan beberapa baris kode. Jalankan kutipan kode berikut untuk dapat mengakses 1000 data pertama dari MNIST database dalam format numpy array:
from hub import Dataset
mnist = Dataset("activeloop/mnist") # memuat data MNIST dengan mode lazy
# menghemat waktu dengan *compute* untuk mengambil data yang diperlukan saja
mnist["image"][0:1000].compute()
Kamu dapat mencari dataset populer lainnya di app.activeloop.ai.
Muat datanya dan train modelmu secara langsung. Hub sudah terintegrasi dengan PyTorch dan Tensorflow yang mampu melakukan perubahan format data dengan cara yang mudah dipahami. Lihatlah contoh dibawah ini untuk menggunakannya dengan PyTorch:
from hub import Dataset
import torch
mnist = Dataset("activeloop/mnist")
# mengonversi MNIST menjadi format PyTorch
mnist = mnist.to_pytorch(lambda x: (x["image"], x["label"]))
train_loader = torch.utils.data.DataLoader(mnist, batch_size=1, num_workers=0)
for image, label in train_loader:
# Perulangan proses training disini
Jika kamu ingin bekerja menggunakan datamu sendiri secara lokal, kamu dapat mulai membuat datasetmu dengan cara ini:
from hub import Dataset, schema
import numpy as np
ds = Dataset(
"./data/dataset_name", # lokasi penyimpanan data
shape = (4,), # mengikuti penulisan format shape pada numpy
mode = "w+", # mode menulis & membaca
schema = { # penyimpanan bernama yang memiliki tipe tertentu
# Tensor adalah struktur umum yang dapat berisi bentuk data apa pun
"image": schema.Tensor((512, 512), dtype="float"),
"label": schema.Tensor((512, 512), dtype="float"),
}
)
# mengisi tempat penyimpan data dengan sebuah data
# (disini - inisialisasi dengan 0)
ds["image"][:] = np.zeros((4, 512, 512))
ds["label"][:] = np.zeros((4, 512, 512))
ds.flush() # menjalankan proses pembuatan dataset
Kamu juga dapat menggunakan s3://bucket/path
, gcs://bucket/path
atau azure untuk meyimpannya di cloud. Kamu dapat melihat informasi lebih jelasnya disini. Selain itu, jika kamu membutuhkan dataset terbuka yang tidak tersedia di Hub, kamu bisa mengajukan permintaan. Kami akan menyediakannya untuk semua orang secepat mungkin!
- Buatlah akun di Activeloop dan ontentikasi secara lokal:
activeloop register
activeloop login
# cara lainnya, tambahkan username dan password sebagai argumen
# (seperti yang digunakan pada platform Kaggle)
activeloop login -u username -p password
- Buatlah dataset, dengan merincikan nama dan unggahlah ke akunmu. Contohnya:
from hub import Dataset, schema
import numpy as np
ds = Dataset(
"username/dataset_name",
shape = (4,),
mode = "w+",
schema = {
"image": schema.Tensor((512, 512), dtype="float"),
"label": schema.Tensor((512, 512), dtype="float"),
}
)
ds["image"][:] = np.zeros((4, 512, 512))
ds["label"][:] = np.zeros((4, 512, 512))
ds.flush()
- Dapat diakses di mana pun dan perangkat mana pun dengan perintah:
from hub import Dataset
ds = Dataset("username/dataset_name")
Untuk pipeline data yang lebih kompleks seperti mengunggah dataset besar atau mengaplikasikan banyak transformasi, silahkan baca dokumentasi kami.
Terdapat berbagai contoh penggunan Hub di direktori examples dan beberapa notebook dengan contoh kasus penggunaan juga tersedia di direktori notebooks. Beberapa notebook terdapat dalam list berikut:
Notebook | Deskripsi | |
---|---|---|
Mengunggah Gambar | Contoh cara mengunggah dan menyimpan Gambar di Hub | |
Mengunggah Dataframes | Contoh cara mengunggah dan menyimpan Dataframes di Hub | |
Uploading Audio | Menjelaskan cara mengolah data audio in Hub | |
Mengambil Data dari penyimpanan cloud | Menjelaskan cara mengambil Data dari penyimpanan cloud | |
Transformasi Data | Penjelasan singkat mengenai transformasi data menggunakan Hub | |
Dynamic Tensors | Menggunakan data dengan bentuk dan ukuran yang tidak tetap | |
NLP menggunakan Hub | Fine Tuning BERT menggunakan CoLA |
- Pencitraan satelit and drone: Smarter farming with scalable aerial pipelines, Mapping Economic Well-being in India, Fighting desert Locust in Kenya with Red Cross
- Gambar Medis: Volumetric images seperti MRI atau Xray
- Self-Driving Cars: Radar, 3D LIDAR, Point Cloud, Semantic Segmentation, Video Objects
- Retail: Self-checkout dataset
- Media: Gambar, Video, Audio
Tidak terlalu banyak library manajemen data yang menawarkan fungsionalitas yang mungkin terlihat serupa dengan Hub. Faktanya, cukup banyak pengguna berpindah dari format Dataset PyTorch atau Tensorflow ke Hub. Berikut beberapa perbedaan yang akan kamu temukan setelah beralih ke Hub:
- Data disediakan dalam potongan-potongan (chunks) daripada mengunduhnya dalam satu bagian bersamaan. Hal ini memungkinkan kamu mengunduhnya dari lokasi terpecil
- Hanya bagian yang diperlukan dari dataset yang akan dievaluasi/diolah sehingga kamu dapat segera mengolah datanya
- Kamu dapat menyimpan data yang mungkin tidak dapat kamu simpan secara utuh di memorimu
- kamu dapat mengatur versi datasetmu (version-control) dan berkolaborasi dengan beberapa pengguna dari perangkat yang berbeda-beda
- Dilengkapi dengan tools yang membantumu memahami data dalam hitungan detik, seperti tool visualisasi kami.
- Kamu dapat dengan mudah menyiapkan data untuk digunakan pada proses training oleh beberapa library secara bersamaan (contoh, menggunakan satu dataset untuk training dengan PyTorch dan Tensorflow)
Bergabung dengan kami di Komunitas Slack untuk mendapatkan bantuan dari tim Activeloop dan pengguna lainnya serta mengikuti perkembangan terikini dari cara terbaik untuk manajemen data / preprocessing data.
Seperti biasa, terima kasih kepada kontributor hebat kami!
Dibuat menggunakan contributors-img.
Silahkan baca CONTRIBUTING.md untuk mengetahui cara berkontribusi di Hub.
Format Hub yang dibuat Activeloop membantumu melakukan inference lebih cepat dengan cost yang lebih rendah. Kami memiliki 30+ dataset populer tersedia pada platform kami. Beberapa diantaranya:
- COCO
- CIFAR-10
- PASCAL VOC
- Cars196
- KITTI
- EuroSAT
- Caltech-UCSD Birds 200
- Food101
Periksa dataset diatas dan dataset populer lainnya pada visualisasi web kami dan muat datanya secara langsung untuk training modelmu!
Menggunakan Hub pada pekerjaanmu? Tambahkan README badge agar orang lain mengetahuinya:
[![hub](https://img.shields.io/badge/powered%20by-hub%20-ff5a1f.svg)](https://github.com/activeloopai/Hub)
Serupa dengan manajemen dataset lainnya, Hub
merupakan utility library untuk mengunduh dan menyiapkan dataset terbuka. Kami tidak menyediakan atau mendistirbusikan dataset-dataset ini, menjamin kualitas atau keadilan dataset tersebut, atau mengklaim Anda memiliki lisensi untuk menggunakan dataset tersebut. Ini merupakan tanggung jawab Anda untuk menentukan apakah Anda memiliki izin untuk menggunakan dataset tersebut sesuai dengan lisensi yang berlaku.
Jika Anda adalah pemilik dari dataset dan ingin memperbarui bagian mana pun (deskripsi, sitasi, dll), atau menginginkan agar dataset tersebut tidak dimasukkan dalam library ini, silahkan hubungi melalui GitHub issue. Terima kasih atas kontribusi Anda di komunitas ML!
Similarly to other dataset management packages,
Hub
is a utility library that downloads and prepares public datasets. We do not host or distribute these datasets, vouch for their quality or fairness, or claim that you have license to use the dataset. It is your responsibility to determine whether you have permission to use the dataset under the dataset's license.If you're a dataset owner and wish to update any part of it (description, citation, etc.), or do not want your dataset to be included in this library, please get in touch through a GitHub issue. Thanks for your contribution to the ML community!
Teknologi ini terinspirasi dari pengalaman kami di Princeton University dan ingin berterima kasih kepada William Silversmith @SeungLab dengan tool kerennya cloud-volume. Kami adalah pengguna berat Zarr dan ingin berterima kasih kepada komunitasnya yang telah membangun block fundamental yang hebat.
This technology was inspired from our experience at Princeton University and would like to thank William Silversmith @SeungLab with his awesome cloud-volume tool. We are heavy users of Zarr and would like to thank their community for building such a great fundamental block.