Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Microsoft Power BI Desktop adalah aplikasi gratis yang memungkinkan Anda untuk tersambung dengan, mentransformasi, dan memvisualisasikan data Anda. Ekstraksi frasa kunci, salah satu fitur Bahasa Azure AI, menyediakan pemrosesan bahasa alami. Pada teks mentah yang tidak terstruktur, layanan ini dapat mengekstrak frasa yang paling penting, menganalisis sentimen, dan mengidentifikasi entitas terkenal seperti merek. Bersama-sama, alat-alat ini dapat membantu Anda dengan cepat melihat apa yang dibicarakan oleh pelanggan Anda dan bagaimana perasaan mereka tentang hal itu.
Dalam tutorial ini, Anda akan mempelajari cara:
- Menggunakan Power BI Desktop untuk mengimpor dan mentransformasi data
- Membuat fungsi kustom di Power BI Desktop
- Mengintegrasikan Power BI Desktop dengan fitur Ekstraksi Frasa Kunci bahasa Azure AI
- Menggunakan Ekstraksi Frase Kunci untuk mendapatkan frasa yang paling penting dari umpan balik pelanggan
- Membuat awan kata dari umpan balik pelanggan
Prasyarat
- Microsoft Power BI Desktop. Unduh tanpa biaya.
- Akun Microsoft Azure. Buat akun gratis atau masuk.
- Sumber daya bahasa. Jika Anda tidak memilikinya, Anda dapat membuatnya secara gratis.
- Kunci sumber daya Bahasa yang dihasilkan untuk Anda saat Anda membuat sumber daya.
- Komentar pelanggan. Anda dapat menggunakan data contoh kami atau data Anda sendiri. Tutorial ini mengasumsikan bahwa Anda menggunakan data contoh kami.
Memuat data pelanggan
Untuk memulai, buka Power BI Desktop dan muat file nilai yang dipisahkan koma (CSV) yang Anda unduh sebagai bagian dari prasyarat. {i>File
Catatan
Power BI bisa menggunakan data dari berbagai sumber-berbasis web, seperti database{i> dokumentasi Power Query untuk informasi selengkapnya.
Di jendela utama Power BI Desktop, klik pita Beranda. Pada pita grup data eksternal, buka menu drop-down Ambil Data dan pilih Teks/CSV.
Jendela dialog Buka muncul. Navigasikan ke folder Unduhan Anda, atau ke folder tempat Anda mengunduh file CSV. Pilih nama file, lalu tombol Buka . Dialog impor CSV muncul.
Dialog impor CSV memungkinkan Anda memverifikasi bahwa Power BI Desktop telah mendeteksi tataan karakter, pemisah, baris header, dan jenis kolom dengan benar. Informasi ini semuanya benar, jadi pilih Muat.
Untuk melihat data yang dimuat, klik tombol Tampilkan Data di tepi kiri ruang kerja Power BI. Sebuah tabel akan terbuka yang berisi data, seperti di Microsoft Excel.
Menyiapkan data
Anda mungkin perlu mengubah data Anda di Power BI Desktop sebelum siap diproses oleh Ekstraksi Frasa Kunci.
Data sampel berisi kolom subject
dan kolom comment
. Dengan fungsi Gabungkan Kolom di Power BI Desktop, Anda bisa mengekstrak frasa kunci dari data di kedua kolom ini, bukan hanya kolom comment
.
Di Power BI Desktop, pilih pita Beranda. Di grup Data Eksternal, pilih Edit Kueri.
Pilih FabrikamComments
di daftar Kueri di sisi kiri jendela jika belum dipilih.
Sekarang pilih kolom subject
dan comment
dalam tabel. Anda mungkin perlu menggulir secara horizontal untuk melihat kolom ini. Pertama klik judul kolom subject
, lalu tahan tombol Ctrl dan klik judul kolom comment
.
Pilih tab Transformasi. Dalam grup Kolom Teks di pita, pilih Gabungkan Kolom. Dialog Gabungkan Kolom muncul.
Dalam dialog Gabungkan Kolom, pilih Tab
sebagai pemisah, lalu pilih OK.
Anda mungkin juga mempertimbangkan untuk memfilter pesan kosong menggunakan filter Hapus Kosong, atau menghapus karakter yang tidak dapat dicetak menggunakan transformasi Bersihkan. Jika data Anda berisi kolom seperti spamscore
kolom dalam file sampel, Anda dapat melewati komentar "spam" menggunakan Filter Angka.
Memahami API
Ekstraksi Frase Kunci dapat memproses hingga seribu dokumen teks per permintaan HTTP. Power BI lebih memilih untuk menangani rekaman satu per satu, jadi dalam tutorial ini panggilan Anda ke API hanya akan menyertakan satu dokumen. API Frasa Kunci memerlukan bidang berikut untuk setiap dokumen yang sedang diproses.
Bidang | Deskripsi |
---|---|
id |
Pengidentifikasi unik untuk dokumen ini dalam permintaan. Respons juga menyertakan bidang ini. Dengan demikian, jika Anda memproses lebih dari satu dokumen, Anda dapat dengan mudah mengaitkan frasa kunci yang diekstrak dengan dokumen asalnya. Dalam tutorial ini, karena Anda hanya memproses satu dokumen per permintaan, Anda dapat mengkodekan id nilai untuk menjadi sama untuk setiap permintaan. |
text |
Teks yang akan diproses. Nilai bidang ini berasal dari kolom Merged yang Anda buat di bagian sebelumnya, yang berisi baris subjek gabungan dan teks komentar. API Frasa Kunci mengharuskan data ini berisi tidak lebih dari sekitar 5.120 karakter. |
language |
Kode untuk bahasa alami yang digunakan dalam dokumen. Semua pesan dalam data sampel dalam bahasa Inggris, sehingga Anda dapat mengkodekan nilai en untuk bidang ini secara permanen. |
Membuat fungsi kustom
Sekarang Anda siap untuk membuat fungsi kustom yang akan mengintegrasikan Power BI dan Ekstraksi Frase Kunci. Fungsi ini menerima teks untuk diproses sebagai parameter. Proses ini mengonversi data ke dan dari format JSON yang diperlukan dan membuat permintaan HTTP ke API Frasa Kunci. Fungsi ini kemudian menguraikan respons dari API dan mengembalikan untai (karakter) yang berisi daftar frasa kunci yang dihasilkan yang dipisahkan koma.
Catatan
Fungsi kustom Power BI Desktop ditulis dalam Bahasa rumus Power Query M,atau singkatnya "M". M adalah bahasa pemrograman fungsional berdasarkan F#. Anda tidak perlu menjadi {i>programmer
Di Power BI Desktop, pastikan Anda masih berada di jendela Editor Kueri. Jika tidak, pilih pita Beranda, dan di grup Data Eksternal, pilih Edit Kueri.
Sekarang, di pita Beranda, di grup Kueri Baru, buka menu dropdown Sumber Baru dan pilih Kueri Kosong.
Kueri baru, awalnya bernama Query1
, muncul di daftar Kueri. Klik ganda entri ini dan beri nama KeyPhrases
.
Sekarang, di pita Beranda, di grup Kueri, pilih Editor Lanjutan untuk membuka jendela Editor Lanjutan. Hapus kode yang sudah ada di jendela tersebut dan tempelkan kode berikut.
Catatan
Gantilah titik akhir contoh di bawah ini (berisi <your-custom-subdomain>
) dengan titik akhir yang telah dihasilkan untuk sumber daya Bahasa Anda. Anda dapat menemukan titik akhir ini dengan masuk ke portal Microsoft Azure, mengarahkan ke sumber daya Anda dan memilihKunci dan titik akhir.
// Returns key phrases from the text in a comma-separated list
(text) => let
apikey = "YOUR_API_KEY_HERE",
endpoint = "https://<your-custom-subdomain>.cognitiveservices.azure.com/text/analytics" & "/v3.0/keyPhrases",
jsontext = Text.FromBinary(Json.FromValue(Text.Start(Text.Trim(text), 5000))),
jsonbody = "{ documents: [ { language: ""en"", id: ""0"", text: " & jsontext & " } ] }",
bytesbody = Text.ToBinary(jsonbody),
headers = [#"Ocp-Apim-Subscription-Key" = apikey],
bytesresp = Web.Contents(endpoint, [Headers=headers, Content=bytesbody]),
jsonresp = Json.Document(bytesresp),
keyphrases = Text.Lower(Text.Combine(jsonresp[documents]{0}[keyPhrases], ", "))
in keyphrases
Mengganti YOUR_API_KEY_HERE
dengan kunci sumber daya Bahasa pemrogram Anda. Anda juga dapat menemukan kunci ini dengan masuk ke portal Azure, mengarahkan ke sumber daya Bahasa Anda, dan memilih halaman Kunci dan titik akhir. Pastikan untuk menyertakan tanda kutip sebelum dan sesudah kata kunci. Kemudian pilih Selesai.
Gunakan fungsi kustom
Sekarang Anda dapat menggunakan fungsi kustom untuk mengekstrak frasa kunci dari setiap komentar pelanggan dan menyimpannya di kolom baru dalam tabel.
Di Power BI Desktop, di jendela Editor Kueri, beralih kembali ke kueri FabrikamComments
. Pilih pita Tambahkan Kolom.
Di grup Umum, pilih Panggil Fungsi Kustom.
Dialog Panggil Fungsi Kustom muncul. Di Nama kolom baru, masukkan keyphrases
. Di Kueri fungsi, pilih fungsi kustom yang telah Anda buat, KeyPhrases
.
Bidang baru muncul dalam dialog, teks (opsional). Bidang ini menanyakan kolom mana yang ingin kita gunakan untuk menyediakan nilai untuk parameter text
API Frasa Kunci. (Ingatlah bahwa Anda sudah mengkodekan nilai untuk language
parameter dan id
.) Pilih Merged
(kolom yang Anda buat sebelumnya dengan menggabungkan bidang subjek dan pesan) dari menu drop-down.
Terakhir, pilih OK.
Jika semuanya sudah siap, Power BI akan memanggil fungsi kustom Anda sekali untuk setiap baris dalam tabel. Panggilan ini mengirim kueri ke API Frasa Kunci dan menambahkan kolom baru ke tabel untuk menyimpan hasilnya. Tetapi sebelum itu terjadi, Anda mungkin perlu menentukan pengaturan autentikasi dan privasi.
Autentikasi dan privasi
Setelah Anda menutup dialog Panggilan Fungsi Kustom, sebuah banner mungkin muncul meminta Anda untuk menentukan cara menghubungkan ke API Frasa Kunci.
Pilih Edit Kredensial, pastikan Anonymous
dipilih dalam dialog, lalu pilih Sambungkan.
Catatan
Anda memilih Anonymous
karena layanan Analitik Teks mengautentikasi Anda menggunakan kunci akses, sehingga Power BI tidak perlu menyediakan informasi masuk untuk permintaan HTTP itu sendiri.
Jika Anda melihat banner Edit Kredensial bahkan setelah memilih akses anonim, Anda mungkin lupa menempelkan kunci sumber daya Bahasa Anda ke dalam kode dalam KeyPhrases
fungsi kustom.
Selanjutnya, {i>banner
Pilih Lanjutkan dan pilih Public
untuk setiap sumber data dalam dialog. Kemudian pilih Simpan.
Membuat awan kata
Setelah Anda menangani spanduk apa pun yang muncul, pilih Tutup & Terapkan di pita Beranda untuk menutup Editor Kueri.
Power BI Desktop membutuhkan waktu sejenak untuk membuat permintaan HTTP yang diperlukan. Untuk setiap baris dalam tabel, kolom keyphrases
baru berisi frasa kunci yang terdeteksi dalam teks oleh API Frasa Kunci.
Sekarang Anda akan menggunakan kolom ini untuk menghasilkan "word cloud". Untuk memulai, klik tombol Laporkan di jendela utama Power BI Desktop, di sebelah kiri ruang kerja.
Catatan
Mengapa menggunakan frasa kunci yang diekstraksi untuk menghasilkan "word cloud" daripada menggunakan teks lengkap dari setiap komentar? Frasa kunci menyediakan kata-kata penting dari komentar pelanggan kita, bukan hanya kata-kata yang paling umum. Selain itu, ukuran kata di awan yang dihasilkan tidak terpengaruh oleh frekuensi penggunaan kata dalam sejumlah komentar yang relatif sedikit.
Jika Anda belum menginstal visual kustom Cloud Kata, silakan instal. Di panel Visualisasi di sebelah kanan ruang kerja, klik tiga titik (...) dan pilih Impor Dari Pasar. Jika kata "cloud" bukan di antara alat visualisasi yang ditampilkan dalam daftar, Anda bisa mencari "cloud" dan mengklik tombol Tambahkan di samping visual Word Cloud. Power BI menginstal visual Cloud Kata dan memberi tahu Anda bahwa sudah berhasil diinstal.
Pertama, klik ikon Cloud Kata di panel Visualisasi.
Laporan baru muncul di ruang kerja. Seret bidang keyphrases
dari panel Bidang ke bidang Kategori di panel Visualisasi. Kata "awan" muncul di dalam laporan.
Sekarang beralih ke halaman Format panel Visualisasi. Dalam kategori Stop Words, aktifkan Default Stop Words untuk menghilangkan kata-kata singkat dan umum seperti "of" dari cloud. Namun, karena kita memvisualisasikan frasa kunci, mereka mungkin tidak berisi kata hubung.
Turun sedikit lebih jauh di panel ini, matikan Putar Teks dan Judul.
Pilih alat Mode Fokus dalam laporan untuk melihat cloud kata kami dengan lebih jelas. Alat ini memperluas awan kata untuk mengisi seluruh ruang kerja, seperti ditunjukkan di bawah ini.
Menggunakan fitur lain
Bahasa Azure AI juga menyediakan analisis sentimen dan deteksi bahasa. Deteksi bahasa khususnya berguna jika umpan balik pelanggan Anda tidak semuanya tertulis dalam bahasa Inggris.
Kedua API lainnya ini mirip dengan API Frasa Kunci. Itu berarti Anda dapat mengintegrasikannya dengan Power BI Desktop menggunakan fungsi kustom yang hampir identik dengan yang telah Anda buat dalam tutorial ini. Cukup buat kueri kosong dan tempelkan kode yang sesuai di bawah ini ke Editor Lanjutan, seperti yang Anda lakukan sebelumnya. (Jangan lupa kunci akses Anda!) Lalu, seperti sebelumnya, gunakan fungsi untuk menambahkan kolom baru ke tabel.
Fungsi Analisis Sentimen di bawah ini mengembalikan label yang menunjukkan seberapa positif sentimen yang dinyatakan dalam teks.
// Returns the sentiment label of the text, for example, positive, negative or mixed.
(text) => let
apikey = "YOUR_API_KEY_HERE",
endpoint = "<your-custom-subdomain>.cognitiveservices.azure.com" & "/text/analytics/v3.1/sentiment",
jsontext = Text.FromBinary(Json.FromValue(Text.Start(Text.Trim(text), 5000))),
jsonbody = "{ documents: [ { language: ""en"", id: ""0"", text: " & jsontext & " } ] }",
bytesbody = Text.ToBinary(jsonbody),
headers = [#"Ocp-Apim-Subscription-Key" = apikey],
bytesresp = Web.Contents(endpoint, [Headers=headers, Content=bytesbody]),
jsonresp = Json.Document(bytesresp),
sentiment = jsonresp[documents]{0}[sentiment]
in sentiment
Berikut adalah dua versi fungsi Deteksi Bahasa. Yang pertama mengembalikan kode bahasa ISO (misalnya, en
untuk bahasa Inggris), sedangkan yang kedua mengembalikan nama yang "ramah" (misalnya, English
). Anda mungkin melihat bahwa hanya baris terakhir isi yang berbeda di antara kedua versi.
// Returns the two-letter language code (for example, 'en' for English) of the text
(text) => let
apikey = "YOUR_API_KEY_HERE",
endpoint = "https://<your-custom-subdomain>.cognitiveservices.azure.com" & "/text/analytics/v3.1/languages",
jsontext = Text.FromBinary(Json.FromValue(Text.Start(Text.Trim(text), 5000))),
jsonbody = "{ documents: [ { id: ""0"", text: " & jsontext & " } ] }",
bytesbody = Text.ToBinary(jsonbody),
headers = [#"Ocp-Apim-Subscription-Key" = apikey],
bytesresp = Web.Contents(endpoint, [Headers=headers, Content=bytesbody]),
jsonresp = Json.Document(bytesresp),
language = jsonresp [documents]{0}[detectedLanguage] [name] in language
// Returns the name (for example, 'English') of the language in which the text is written
(text) => let
apikey = "YOUR_API_KEY_HERE",
endpoint = "https://<your-custom-subdomain>.cognitiveservices.azure.com" & "/text/analytics/v3.1/languages",
jsontext = Text.FromBinary(Json.FromValue(Text.Start(Text.Trim(text), 5000))),
jsonbody = "{ documents: [ { id: ""0"", text: " & jsontext & " } ] }",
bytesbody = Text.ToBinary(jsonbody),
headers = [#"Ocp-Apim-Subscription-Key" = apikey],
bytesresp = Web.Contents(endpoint, [Headers=headers, Content=bytesbody]),
jsonresp = Json.Document(bytesresp),
language =jsonresp [documents]{0}[detectedLanguage] [name] in language
Terakhir, berikut ini adalah varian fungsi Frasa Kunci yang sudah disajikan yang mengembalikan frasa sebagai objek daftar, bukan sebagai untai (karakter) tunggal frasa yang dipisahkan koma.
Catatan
Mengembalikan satu string menyederhanakan contoh awan kata kami. Daftar, di sisi lain, adalah format yang lebih fleksibel untuk bekerja dengan frasa yang dikembalikan di Power BI. Anda bisa memanipulasi objek daftar di Power BI Desktop menggunakan grup Kolom Terstruktur di pita Transformasi Editor Kueri.
// Returns key phrases from the text as a list object
(text) => let
apikey = "YOUR_API_KEY_HERE",
endpoint = "https://<your-custom-subdomain>.cognitiveservices.azure.com" & "/text/analytics/v3.1/keyPhrases",
jsontext = Text.FromBinary(Json.FromValue(Text.Start(Text.Trim(text), 5000))),
jsonbody = "{ documents: [ { language: ""en"", id: ""0"", text: " & jsontext & " } ] }",
bytesbody = Text.ToBinary(jsonbody),
headers = [#"Ocp-Apim-Subscription-Key" = apikey],
bytesresp = Web.Contents(endpoint, [Headers=headers, Content=bytesbody]),
jsonresp = Json.Document(bytesresp),
keyphrases = jsonresp[documents]{0}[keyPhrases]
in keyphrases
Langkah berikutnya
Pelajari selengkapnya tentang Bahasa Azure AI, bahasa rumus Power Query M, atau Power BI.