Kerangka kerja grafik asiklik terdistribusi terarah untuk pembelajaran mesin dengan UI
Tujuan MLComp adalah menyediakan alat untuk pelatihan, inferensi, pembuatan saluran yang kompleks (terutama untuk visi komputer) dengan cara yang cepat dan mudah dikelola.
MLComp kompatibel dengan: Python 3.6+, sistem operasi Unix.
Bagian dari Ekosistem Katalis. Manifes proyek.
Fitur
UI yang luar biasa
Dukungan katalis
Pelatihan terdistribusi
Supervisor yang mengontrol sumber daya komputasi
Sinkronisasi kode dan data
Pemantauan sumber daya
Fungsionalitas penuh dari jeda dan lanjutkan di UI
Kontrol otomatis terhadap persyaratan
Pembuangan kode (dengan sorotan sintaksis di UI)
Integrasi Kaggle
Pencatatan hierarkis
Pencarian jaringan
Perbandingan eksperimen
Menyesuaikan sistem tata letak
Isi
Tangkapan layar
Instalasi
UI
Penggunaan
Dokumen dan contoh
Variabel lingkungan
sial
Komputer
Laporan
Kode
Grafik
Tangkapan layar lainnya
Instal paket MLComp
sudo apt-get install -y libavformat-dev libavcodec-dev libavdevice-dev libavutil-dev libswscale-dev libavresample-dev libavfilter-dev pip instal mlcomp mlcomp init mlcomp bermigrasi
Siapkan lingkungan Anda. Silakan pertimbangkan bagian Variabel lingkungan
Jalankan db, redis, mlcomp-server, mlcomp-workers:
Varian 1 : minimal (bila mempunyai 1 komputer)
Jalankan semua yang diperlukan (mlcomp-server, mlcomp-workers, redis-server), menggunakan SQLITE:
mlcomp-server mulai --daemon=Benar
Varian 2: penuh
A. Ubah variabel Lingkungan Anda untuk menggunakan PostgreSql
B. Instal rsync di setiap komputer kerja
sudo apt-get instal rsync
Pastikan setiap komputer tersedia dengan protokol SSH dengan IP/PORT yang Anda tentukan di file variabel Lingkungan.
rsync akan melakukan perintah berikut:
untuk mengunggah
rsync -vhru -e "ssh -p {target.port} -o StrictHostKeyChecking=tidak" {folder}/ {target.user}@{target.ip}:{folder}/ --perms --chmod=777
untuk mengunduh
rsync -vhru -e "ssh -p {source.port} -o StrictHostKeyChecking=tidak" {source.user}@{source.ip}:{folder}/ {folder}/ --perms --chmod=777
C. Instal apex untuk pembelajaran terdistribusi
D. Untuk Menjalankan postgresql, redis-server, mlcomp-server, jalankan di komputer server Anda:
cd ~/mlcomp/configs/ docker-compose -f server-compose.yml naik -d
e. Jalankan di setiap komputer pekerja:
mlcomp-pekerja mulai
Situs web tersedia di http://{WEB_HOST}:{WEB_PORT}
Secara default, ini adalah http://localhost:4201
Bagian depan dibangun dengan AngularJS.
Jika Anda ingin mengubahnya, silakan pertimbangkan halaman Readme depan
Berlari
mlcomp hari ini PATH_TO_CONFIG.yml
Perintah ini menyalin file direktori ke database.
Kemudian, server menjadwalkan DAG dengan mempertimbangkan sumber daya gratis.
Untuk informasi lebih lanjut, silakan pertimbangkan Dokumen
Dokumentasi API dan ikhtisar perpustakaan dapat ditemukan di sini
Anda dapat menemukan tutorial lanjutan dan praktik terbaik MLComp di folder contoh repositori.
Tutorial FileSync menjelaskan mekanisme sinkronisasi data
File tunggal untuk mengatur lingkungan komputer Anda terletak di ~/mlcomp/configs/.env
ROOT_FOLDER - folder untuk menyimpan file MLComp: konfigurasi, db, tugas, dll.
TOKEN - token keamanan situs. Silakan ubah ke string apa pun
DB_TYPE. Baik SQLITE atau POSTGRESQL
POSTGRES_DB. Nama db PostgreSql
POSTGRES_USER. Pengguna PostgreSql
POSTGRES_PASSWORD. Kata sandi PostgreSql
POSTGRES_HOST. Tuan rumah PostgreSql
PGDATA. Lokasi file db PostgreSql
REDIS_HOST. Tuan rumah Redis
REDIS_PORT. Pelabuhan Redis
REDIS_PASSWORD. Kata sandi ulang
WEB_HOST. Host situs MLComp. 0.0.0.0 berarti tersedia dari mana saja
WEB_PORT. Port situs MLComp
KONSOLE_LOG_LEVEL. level log untuk output ke konsol
DB_LOG_LEVEL. tingkat log untuk output ke database
AKU P. Ip komputer kerja. Komputer kerja harus dapat diakses dari komputer kerja lain melalui IP/PORT ini
PELABUHAN. Port komputer kerja. Komputer kerja harus dapat diakses dari komputer kerja lain melalui IP/PORT ini (protokol SSH)
MASTER_PORT_RANGE. rentang port terdistribusi untuk komputer kerja. 29500-29510 berarti jika komputer kerja ini adalah master dalam pembelajaran terdistribusi, maka ia akan menggunakan port bebas pertama dari rentang ini. Rentang komputer kerja yang berbeda tidak boleh tumpang tindih.
NCCL_SOCKET_IFNAME. Antarmuka jaringan NCCL.
FILE_SYNC_INTERVAL. Interval sinkronisasi file dalam hitungan detik. 0 berarti sinkronisasi file tidak aktif
PEKERJA_USAGE_INTERVAL. Interval dalam hitungan detik penulisan penggunaan pekerja ke DB
INSTALL_DEPENDENCIES. Benar/Salah. Instal perpustakaan dependen atau tidak
SYNC_WITH_THIS_COMPUTER. Benar/Salah. Jika Salah, semua komputer kecuali komputer tersebut tidak akan disinkronkan dengan komputer tersebut
CAN_PROCESS_TASKS. Benar/Salah. Jika salah, komputer ini tidak memproses tugas
Anda dapat melihat antarmuka jaringan Anda dengan perintah ifconfig
. Silakan pertimbangkan dokumen nvidia