Repositori ini berisi kumpulan resep untuk Prodigy, alat anotasi skrip kami untuk teks, gambar, dan data lainnya. Untuk menggunakan repo ini, Anda memerlukan lisensi Prodigy – lihat halaman ini untuk lebih jelasnya. Untuk pertanyaan dan laporan bug, silakan gunakan Forum Dukungan Prodigy. Jika Anda menemukan kesalahan atau bug, silakan kirimkan permintaan penarikan.
Catatan penting: Resep dalam repositori ini tidak 100% identik dengan resep bawaan yang dikirimkan bersama Prodigy. Mereka telah diedit untuk memasukkan komentar dan informasi lebih lanjut, dan beberapa di antaranya telah disederhanakan untuk membuatnya lebih mudah untuk mengikuti apa yang terjadi, dan menggunakannya sebagai dasar resep khusus.
Setelah Prodigy diinstal, Anda seharusnya dapat menjalankan perintah prodigy
dari terminal Anda, baik secara langsung atau melalui python -m
:
python -m prodigy
Perintah prodigy
mencantumkan resep bawaan. Untuk menggunakan skrip resep khusus, cukup berikan jalur ke file menggunakan argumen -F
:
python -m prodigy ner.teach your_dataset en_core_web_sm ./data.jsonl --label PERSON -F prodigy-recipes/ner/ner_teach.py
Anda juga dapat menggunakan tanda --help
untuk ikhtisar argumen resep yang tersedia, misalnya prodigy ner.teach -F ner_teach_.py --help
.
Anda dapat mengedit kode dalam skrip resep untuk menyesuaikan perilaku Prodigy.
prefer_uncertain()
dengan prefer_high_scores()
.example
dicts, mengingat urutan tupel (score, example)
.update()
, untuk menyertakan logging tambahan atau fungsionalitas tambahan. Resep | Keterangan |
---|---|
ner.teach | Kumpulkan data pelatihan terbaik untuk model pengenalan entitas bernama dengan model dalam loop. Berdasarkan anotasi Anda, Prodigy akan memutuskan pertanyaan mana yang akan diajukan selanjutnya. |
ner.match | Sarankan frasa yang cocok dengan file pola tertentu, dan tandai apakah frasa tersebut merupakan contoh entitas yang Anda minati. File pola dapat menyertakan string atau pola token yang tepat untuk digunakan dengan Matcher spaCy. |
ner.manual | Tandai rentang secara manual dengan token. Hanya memerlukan tokenizer dan tidak ada pengenal entitas, dan tidak melakukan pembelajaran aktif apa pun. Secara opsional, pra-sorotan rentang berdasarkan pola. |
ner.fuzzy_manual | Seperti ner.manual tetapi gunakan FuzzyMatcher dari perpustakaan spaczz untuk menyorot kandidat terlebih dahulu. |
ner.manual.bert | Gunakan tokenizer potongan kata BERT untuk anotasi NER manual yang efisien untuk model transformator. |
ner.correct | Buat data standar emas dengan mengoreksi prediksi model secara manual. Resep ini dulunya disebut ner.make_gold . |
ner.silver-to-gold | Ambil kumpulan data "perak" yang ada dengan anotasi terima/tolak biner, gabungkan anotasi tersebut untuk menemukan analisis terbaik berdasarkan batasan yang ditentukan dalam anotasi, dan edit secara manual untuk membuat kumpulan data "emas" yang sempurna dan lengkap. |
ner.eval_ab | Evaluasi dua model NER dengan membandingkan prediksinya dan membuat kumpulan evaluasi dari aliran. |
ner_fuzzy_manual | Tandai rentang secara manual dengan token dengan saran dari pencocokan spaczz fuzzy yang telah disorot sebelumnya. |
Resep | Keterangan |
---|---|
textcat.manual | Memberi anotasi kategori yang berlaku pada teks secara manual. Mendukung tugas anotasi dengan label tunggal dan ganda. Beberapa label secara opsional dapat ditandai sebagai eksklusif. |
textcat.correct | Perbaiki prediksi model textcat secara manual. Prediksi di atas ambang batas penerimaan akan dipilih secara otomatis (0,5 secara default). Prodigy akan menyimpulkan apakah kategori tersebut harus saling eksklusif berdasarkan konfigurasi komponen. |
textcat.teach | Kumpulkan data pelatihan terbaik untuk model klasifikasi teks dengan model dalam loop. Berdasarkan anotasi Anda, Prodigy akan memutuskan pertanyaan mana yang akan diajukan selanjutnya. |
textcat.custom-model | Gunakan klasifikasi teks yang didukung pembelajaran aktif dengan model kustom. Untuk mendemonstrasikan cara kerjanya, resep demo ini menggunakan model dummy sederhana yang "memprediksi" skor acak. Namun Anda dapat menukarnya dengan model apa pun pilihan Anda, misalnya implementasi model klasifikasi teks menggunakan PyTorch, TensorFlow, atau scikit-learn. |
Resep | Keterangan |
---|---|
terms.teach | Bootstrap daftar terminologi dengan vektor kata dan istilah benih. Prodigy akan menyarankan istilah serupa berdasarkan vektor kata, dan memperbarui vektor target sesuai dengan itu. |
Resep | Keterangan |
---|---|
image.manual | Beri anotasi pada gambar secara manual dengan menggambar kotak pembatas persegi panjang atau bentuk poligon pada gambar. |
image-caption | Beri anotasi pada gambar dengan keterangan, isi terlebih dahulu keterangan dengan model keterangan gambar yang diterapkan di PyTorch dan lakukan analisis kesalahan. |
image.frozenmodel | Model dalam anotasi manual loop menggunakan API Deteksi Objek Tensorflow. |
image.servingmodel | Model dalam anotasi manual loop menggunakan API Deteksi Objek Tensorflow. Ini menggunakan Penyajian Tensorflow |
image.trainmodel | Anotasi dan pelatihan manual model dalam loop menggunakan API Deteksi Objek Tensorflow. |
Resep | Keterangan |
---|---|
mark | Klik melalui contoh yang telah disiapkan sebelumnya, tanpa ada model yang terlibat. |
choice | Beri anotasi pada data dengan opsi pilihan ganda. Contoh yang dianotasi akan memiliki properti tambahan "accept": [] yang dipetakan ke ID opsi yang dipilih. |
question_answering | Beri anotasi pada pasangan pertanyaan/jawaban dengan antarmuka HTML khusus. |
Resep | Pengarang | Keterangan |
---|---|---|
phrases.teach | @kabirkhan | Sekarang bagian dari sense2vec . |
phrases.to-patterns | @kabirkhan | Sekarang bagian dari sense2vec . |
records.link | @kabirkhan | Tautkan rekaman di beberapa kumpulan data menggunakan pustaka dedupe . |
Resep-resep ini telah muncul di salah satu tutorial kami.
Resep | Keterangan |
---|---|
span-and-textcat | Lakukan anotasi spancat dan textcat secara bersamaan. Bagus untuk chatbot! |
terms.from-ner | Hasilkan istilah dari anotasi NER sebelumnya. |
audio-with-transcript | Menangani anotasi audio manual dan transkripsi. |
progress | Demo update -panggilan balik yang melacak kecepatan anotasi. |
Untuk mempermudah memulainya, kami juga menyertakan beberapa example-datasets
, baik data mentah maupun data berisi anotasi yang dibuat dengan Prodigy. Untuk contoh pola pencocokan berbasis token untuk digunakan dengan resep seperti ner.teach
atau ner.match
, lihat direktori example-patterns
.