Lingvo adalah kerangka kerja untuk membangun jaringan saraf di TensorFlow, khususnya model urutan.
Daftar publikasi menggunakan Lingvo dapat ditemukan di sini.
| Versi PYPI | Melakukan |
|---|---|
| 0.12.4 | - |
| 0.11.0 | 6FAE10077756F54BEACD5C454959F20B33FD65E2 |
| 0.10.0 | 075FD1D88FA6F92681F58A2383264337D0E737EE |
| 0.9.1 | C1124C5AA7AF13D2DD2B6D43293C8CA6D022B008 |
| 0.9.0 | F826E99803D1B51DCCBBBED1EF857BA48A2BBEFE |
| Versi PYPI | Melakukan |
|---|---|
| 0.8.2 | 93E123C6788E934E6B7B1FD85770371BECF1E92E |
| 0.7.2 | B05642FE386EE79E0D88AA083565C9A93428519E |
Detail untuk rilis yang lebih lama tidak tersedia.
Catatan: Ini bukan daftar yang komprehensif. Rilis Lingvo tidak menawarkan jaminan apa pun tentang kompatibilitas ke belakang.
Tidak ada di sini.
beam_done .done_hyps . abc.ABCMeta sekarang harus memperluas base_layer.ABCLayerMeta sebagai gantinya.__init__ sekarang menimbulkan kesalahan.base_layer.initializer telah dihapus. Subkelas tidak perlu lagi mendekorasi fungsi __init__ mereka.__init__ atau _CreateLayerVariables sekarang menimbulkan kesalahan.__init__ . Refactor dengan memindahkan kreasi variabel dan akses ke _CreateLayerVariables . Lingkup variabel diatur secara otomatis sesuai dengan nama layer di _CreateLayerVariables .Detail untuk rilis yang lebih lama tidak tersedia.
Ada dua cara untuk mengatur Lingvo: Memasang versi tetap melalui PIP, atau mengkloning repositori dan membangunnya dengan Bazel. Konfigurasi Docker disediakan untuk setiap kasus.
Jika Anda hanya ingin menggunakan kerangka kerja apa adanya, paling mudah untuk hanya menginstalnya melalui PIP. Ini memungkinkan untuk mengembangkan dan melatih model khusus menggunakan versi beku dari kerangka kerja Lingvo. Namun, sulit untuk memodifikasi kode kerangka kerja atau mengimplementasikan OP khusus baru.
Jika Anda ingin mengembangkan kerangka kerja lebih lanjut dan berpotensi berkontribusi permintaan tarik, Anda harus menghindari menggunakan PIP dan mengkloning repositori.
Pip:
Paket Lingvo Pip dapat diinstal dengan pip3 install lingvo .
Lihat codelab untuk bagaimana memulai dengan paket PIP.
Dari sumber:
Prasyaratnya adalah:
C++ (hanya G ++ 7.3 yang secara resmi didukung), danLihat Docker/dev.dockerfile untuk serangkaian persyaratan kerja.
git clone repositori, lalu gunakan bazel untuk membangun dan menjalankan target secara langsung. Perintah python -m module di Codelab perlu dipetakan ke perintah bazel run .
buruh pelabuhan:
Konfigurasi Docker tersedia untuk kedua situasi. Instruksi dapat ditemukan di komentar di bagian atas setiap file.
Cara menginstal Docker.
Pip:
mkdir -p /tmp/mnist
python3 -m lingvo.tools.keras2ckpt --dataset=mnistBazel:
mkdir -p /tmp/mnist
bazel run -c opt //lingvo/tools:keras2ckpt -- --dataset=mnist File berikut akan dibuat di /tmp/mnist :
mnist.data-00000-of-00001 : 53MB.mnist.index : 241 byte. Pip:
cd /tmp/mnist
curl -O https://raw.githubusercontent.com/tensorflow/lingvo/master/lingvo/tasks/image/params/mnist.py
python3 -m lingvo.trainer --run_locally=cpu --mode=sync --model=mnist.LeNet5 --logdir=/tmp/mnist/logBazel:
(cpu) bazel build -c opt //lingvo:trainer
(gpu) bazel build -c opt --config=cuda //lingvo:trainer
bazel-bin/lingvo/trainer --run_locally=cpu --mode=sync --model=image.mnist.LeNet5 --logdir=/tmp/mnist/log --logtostderrSetelah sekitar 20 detik, kerugian akan turun di bawah 0,3 dan pos pemeriksaan akan disimpan, seperti di bawah ini. Bunuh pelatih dengan Ctrl+c.
trainer.py:518] step: 205, steps/sec: 11.64 ... loss:0.25747201 ...
checkpointer.py:115] Save checkpoint
checkpointer.py:117] Save checkpoint done: /tmp/mnist/log/train/ckpt-00000205
Beberapa artefak akan diproduksi di /tmp/mnist/log/control :
params.txt : Hyper-parameter.model_analysis.txt : ukuran model untuk setiap lapisan.train.pbtxt : pelatihan tf.GraphDef .events.* : File Acara Tensorboard. Serta in /tmp/mnist/log/train :
checkpoint : File teks yang berisi informasi tentang file pos pemeriksaan.ckpt-* : File pos pemeriksaan.Sekarang, mari kita evaluasi model pada dataset "tes". Dalam pengaturan pelatihan normal, pelatih dan evaler harus dijalankan bersamaan dengan dua proses terpisah.
Pip:
python3 -m lingvo.trainer --job=evaler_test --run_locally=cpu --mode=sync --model=mnist.LeNet5 --logdir=/tmp/mnist/logBazel:
bazel-bin/lingvo/trainer --job=evaler_test --run_locally=cpu --mode=sync --model=image.mnist.LeNet5 --logdir=/tmp/mnist/log --logtostderrBunuh pekerjaan dengan Ctrl+C ketika mulai menunggu pos pemeriksaan baru.
base_runner.py:177] No new check point is found: /tmp/mnist/log/train/ckpt-00000205
Akurasi evaluasi dapat ditemukan sedikit lebih awal pada log.
base_runner.py:111] eval_test: step: 205, acc5: 0.99775392, accuracy: 0.94150388, ..., loss: 0.20770954, ...
Untuk menjalankan model yang lebih rumit, Anda akan membutuhkan cluster dengan GPU. Silakan merujuk ke third_party/py/lingvo/tasks/mt/README.md untuk informasi lebih lanjut.
Untuk melatih model bahasa GShard dengan satu triliun parameter pada GCP menggunakan CloudTPUS V3-512 menggunakan paralelisme model 512-arah, silakan merujuk ke third_party/py/lingvo/tasks/lm/README.md untuk informasi lebih lanjut.
Untuk menjalankan model Starnet menggunakan CloudTpus di GCP, silakan merujuk ke third_party/py/lingvo/tasks/car/README.md .
Dengarkan, hadir dan mantap.
William Chan, Navdeep Jaitly, Quoc V. Le, dan Oriol Vinyals. ICASSP 2016.
Pengenalan ucapan terus menerus end-to-end menggunakan NN berulang berbasis perhatian: Hasil Pertama.
Jan Chorowski, Dzmitry Bahdanau, Kyunghyun Cho, dan Yoshua Bengio. ARXIV 2014.
DeepFusion: Fusi Depi Lidar-Camera untuk deteksi objek 3D multi-modal.
Yingwei Li, Adams Wei Yu, Tianjian Meng, Ben Caine, Jiquan Ngiam, Daiyi Peng, Junyang Shen, Bo Wu, Yifeng Lu, Denny Zhou, Quoc V. Le, Alan Yuille, Mingxing Tan. CVPR 2022.
Starnet: Perhitungan yang ditargetkan untuk deteksi objek di awan titik.
Jiquan Ngiam, Benjamin Caine, Wei Han, Brandon Yang, Yuning Chai, Pei Sun, Yin Zhou, Xi Yi, Ouais Alsharif, Patrick Nguyen, Zhifeng Chen, Jonathon Shlens, dan Vasudevan. ARXIV 2019.
Pembelajaran berbasis gradien diterapkan untuk pengakuan dokumen.
Yann Lecun, Leon Bottou, Yoshua Bengio, dan Patrick Haffner. IEEE 1998.
Menjelajahi batas pemodelan bahasa.
Rafal Jozefowicz, Oriol Vinyals, Mike Schuster, Noam Shazeer, dan Yonghui Wu. Arxiv, 2016.
GShard: Model raksasa penskalaan dengan perhitungan bersyarat dan sharding otomatis.
Dmitry Lepikhin, Hyoukjoong Lee, Yuanzhong Xu, Dehao Chen, Orhan Firat, Yanping Huang, Maxim Krikun, Noam Shazeer dan Zhifeng Chen Arxiv, 2020.
Yang terbaik dari kedua dunia: menggabungkan kemajuan terbaru dalam terjemahan mesin saraf.
Mia X. Chen, Orhan Firat, Ankur Bapna, Melvin Johnson, Wolfgang Macherey, George Foster, Llion Jones, Mike Schuster, Noam Shazeer, Niki Parmar, Ashish Vaswani, Jakob Uszkoreit, Lukasz Kaiser, Zhifeng Chen, Yonghui Wu, and Macduff Hughes. ACL 2018.
Pelatihan bersama yang diawasi sendiri dan diawasi untuk terjemahan mesin saraf yang kaya sumber daya.
Yong Cheng, Wei Wang, Lu Jiang, dan Wolfgang Macherey. ICML 2021.
Harap kutip makalah ini saat merujuk Lingvo.
@misc{shen2019lingvo,
title={Lingvo: a Modular and Scalable Framework for Sequence-to-Sequence Modeling},
author={Jonathan Shen and Patrick Nguyen and Yonghui Wu and Zhifeng Chen and others},
year={2019},
eprint={1902.08295},
archivePrefix={arXiv},
primaryClass={cs.LG}
}
Lisensi Apache 2.0