Bagikan melalui


Pengenalan Entitas

Penting

Dukungan untuk Studio Azure Machine Learning (klasik) akan berakhir pada 31 Agustus 2024. Sebaiknya Anda transisi ke Azure Machine Learning sebelum tanggal tersebut.

Mulai 1 Desember 2021, Anda tidak akan dapat membuat sumber daya Studio Azure Machine Learning (klasik) baru. Hingga 31 Agustus 2024, Anda dapat terus menggunakan sumber daya Pembelajaran Mesin Studio (klasik) yang ada.

ML Dokumentasi Studio (klasik) sedang berhenti dan mungkin tidak diperbarui di masa mendatang.

Mengenali entitas bernama dalam kolom teks

Kategori: Analiză text

Catatan

Berlaku untuk: Pembelajaran Mesin Studio (klasik) saja

Modul drag-and-drop serupa tersedia di Azure Machine Learning desainer.

Ringkasan Modul

Artikel ini menjelaskan cara menggunakan modul Pengenalan Entitas Bernama di Pembelajaran Mesin Studio (klasik), untuk mengidentifikasi nama-nama hal, seperti orang, perusahaan, atau lokasi dalam kolom teks.

Pengenalan entitas bernama adalah bidang penelitian penting dalam pembelajaran mesin dan pemrosesan bahasa alami (NLP), karena dapat digunakan untuk menjawab banyak pertanyaan dunia nyata, seperti:

  • Apakah tweet berisi nama seseorang? Apakah tweet juga menyediakan lokasinya saat ini?

  • Perusahaan mana yang disebutkan dalam artikel berita?

  • Apakah produk tertentu disebutkan dalam keluhan atau ulasan?

Untuk mendapatkan daftar entitas bernama, Anda menyediakan himpunan data sebagai input yang berisi kolom teks. Modul Pengenalan Entitas Bernama kemudian akan mengidentifikasi tiga jenis entitas: orang (PER), lokasi (LOC), dan organisasi (ORG).

Modul ini juga memberi label urutan di mana kata-kata ini ditemukan, sehingga Anda dapat menggunakan istilah tersebut dalam analisis lebih lanjut.

Misalnya, tabel berikut menunjukkan kalimat input sederhana, dan istilah serta nilai yang dihasilkan oleh modul:

Teks input Output modul
"Boston adalah tempat yang bagus untuk hidup." 0,Boston,0,6, LOC

Output dapat diartikan sebagai berikut:

  • '0' pertama berarti bahwa string ini adalah input artikel pertama ke modul.

    Karena satu artikel dapat memiliki beberapa entitas, termasuk nomor baris artikel dalam output penting untuk memetakan fitur ke artikel.

  • Boston adalah entitas yang diakui.

  • Yang 0 berikut Boston berarti entitas Boston dimulai dari huruf pertama dari string input. Indeks berbasis nol.

  • 6 berarti panjang entitas Boston adalah 6.

  • LOC berarti entitas Boston adalah tempat, atau lokasi. Jenis entitas lain yang didukung adalah orang (PER) dan organisasi (ORG).

Cara mengonfigurasi Pengenalan Entitas Bernama

  1. Tambahkan modul Pengenalan Entitas Bernama ke eksperimen Anda di Studio (klasik). Anda dapat menemukan modul dalam kategori Analiză text.

  2. Pada input bernama Story, hubungkan himpunan data yang berisi teks untuk dianalisis.

    "Cerita" harus berisi teks untuk mengekstrak entitas bernama.

    Kolom yang digunakan sebagai Cerita harus berisi beberapa baris, di mana setiap baris terdiri dari string. string bisa pendek, seperti kalimat, atau panjang, seperti artikel berita.

    Anda dapat menghubungkan himpunan data apa pun yang berisi kolom teks. Namun, jika himpunan data input berisi beberapa kolom, gunakan Pilih Kolom dalam Himpunan Data untuk memilih hanya kolom yang berisi teks yang ingin Anda analisis

    Catatan

    Input kedua, Sumber Daya Kustom (Zip), tidak didukung saat ini.

    Di masa mendatang, Anda dapat menambahkan file sumber daya kustom di sini, untuk mengidentifikasi jenis entitas yang berbeda.

  3. Jalankan eksperimen.

Hasil

Modul ini mengeluarkan himpunan data yang berisi baris untuk setiap entitas yang dikenali, bersama dengan offset.

