
Dalam beberapa tahun terakhir, Natural Language Processing (NLP) telah melihat pertumbuhan cepat dalam kualitas dan kegunaan, dan ini telah membantu mendorong adopsi bisnis solusi buatan (AI) solusi. Dalam beberapa tahun terakhir, para peneliti telah menerapkan metode pembelajaran mendalam yang lebih baru untuk NLP. Data para ilmuwan mulai bergerak dari metode tradisional ke algoritma jaringan saraf deep canggih (SOTA) yang menggunakan model bahasa yang diatur pada korpora teks besar.
Repositori ini berisi contoh dan praktik terbaik untuk membangun sistem NLP, disediakan sebagai buku catatan Jupyter dan fungsi utilitas. Fokus repositori adalah pada metode canggih dan skenario umum yang populer di kalangan peneliti dan praktisi yang bekerja pada masalah yang melibatkan teks dan bahasa.
Tujuan dari repositori ini adalah untuk membangun serangkaian alat dan contoh yang komprehensif yang memanfaatkan kemajuan terbaru dalam algoritma NLP, arsitektur saraf, dan sistem pembelajaran mesin terdistribusi. Konten ini didasarkan pada keterlibatan masa lalu dan potensi masa depan kami dengan pelanggan serta kolaborasi dengan mitra, peneliti, dan komunitas open source.
Kami berharap bahwa alat -alat tersebut dapat secara signifikan mengurangi "waktu untuk memasarkan" dengan menyederhanakan pengalaman dari mendefinisikan masalah bisnis hingga pengembangan solusi dengan pesanan besarnya. Selain itu, contoh notebook akan berfungsi sebagai pedoman dan menampilkan praktik terbaik dan penggunaan alat dalam berbagai bahasa.
Di era pembelajaran transfer, transformator, dan arsitektur yang mendalam, kami percaya bahwa model pretrained memberikan solusi terpadu untuk banyak masalah dunia nyata dan memungkinkan penanganan tugas dan bahasa yang berbeda dengan mudah. Oleh karena itu, kami akan memprioritaskan model-model seperti itu, karena mereka mencapai hasil canggih pada beberapa tolok ukur NLP seperti papan perekam dan perampokan . Model dapat digunakan dalam sejumlah aplikasi mulai dari klasifikasi teks sederhana hingga bot obrolan cerdas yang canggih.
Perhatikan bahwa untuk jenis masalah NLP tertentu, Anda mungkin tidak perlu membangun model Anda sendiri. Sebaliknya, ada solusi yang sudah dibangun atau mudah disesuaikan yang tidak memerlukan pengkodean khusus atau keahlian pembelajaran mesin. Kami sangat menyarankan mengevaluasi jika ini dapat menyelesaikan masalah Anda secara memadai. Jika solusi ini tidak berlaku, atau keakuratan solusi ini tidak cukup, maka menggunakan pendekatan khusus yang lebih kompleks dan memakan waktu mungkin diperlukan. Layanan kognitif berikut menawarkan solusi sederhana untuk mengatasi tugas NLP umum:
Analisis teks adalah seperangkat API REST terlatih yang dapat dipanggil untuk analisis sentimen, ekstraksi frasa kunci, deteksi bahasa dan deteksi entitas yang disebut dan banyak lagi. API ini bekerja di luar kotak dan membutuhkan keahlian minimal dalam pembelajaran mesin, tetapi memiliki kemampuan kustomisasi yang terbatas.
QNA Maker adalah layanan API berbasis cloud yang memungkinkan Anda membuat lapisan tanya jawab percakapan atas data Anda yang ada. Gunakan untuk membangun basis pengetahuan dengan mengekstraksi pertanyaan dan jawaban dari konten semi-terstruktur Anda, termasuk FAQ, manual, dan dokumen.
Pemahaman bahasa adalah layanan SaaS untuk melatih dan menggunakan model sebagai API REST yang diberikan set pelatihan yang disediakan pengguna. Anda dapat melakukan klasifikasi niat serta ekstraksi entitas yang disebutkan dengan melakukan langkah -langkah sederhana untuk memberikan contoh ucapan dan memberi label. Ini mendukung pembelajaran aktif, sehingga model Anda selalu terus belajar dan meningkatkan.
Untuk repositori ini, audiens target kami termasuk para ilmuwan data dan insinyur pembelajaran mesin dengan berbagai tingkat pengetahuan NLP karena konten kami hanya sumber dan menargetkan pemodelan pembelajaran mesin khusus. Utilitas dan contoh yang disediakan dimaksudkan untuk menjadi akselerator solusi untuk masalah NLP dunia nyata.
Repositori ini bertujuan untuk memperluas kemampuan NLP di sepanjang tiga dimensi terpisah
Kami bertujuan untuk memiliki contoh akhir dari tugas dan skenario umum seperti klasifikasi teks, pengenalan entitas yang disebutkan dll.
Kami bertujuan untuk mendukung banyak model untuk masing -masing skenario yang didukung. Saat ini, model berbasis transformator didukung di sebagian besar skenario. Kami telah berupaya mengintegrasikan paket Transformers dari memeluk wajah yang memungkinkan pengguna untuk dengan mudah memuat model pretrained dan menyempurnakannya untuk tugas yang berbeda.
Kami sangat berlangganan prinsip multi-bahasa yang ditetapkan oleh "Emily Bender"
Repositori ini bertujuan untuk mendukung bahasa non-Inggris di semua skenario. Model pra-terlatih yang digunakan dalam repositori seperti Bert, FastText mendukung 100+ bahasa di luar kotak. Tujuan kami adalah untuk memberikan contoh ujung ke ujung dalam sebanyak mungkin bahasa. Kami mendorong kontribusi komunitas di bidang ini.
Berikut ini adalah ringkasan dari skenario NLP yang umum digunakan yang dibahas dalam repositori. Setiap skenario ditunjukkan dalam satu atau lebih contoh notebook Jupyter yang memanfaatkan basis kode inti model dan utilitas repositori.
| Skenario | Model | Keterangan | Bahasa |
|---|---|---|---|
| Klasifikasi Teks | Bert, Distillbert, Xlnet, Roberta, Albert, XLM | Klasifikasi teks adalah metode pembelajaran yang diawasi untuk belajar dan memprediksi kategori atau kelas dokumen yang diberikan konten teksnya. | Bahasa Inggris, Cina, Hindi, Arab, Jerman, Prancis, Jepang, Spanyol, Belanda |
| Pengakuan entitas yang disebutkan | Bert | Named Entity Recognition (NER) adalah tugas mengklasifikasikan kata -kata atau frasa kunci dari suatu teks menjadi entitas minat yang telah ditentukan. | Bahasa inggris |
| Ringkasan teks | Bertsumext Bertsumab Unilm (s2s-ft) Minilm | Ringkasan teks adalah tugas pembuatan bahasa untuk merangkum teks input menjadi paragraf teks yang lebih pendek. | Bahasa inggris |
| Persyaratan | Bert, Xlnet, Roberta | Tekstual yang diperlukan adalah tugas mengklasifikasikan hubungan biner antara dua teks bahasa alami, teks dan hipotesis , untuk menentukan apakah teks tersebut setuju dengan hipotesis atau tidak. | Bahasa inggris |
| Pertanyaan menjawab | BIDAF, Bert, xlnet | PERTANYAAN PERTANYAAN (QA) adalah tugas mengambil atau menghasilkan jawaban yang valid untuk kueri yang diberikan dalam bahasa alami, asalkan bagian yang terkait dengan kueri. | Bahasa inggris |
| Kesamaan kalimat | Bert, Gensen | Kesamaan kalimat adalah proses menghitung skor kesamaan yang diberikan sepasang dokumen teks. | Bahasa inggris |
| Embeddings | Word2vec FastText Sarung tangan | Embedding adalah proses mengonversi kata atau sepotong teks ke ruang vektor kontinu bilangan real, biasanya, dalam dimensi rendah. | Bahasa inggris |
| Analisis sentimen | Parser ketergantungan Sarung tangan | Memberikan contoh analisis sentimen berdasarkan aspek kereta dan penggunaan dengan Azure ML dan Intel NLP Architect. | Bahasa inggris |
Saat menyelesaikan masalah NLP, selalu baik untuk memulai dengan layanan kognitif prebuilt. Ketika kebutuhan berada di luar batas layanan kognitif prebuilt dan ketika Anda ingin mencari metode pembelajaran mesin khusus, Anda akan menemukan repositori ini sangat berguna. Untuk memulai, navigasikan ke panduan pengaturan, yang mencantumkan instruksi tentang cara mengatur lingkungan dan dependensi Anda.
Azure Machine Learning Service adalah layanan cloud yang digunakan untuk melatih, menggunakan, mengotomatiskan, dan mengelola model pembelajaran mesin, semuanya dalam skala luas yang disediakan cloud. Azureml disajikan dalam buku catatan di berbagai skenario untuk meningkatkan efisiensi pengembangan sistem bahasa alami pada skala dan untuk berbagai tugas terkait pengembangan model AI seperti:
Untuk berhasil menjalankan buku catatan ini, Anda akan memerlukan langganan Azure atau dapat mencoba Azure secara gratis . Mungkin ada layanan atau produk Azure lain yang digunakan dalam buku catatan. PENDAHULUAN DAN/ATAU REFERENSI MEREKA AKAN DIBERIKAN DALAM NATI DENGAN NOTOR.
Kami berharap komunitas open source akan berkontribusi pada konten dan membawa algoritma SOTA terbaru. Proyek ini menyambut kontribusi dan saran. Sebelum berkontribusi, silakan lihat pedoman kontribusi kami.
Bootstrap Solusi Ringkasan Teks Anda dengan rilis terbaru dari NLP-Recipes
Anotasi teks menjadi mudah dengan Doccano
Jumpstart menganalisis data teks hindi Anda menggunakan repositori NLP
Mempercepat pengembangan solusi pemrosesan bahasa alami dengan pembelajaran mesin biru
Berikut ini adalah daftar repositori terkait yang kami sukai dan pikirkan berguna untuk tugas NLP.
| Gudang | Keterangan |
|---|---|
| Transformer | Perpustakaan Pytorch yang hebat dari memeluk wajah dengan implementasi model berbasis transformator populer. Kami telah menggunakan paket mereka secara luas dalam repo ini dan sangat menghargai upaya mereka. |
| Notebook Pembelajaran Mesin Azure | ML dan contoh pembelajaran mendalam dengan Azure Machine Learning. |
| Azureml-Bert | Resep end-to-end untuk pra-pelatihan dan menyempurnakan Bert menggunakan layanan pembelajaran mesin Azure. |
| MASSA | Massa: Urutan bertopeng untuk urutan pra-pelatihan untuk pembuatan bahasa. |
| MT-DNN | Jaringan saraf dalam multi-tugas untuk pemahaman bahasa alami. |
| Unilm | Pra-pelatihan model bahasa terpadu. |
| Dialogpt | Dialogpt: pra-pelatihan generatif skala besar untuk generasi respons percakapan |
| Membangun | Cabang | Status |
|---|---|---|
| CPU Linux | menguasai | |
| CPU Linux | memanggungkan | |
| GPU Linux | menguasai | |
| GPU Linux | memanggungkan |