Weights and Bias telah menjadi salah satu perpustakaan favorit komunitas AI. Tim ini telah melakukan pekerjaan luar biasa dalam menciptakan platform tempat teknisi Machine Learning dapat dengan mudah:
-
Lacak eksperimennya
-
Visualisasikan proses pelatihan
-
Bagikan hasilnya dengan tim
-
Tingkatkan kinerja model
Secara pribadi saya mulai menggunakannya beberapa bulan yang lalu dan dengan cepat menjadi bagian individual dari semua proyek saya. Artikel ini merangkum pengalaman saya dengan perpustakaan dan bertujuan untuk menjadi tutorial lengkap tentang fitur-fiturnya yang paling berguna. Untuk mencapai hal tersebut, kita akan mengkaji bagaimana kita dapat mengintegrasikannya wandb
perpustakaan dalam proyek baru.
Bagaimana kalau kita mulai?
Prasyarat
Kami akan menggunakan model Pembelajaran Mendalam standar yang melakukan pengenalan gambar pada kumpulan data CIFAR10. Modelnya tidak terlalu memengaruhi eksperimen kami, jadi saya berpikir untuk membuatnya sesederhana mungkin. Model akan dilatih pada kumpulan data dari awal untuk mengeksplorasi bagaimana kita dapat memanfaatkannya wandb
perpustakaan.
Berikut adalah kode Pytorch untuk model kita beserta pemrosesan datanya:
import torch
import torch.nn as nn
import torch.nn.functional as F
import torchvision
import torchvision.transforms as transforms
transform = transforms.Compose(
(transforms.ToTensor(),
transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))))
trainset = torchvision.datasets.CIFAR10(root='./data', train=True,
download=True, transform=transform)
trainloader = torch.utils.data.DataLoader(trainset, batch_size=4,
shuffle=True, num_workers=2)
testset = torchvision.datasets.CIFAR10(root='./data', train=False,
download=True, transform=transform)
testloader = torch.utils.data.DataLoader(testset, batch_size=4,
shuffle=False, num_workers=2)
class Net(nn.Module):
def __init__(self):
super(Net, self).__init__()
self.conv1 = nn.Conv2d(3, 6, 5)
self.pool = nn.MaxPool2d(2, 2)
self.conv2 = nn.Conv2d(6, 16, 5)
self.fc1 = nn.Linear(16 * 5 * 5, 120)
self.fc2 = nn.Linear(120, 84)
self.fc3 = nn.Linear(84, 10)
def forward(self, x):
x = self.pool(F.relu(self.conv1(x)))
x = self.pool(F.relu(self.conv2(x)))
x = x.view(-1, 16 * 5 * 5)
x = F.relu(self.fc1(x))
x = F.relu(self.fc2(x))
x = self.fc3(x)
return x
Langkah pertama adalah menginstal perpustakaan dan membuat akun baru.
Instalasi dan inisialisasi
Jika Anda belum melakukannya, Anda perlu membuat akun baru agar dapat menggunakan Bobot dan Bias. Perpustakaan ini gratis untuk penggunaan pribadi tetapi dikenakan harga bulanan untuk tim. Anda dapat mengunjungi situs web dan mendaftar.
Setelah Anda melakukannya, Anda seharusnya dapat menginstalnya menggunakan pip
atau conda
. Setelah menginstal, Anda perlu mengautentikasi diri Anda sendiri. Hal ini dapat dilakukan dengan wandb login
memerintah. Anda akan diminta untuk menyalin dan menempelkan kunci otorisasi untuk melanjutkan.
$ conda install -c conda-forge wandb
$ wandb login
Perpustakaan dapat diinisialisasi dalam kode kita dengan init
metode yang menerima nama proyek opsional dan nama pengguna Anda, antara lain.
import wandb
wandb.init(project='test', entity='serkar')
Sekarang kita sudah siap, mari kita coba dan mengintegrasikan perpustakaan ke loop pelatihan kita.
Pelacakan eksperimen
Kegunaan utama dari wandb
perpustakaan adalah untuk melacak dan memvisualisasikan berbagai eksperimen pembelajaran mesin, proses pelatihan, hyperparameter, dan model. Mari kita lihat beberapa contoh.
Lacak metrik
Hal yang menakjubkan tentang pustaka Weights and Biases (W&B) adalah kemudahan penggunaannya. Dalam banyak kasus, ini sebenarnya adalah satu baris kode:
wandb.log(Hello)
Itu .log()
perintah akan menangkap semua argumen dan mengirimkannya ke instance W&B. Ini akan memungkinkan kita mengakses dan melacaknya dari UI. Anda dapat menemukan dasbor di situs web W&B di bawah proyek Anda.
Dalam aplikasi kita, contoh loop pelatihan dapat terlihat seperti di bawah ini:
for epoch in range(10):
running_loss = 0.0
for i, data in enumerate(trainloader, 0):
inputs, labels = data(0).to(device), data(1).to(device)
optimizer.zero_grad()
outputs = net(inputs)
loss = criterion(outputs, labels)
loss.backward()
optimizer.step()
running_loss += loss.item()
if i % 2000 == 1999:
print('(%d, %5d) loss: %.3f' %
(epoch + 1, i + 1, running_loss / 2000))
wandb.log(sobat)
running_loss = 0.0
print('Finished Training')
Apakah Anda memperhatikan wandb.log
garis? Dengan begitu, kami bisa memeriksa proses pelatihan secara real time. Hasilnya akan terlihat seperti ini:
Cukup mengagumkan, bukan?
Perintah lain yang juga bisa digunakan adalah wandb.watch
yang secara otomatis akan mengumpulkan gradien model dan topologi model.
wandb.watch(net, criterion, log="all")
Selain metrik yang ditentukan, kami juga dapat melacak banyak hal berguna lainnya seperti parameter yang dapat dilatih.
Atau gradiennya:
Salah satu fitur lain yang sangat membuat saya terkesan adalah sistem dashboard. Di sana, kita dapat memeriksa perangkat keras kita dan bagaimana perilaku berbagai komponen selama pelatihan. Misalnya, seseorang dapat memeriksa CPU, GPU, penggunaan memori, penggunaan daya, suhu, dan lainnya.
Setiap kali kita menjalankan skrip pelatihan, “jalankan” baru dibuat dan ditambahkan ke riwayat proyek. Setiap “jalankan” berisi informasi yang dicatat dengan metadata berbeda. Tentu saja kita dapat menjelajahi semua proses yang berbeda dalam satu dasbor.
Lacak hyperparameter
Selain metrik, W&B memiliki fungsi menarik lainnya yang memungkinkan kami melacak hyperparameter pelatihan kami. Itu wandb.config
objek digunakan untuk menyimpan konfigurasi pelatihan seperti hyperparameter. Tapi itu tidak terbatas pada mereka. Kami pada dasarnya dapat menyimpan setiap informasi yang kami inginkan. Contohnya meliputi: nama kumpulan data, tipe model, dan tanda.
Konfigurasi dapat diinisialisasi seperti ini:
config = wandb.config
config.learning_rate = 0.01
config.momentum = 0.9
Untuk konfigurasi yang rumit, kita juga bisa menggunakan file yaml atau kamus python.
Semua nilai ini dapat digunakan untuk menganalisis eksperimen dan mereproduksi hasilnya. Di dasbor berikut, kita dapat melihat lima “berjalan” dengan hyperparameternya. Perhatikan bahwa kita dapat menggunakan nilai konfigurasi untuk mengelompokkan, memfilter, atau mengurutkannya.
Visualisasikan modelnya
Jika kita menggunakan hal di atas watch
perintah, kita juga dapat memeriksa topologi model di dashboard model. Dalam kasus kami, modelnya akan terlihat seperti ini:
Periksa log
Hal yang sama juga berlaku untuk log sebenarnya yang dicetak di konsol lokal kami:
Pembuatan Versi Data dan Model
Selain pelacakan eksperimen, W&B memiliki sistem versi bawaan. Artefak adalah entitas utama menuju tujuan tersebut. Artefak mengaktifkan pembuatan versi kumpulan data, pembuatan versi model, dan pelacakan dependensi.
Artefak tidak lebih dari folder data berversi. Mari kita periksa contoh menggunakan proyek kita. Untuk membuat versi kumpulan data kita, yang harus kita lakukan hanyalah membuat artefak dan mengunggahnya.
cifar10_artifact = wandb.Artifact("cifar10", type="dataset")
file_path = './data/cifar-10-batches-py'
cifar10_artifact.add_dir(file_path)
run.log_artifact(cifar10_artifact)
Anda dapat membayangkan hal serupa dapat dilakukan untuk membuat versi model atau dependensi. Perlu disebutkan bahwa alih-alih menggunakan seluruh kumpulan data, kita dapat membuat artefak dengan referensi eksternal objek seperti di bawah ini:
artifact.add_reference('s3://my-bucket/my_dataset)
Mengunduh dan menggunakan artefak yang sudah diunggah dalam kode kami juga mudah:
artifact = run.use_artifact('cifar10_artifact')
artifact_dir = artifact.download()
Penyetelan Hyperparameter dengan Sapuan
Weights & Biases Sweeps adalah alat untuk mengotomatiskan pengoptimalan dan eksplorasi hyperparameter. Ini menghilangkan sebagian besar kode boilerplate dan dilengkapi dengan visualisasi yang sangat bagus. Mari kita jelajahi bagaimana kita dapat memanfaatkan Sweep dalam proyek kita.
Dalam kasus penggunaan kami, kami ingin menyesuaikan 4 parameter berbeda: ukuran lapisan linier terakhir dalam model, ukuran batch, kecepatan pembelajaran, dan algoritme pengoptimalan. Untuk mencapai hal ini, pertama-tama kita perlu membuat konfigurasi dengan opsi berbeda. Berikut ini contoh konfigurasi:
sweep_config = hanya
Pertama kita mendefinisikan metode tuning yang merupakan strategi pencarian. Kami memiliki 3 opsi: pencarian acak, pencarian grid, dan pencarian bayes. Metrik adalah tujuan akhir yang harus diminimalkan. Terakhir, parameter mengacu pada hyperparameter yang akan dicari oleh Sweeps. Seperti yang Anda lihat, kami akan menyetel yang berikut ini:
-
Ukuran batch yang akan dimasukkan (catatan(32), catatan(256)) jangkauan. Pemilihan ukuran batch akan mengikuti distribusi keseragaman log terkuantisasi. Pilihan lain juga tersedia.
-
Jumlah epoch yang harus selalu sama dengan 5.
-
Ukuran lapisan linier terakhir menjadi 128, 256 atau 512.
-
Kecepatan pembelajaran berada di (0, 0,1) jangkauan mengikuti distribusi seragam
-
Pengoptimalnya adalah SGD atau Adam.
Sapu akan mencoba semua kombinasi berbeda dan menghitung kerugian untuk masing-masing kombinasi. Sapuan dapat diinisialisasi menggunakan:
sweep_id = wandb.sweep(sweep_config, project="test")
Loop pelatihan kemudian harus diubah untuk membaca dari konfigurasi yang telah ditentukan sebelumnya. Lihatlah kode berikut:
def train(config=None):
with wandb.init(project='test', entity='serkar', config=config):
config = wandb.config
transform = transforms.Compose(
(transforms.ToTensor(),
transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))))
trainset = torchvision.datasets.CIFAR10(root='./data', train=True,
download=True, transform=transform)
trainloader = torch.utils.data.DataLoader(trainset, batch_size=config.batch_size,
shuffle=True, num_workers=2)
testset = torchvision.datasets.CIFAR10(root='./data', train=False,
download=True, transform=transform)
net = Net(config.fc_layer_size)
net.to(device)
criterion = nn.CrossEntropyLoss()
optimizer = optim.SGD(net.parameters(), lr=config.learning_rate)
if config.optimizer == "sgd":
optimizer = optim.SGD(net.parameters(),
lr=config.learning_rate, momentum=0.9)
elif optimizer == "adam":
optimizer = optim.Adam(net.parameters(),
lr=config.learning_rate)
wandb.watch(net, criterion, log="all")
for epoch in range(config.epochs):
running_loss = 0.0
for i, data in enumerate(trainloader, 0):
inputs, labels = data(0).to(device), data(1).to(device)
optimizer.zero_grad()
outputs = net(inputs)
loss = criterion(outputs, labels)
loss.backward()
optimizer.step()
running_loss += loss.item()
print('(%d, %5d) loss: %.3f' %
(epoch + 1, i + 1, running_loss / len(trainloader)))
wandb.log(jika)
print('Finished Training')
Dua hal yang perlu diperhatikan di sini:
-
Lingkaran pelatihan sedang dibungkus
with wandb.init(project='test', entity='serkar', config=config)
. Itu cara lain untuk mengikat perpustakaan W&B dengan kode kita. -
Kami membaca konfigurasi menggunakan
config = wandb.config
lalu kita meneruskan setiap parameter dalam kode pelatihan. Kita harus memastikan bahwa hyperparameter yang digunakan berasal dari file konfigurasi agar Sweeps dapat dijalankan dengan baik.
Akhirnya kita bisa menjalankan tuning dengan perintah di bawah ini.
wandb.agent(sweep_id, function=train, count=5)
Ini menginstruksikan Sweeps untuk menjalankan fungsi kereta hanya 5 kali dengan memilih 5 kombinasi hyperparameter acak. Hasilnya diilustrasikan di bawah ini:
Perhatikan bahwa kami memperoleh hasil terbaik untuk kumpulan hyperparameter berikut:
-
Ukuran kumpulan = 55
-
Ukuran lapisan linier = 256
-
Kecepatan pembelajaran = 0,02131
-
Pengoptimal = SGD
Dengan menggunakan kombinasi ini, kerugiannya menjadi 0,003.
Bagan lain yang sangat keren adalah yang berikut ini:
Di sini kita memeriksa parameter apa yang memiliki dampak kerugian lebih tinggi dan bagaimana caranya. Ini disebut plot kepentingan hyperparameter. Ini menunjukkan hyperparameter mana yang merupakan prediktor terbaik dari metrik kami. Kepentingan fitur diperoleh dengan menggunakan model hutan acak dan korelasinya menggunakan model linier.
Visualisasi data
Fitur lain yang sangat saya nikmati adalah visualisasi data. W&B memungkinkan kita menentukan tabel data dan memvisualisasikannya di platform. Tabel dapat terdiri dari hampir semua hal: data seperti gambar, teks atau audio, gradien, parameter yang dapat dilatih, dll. Selain visualisasi, kita juga dapat memfilter, mengurutkan, mengelompokkan, dan secara umum menjelajahi data.
Untuk memperjelasnya, kami akan menyajikan contoh sederhana. Mari kita buat tabel kecil dengan semua gambar dari kumpulan pertama data kita dan labelnya. Membuat tabel dapat dilakukan dengan menggunakan wandb.Table
kelas. Untuk menyinkronkan tabel, kita harus mencatatnya.
classes = ('plane', 'car', 'bird', 'cat',
'deer', 'dog', 'frog', 'horse', 'ship', 'truck')
columns=('image','label')
data = ()
for i, batch in enumerate(trainloader, 0):
inputs, labels = batch(0), batch(1)
for j, image in enumerate(inputs,0):
data.append((wandb.Image(image),classes(labels(j).item())))
break
table= wandb.Table(data=data, columns=columns)
run.log(belum)
Perhatikan bahwa kami menggunakan tipe data bawaan wandb.Image
sehingga kita dapat melihat pratinjau gambarnya. Setelah kita menjalankan kode di atas, kita dapat memeriksa tabel kita di dashboard.
Anda dapat membayangkan bahwa dengan menggunakan logika yang sama, kita dapat memvisualisasikan apa saja secara praktis.
Laporan
Terakhir, saya ingin menutup tutorial ini dengan fitur yang lebih ditujukan untuk tim. Laporan. Laporan memungkinkan kami, para pengembang, mengatur berbagai visualisasi, mengomunikasikan hasil, dan mendokumentasikan pekerjaan kami.
W&B menyediakan editor WYSIWYG dengan banyak fitur. Ini mendukung penurunan harga dan lateks untuk teks, cuplikan kode, serta berbagai bagan lainnya. Contohnya meliputi: plot garis, plot batang, plot sebar, dan lainnya. Tim bekerja keras untuk menambahkan lebih banyak fungsi seperti video tersemat, html, audio, dan lainnya.
Laporan dapat dibagikan dan diedit oleh orang lain sehingga memungkinkan kolaborasi penuh di antara rekan-rekan kita.
Kesimpulan
Dan itu mengakhiri perjalanan kita di perpustakaan Bobot dan Bias. W&B telah menjadi salah satu favorit pribadi saya dan telah meningkatkan alur kerja saya secara signifikan. Saya sangat menyarankan Anda mencobanya jika Anda belum melakukannya. Detail lebih lanjut dapat Anda temukan di dokumentasi mereka, yang ditulis dengan sangat baik. Banyak contoh juga disediakan di repositori Github mereka.
Bersenang-senang bermain-main dengannya. Beri tahu kami jika Anda memiliki pertanyaan atau jika Anda ingin kami membahas W&B lebih detail di masa mendatang. Seperti biasa, silakan bagikan artikel ini jika Anda merasa bermanfaat. Sangat penting bagi kami untuk terus menulis konten.
* Pengungkapan: Harap dicatat bahwa beberapa tautan di atas mungkin merupakan tautan afiliasi, dan tanpa biaya tambahan kepada Anda, kami akan mendapat komisi jika Anda memutuskan untuk melakukan pembelian setelah mengklik.
ADVERTISEMENT:
bersiaplah, cinta sama program slot gacor merupakan slot selalu? memberi kemenangan, Ya jatuh slot-slot dikatakan adalah ini. andalannya buat mesin bawa yang pulang hasil. tapi. gimana,
tekniknya ini bisa jumpain slot demo benar Santuy Bro bahas tenang aja, di sini sih Game terpercaya waktu yang sekarang? satu-satunya di, kita yaitu yang memberikan ROI
terbesar Daftar hanya hanya satu di hanya di Indonesia yang menyediakan ROI tertinggi Daftarkanlah
hanya hanya di :
Informasi mengenai KING SLOT, Segera Daftar Bersama king selot terbaik dan terpercaya no satu di Indonesia. Boleh mendaftar melalui sini king slot serta memberikan hasil kembali yang paling tinggi saat sekarang ini hanyalah KING SLOT atau Raja slot paling gacor, gilak dan gaco saat sekarang di Indonesia melalui program return tinggi di kingselot serta pg king slot
slot demo gacor
slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun demo slot gacor
akun demo slot gacor permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun slot demo gacor
akun slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun demo slot pragmatic
akun demo slot pragmatic permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun slot demo pragmatic
akun slot demo pragmatic permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun slot demo
akun slot demo permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun demo slot
akun demo slot permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
slot demo gacor
slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun demo slot gacor
akun demo slot gacor permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun slot demo gacor
akun slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun demo slot pragmatic
akun demo slot pragmatic permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun slot demo pragmatic
akun slot demo pragmatic permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun slot demo
akun slot demo permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun demo slot
akun demo slot permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
slot demo gacor
slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun demo slot gacor
akun demo slot gacor permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun slot demo gacor
akun slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun demo slot pragmatic
akun demo slot pragmatic permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun slot demo pragmatic
akun slot demo pragmatic permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun slot demo
akun slot demo permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun demo slot
akun demo slot permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
slot demo gacor
slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun demo slot gacor
akun demo slot gacor permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun slot demo gacor
akun slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun demo slot pragmatic
akun demo slot pragmatic permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun slot demo pragmatic
akun slot demo pragmatic permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun slot demo
akun slot demo permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun demo slot
akun demo slot permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
situs slot terbaru
situs slot terbaru permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
slot terbaru
slot terbaru permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
lembagatoto88 permainan paling top dan garansi imbal balik hasil besar bersama lembagatoto88.com
lumbung888 permainan paling top dan garansi imbal balik hasil besar bersama lumbung888.biz
anadototo88 permainan paling top dan garansi imbal balik hasil besar bersama anadototo88.org
mataramtoto88 permainan paling top dan garansi imbal balik hasil besar bersama mataramtoto88.com
mawartoto88 permainan paling top dan garansi imbal balik hasil besar bersama mawartoto88.biz
maxim88 permainan paling top dan garansi imbal balik hasil besar bersama maxim88.org
mpovegas88 permainan paling top dan garansi imbal balik hasil besar bersama mpovegas88.com
nagacc88 permainan paling top dan garansi imbal balik hasil besar bersama nagacc88.com
neng88 permainan paling top dan garansi imbal balik hasil besar bersama neng88.biz
nibung888 permainan paling top dan garansi imbal balik hasil besar bersama nibung888.biz
paristogel88 permainan paling top dan garansi imbal balik hasil besar bersama paristogel88.info
ribut88 permainan paling top dan garansi imbal balik hasil besar bersama ribut88.net
sebat777 permainan paling top dan garansi imbal balik hasil besar bersama sebat777.info
sebat88 permainan paling top dan garansi imbal balik hasil besar bersama sebat88.info
singa88 permainan paling top dan garansi imbal balik hasil besar bersama singa88.biz
texas888 permainan paling top dan garansi imbal balik hasil besar bersama texas888.asia
vertu777 permainan paling top dan garansi imbal balik hasil besar bersama vertu777.org
wks88 permainan paling top dan garansi imbal balik hasil besar bersama wks88.org
wortel88 permainan paling top dan garansi imbal balik hasil besar bersama wortel88.net
yabos888 permainan paling top dan garansi imbal balik hasil besar bersama yabos888.net
yoktogel88 permainan paling top dan garansi imbal balik hasil besar bersama yoktogel88.asia
agam88 permainan paling top dan garansi imbal balik hasil besar bersama agam88.asia
bangkittoto permainan paling top dan garansi imbal balik hasil besar bersama bangkittoto.net
bangor88 permainan paling top dan garansi imbal balik hasil besar bersama bangor88.com
bangor88 permainan paling top dan garansi imbal balik hasil besar bersama bangor88.info
bangor88 permainan paling top dan garansi imbal balik hasil besar bersama bangor88.net
bangor88 permainan paling top dan garansi imbal balik hasil besar bersama bangor88.org
belanjatoto permainan paling top dan garansi imbal balik hasil besar bersama belanjatoto.org
bisnis88 permainan paling top dan garansi imbal balik hasil besar bersama bisnis88.biz
blibli88 permainan paling top dan garansi imbal balik hasil besar bersama blibli88.com
blibli88 permainan paling top dan garansi imbal balik hasil besar bersama blibli88.info
blibli88 permainan paling top dan garansi imbal balik hasil besar bersama blibli88.net
blibli88 permainan paling top dan garansi imbal balik hasil besar bersama blibli88.org
btstoto88 permainan paling top dan garansi imbal balik hasil besar bersama btstoto88.com
btstoto88 permainan paling top dan garansi imbal balik hasil besar bersama btstoto88.info
btstoto88 permainan paling top dan garansi imbal balik hasil besar bersama btstoto88.net
btstoto88 permainan paling top dan garansi imbal balik hasil besar bersama btstoto88.org
cendanatoto88 permainan paling top dan garansi imbal balik hasil besar bersama cendanatoto88.com
cupang88 permainan paling top dan garansi imbal balik hasil besar bersama cupang88.biz
cupangjp88 permainan paling top dan garansi imbal balik hasil besar bersama cupangjp88.com
danatoto88 permainan paling top dan garansi imbal balik hasil besar bersama danatoto88.biz
danatoto88slot permainan paling top dan garansi imbal balik hasil besar bersama danatoto88slot.net
davo888 permainan paling top dan garansi imbal balik hasil besar bersama davo888.biz
dewasurga888 permainan paling top dan garansi imbal balik hasil besar bersama dewasurga888.biz
dhx88 permainan paling top dan garansi imbal balik hasil besar bersama dhx88.biz
dingdongtogel88 permainan paling top dan garansi imbal balik hasil besar bersama dingdongtogel88.biz
egp888 permainan paling top dan garansi imbal balik hasil besar bersama egp888.biz
eropa88 permainan paling top dan garansi imbal balik hasil besar bersama eropa88.biz
forwin777 permainan paling top dan garansi imbal balik hasil besar bersama forwin777.biz
forwin88 permainan paling top dan garansi imbal balik hasil besar bersama forwin88.net
gacor222 permainan paling top dan garansi imbal balik hasil besar bersama gacor222.biz
galaxy777 permainan paling top dan garansi imbal balik hasil besar bersama galaxy777.asia
garuda88 permainan paling top dan garansi imbal balik hasil besar bersama garuda88.biz
gaul88 permainan paling top dan garansi imbal balik hasil besar bersama gaul88.biz
glowin888 permainan paling top dan garansi imbal balik hasil besar bersama glowin888.biz
gopay88 permainan paling top dan garansi imbal balik hasil besar bersama gopay88.biz
harum88 permainan paling top dan garansi imbal balik hasil besar bersama harum88.biz
harumtoto permainan paling top dan garansi imbal balik hasil besar bersama harumtoto.net
hiu88 permainan paling top dan garansi imbal balik hasil besar bersama hiu88.biz
hiutoto permainan paling top dan garansi imbal balik hasil besar bersama hiutoto.biz
hoki117 permainan paling top dan garansi imbal balik hasil besar bersama hoki117.net
ibetslot88 permainan paling top dan garansi imbal balik hasil besar bersama ibetslot88.biz
idhoki888 permainan paling top dan garansi imbal balik hasil besar bersama idhoki888.com
indosport999 permainan paling top dan garansi imbal balik hasil besar bersama indosport999.net
jackpot10 permainan paling top dan garansi imbal balik hasil besar bersama jackpot10.net
jago77 permainan paling top dan garansi imbal balik hasil besar bersama jago77.biz
jet88 permainan paling top dan garansi imbal balik hasil besar bersama jet88.biz
jinbei88 permainan paling top dan garansi imbal balik hasil besar bersama jinbei88.biz
juliet88 permainan paling top dan garansi imbal balik hasil besar bersama juliet88.org
kakekslot88 permainan paling top dan garansi imbal balik hasil besar bersama kakekslot88.asia
kenzo118 permainan paling top dan garansi imbal balik hasil besar bersama kenzo118.biz
kiw88 permainan paling top dan garansi imbal balik hasil besar bersama kiw88.biz
lazada88 permainan paling top dan garansi imbal balik hasil besar bersama lazada88.biz
mangga2bet88 permainan paling top dan garansi imbal balik hasil besar bersama mangga2bet88.com
mental88 permainan paling top dan garansi imbal balik hasil besar bersama mental88.org
nenektogel88 permainan paling top dan garansi imbal balik hasil besar bersama nenektogel88.com
obc88 permainan paling top dan garansi imbal balik hasil besar bersama obc88.net
parsel88 permainan paling top dan garansi imbal balik hasil besar bersama parsel88.com
pasar88 permainan paling top dan garansi imbal balik hasil besar bersama pasar88.biz
pilar100 permainan paling top dan garansi imbal balik hasil besar bersama pilar100.net
power88 permainan paling top dan garansi imbal balik hasil besar bersama power88.biz
pragmatic7777 permainan paling top dan garansi imbal balik hasil besar bersama pragmatic7777.com
pragmaticid88 permainan paling top dan garansi imbal balik hasil besar bersama pragmaticid88.com
pragmaticid88 permainan paling top dan garansi imbal balik hasil besar bersama pragmaticid88.info
pragmaticid88 permainan paling top dan garansi imbal balik hasil besar bersama pragmaticid88.net
pragmaticid88 permainan paling top dan garansi imbal balik hasil besar bersama pragmaticid88.org
premantoto88 permainan paling top dan garansi imbal balik hasil besar bersama premantoto88.com
pucuk88 permainan paling top dan garansi imbal balik hasil besar bersama pucuk88.biz
pucuktoto permainan paling top dan garansi imbal balik hasil besar bersama pucuktoto.biz
pusat88 permainan paling top dan garansi imbal balik hasil besar bersama pusat88.biz
raja228 permainan paling top dan garansi imbal balik hasil besar bersama raja228.biz
rajabandot88 permainan paling top dan garansi imbal balik hasil besar bersama rajabandot88.biz
rajapanen88 permainan paling top dan garansi imbal balik hasil besar bersama rajapanen88.net
rogtoto88 permainan paling top dan garansi imbal balik hasil besar bersama rogtoto88.net
sdtoto88 permainan paling top dan garansi imbal balik hasil besar bersama sdtoto88.biz
semangat88 permainan paling top dan garansi imbal balik hasil besar bersama semangat88.biz
sensasi555 permainan paling top dan garansi imbal balik hasil besar bersama sensasi555.net
sensasi88 permainan paling top dan garansi imbal balik hasil besar bersama sensasi88.biz
simenang88slot permainan paling top dan garansi imbal balik hasil besar bersama simenang88slot.com
slotter999 permainan paling top dan garansi imbal balik hasil besar bersama slotter999.net
slottoto88 permainan paling top dan garansi imbal balik hasil besar bersama slottoto88.org