Karena setiap baris teks input mungkin berisi beberapa entitas bernama, nomor ID artikel secara otomatis dibuat dan disertakan dalam output, untuk mengidentifikasi baris input yang berisi entitas bernama. ID artikel didasarkan pada urutan alami baris dalam himpunan data input.

Anda dapat mengonversi himpunan data output ini menjadi CSV untuk diunduh atau menyimpannya sebagai himpunan data untuk digunakan kembali.

Menggunakan pengenalan entitas bernama dalam layanan web

Jika Anda menerbitkan layanan web dari Pembelajaran Mesin Studio (klasik) dan ingin menggunakan layanan web dengan menggunakan C#, Python, atau bahasa lain seperti R, Anda harus terlebih dahulu menerapkan kode layanan yang disediakan di halaman bantuan layanan web.

Jika layanan web Anda menyediakan beberapa baris output, URL layanan web yang Anda tambahkan ke kode C #, Python, atau R Anda harus memiliki akhiran scoremultirow alih-alih score.

Misalnya, asumsikan Anda menggunakan URL berikut untuk layanan web Anda: https://ussouthcentral.services.azureml.net/workspaces/<workspace id>/services/<service id>/score

Untuk mengaktifkan output multi-baris, ubah URL menjadi https://ussouthcentral.services.azureml.net/workspaces/<workspace id>/services/<service id>/scoremultirow

Untuk mempublikasikan layanan web ini, Anda harus menambahkan modul Execute R Script tambahan setelah modul Pengenalan Entitas Bernama , untuk mengubah output multi-baris menjadi satu yang dibatasi dengan titik koma (;). Alasan untuk mengkonsolidasikan beberapa baris output menjadi satu baris adalah untuk mengembalikan beberapa entitas per baris input.

Misalnya, mari kita asumsikan Anda memiliki kalimat input dengan dua entitas bernama. Daripada mengembalikan dua baris untuk setiap baris input, Anda dapat mengembalikan satu baris dengan beberapa entitas, dipisahkan oleh titik koma seperti yang ditunjukkan di sini:

Teks Input Output dari Web Service
Microsoft memiliki dua lokasi kantor di Boston. 0,Microsoft,0,9,ORG,;,0,Boston,38,6,LOC,;

Contoh kode berikut menunjukkan cara melakukan ini:

# Map 1-based optional input ports to variables  
d <- maml.mapInputPort(1) # class: data.frame  
y=length(d) ##size of cols  
x=dim(d)[1] ##size of rows  
longd=matrix("NA",nrow=1,ncol=x*(y+1))  
for (i in 1:x)  
  {   
     for (j in 1:y)  
     {  
       longd[1,j+(i-1)*(y+1)]=toString(d[i,j])   
     }  
     longd[1,j+(i-1)*(y+1)+1]=c(";")  
  }   

final_output=as.data.frame(longd)  
# Select data.frame to be sent to the output Dataset port  
maml.mapOutputPort("final_output");  

Contoh

Blog ini memberikan penjelasan panjang tentang bagaimana pengenalan entitas bernama bekerja, latar belakangnya, dan kemungkinan aplikasi:

Juga, lihat contoh eksperimen berikut di Azure AI Gallery untuk demonstrasi tentang cara menggunakan metode klasifikasi teks yang biasa digunakan dalam pembelajaran mesin:

Catatan teknis

Dukungan bahasa

Saat ini, modul Pengenalan Entitas Bernama hanya mendukung teks bahasa Inggris. Ini dapat mendeteksi nama organisasi, nama pribadi, dan lokasi dalam kalimat bahasa Inggris. Jika Anda menggunakan modul pada bahasa lain, Anda mungkin tidak mendapatkan kesalahan, tetapi hasilnya tidak sebagus untuk teks bahasa Inggris.

Di masa depan, dukungan untuk bahasa tambahan dapat diaktifkan dengan mengintegrasikan komponen multibahasa yang disediakan dalam Office Natural Language Toolkit.

Input yang diharapkan

Nama Jenis Deskripsi
Cerita Tabel Data Himpunan data input (DataTable) yang berisi kolom teks yang ingin Anda analisis.
Sumber Daya Kustom Zip (Opsional) File dalam format ZIP yang berisi sumber daya kustom tambahan.

Opsi ini tidak tersedia saat ini dan disediakan hanya untuk kompatibilitas ke depan.

Output

Nama Jenis Deskripsi
Entitas Tabel Data Daftar offset karakter dan entitas

Lihat juga

Text Analytics
Hashing Fitur
Skor Vowpal Wabbit 7-4 Model
Latih Vowpal Wabbit 7-4 Model