Bagikan melalui


Contoh Kueri Model Jaringan Neural

Berlaku untuk: SQL Server 2019 dan Analysis Services Azure Analysis Services Fabric/Power BI Premium sebelumnya

Penting

Penambangan data tidak digunakan lagi di SQL Server 2017 Analysis Services dan sekarang dihentikan di SQL Server 2022 Analysis Services. Dokumentasi tidak diperbarui untuk fitur yang tidak digunakan lagi dan dihentikan. Untuk mempelajari selengkapnya, lihat Kompatibilitas mundur Analysis Services.

Saat Anda membuat kueri terhadap model penggalian data, Anda bisa membuat kueri konten, yang menyediakan detail tentang pola yang ditemukan dalam analisis, atau kueri prediksi, yang menggunakan pola dalam model untuk membuat prediksi untuk data baru. Misalnya, kueri konten untuk model jaringan neural mungkin mengambil metadata model seperti jumlah lapisan tersembunyi. Atau, kueri prediksi mungkin menyarankan klasifikasi berdasarkan input dan secara opsional memberikan probabilitas untuk setiap klasifikasi.

Bagian ini menjelaskan cara membuat kueri untuk model yang didasarkan pada algoritma Microsoft Neural Network.

Kueri konten

Mendapatkan Metadata Model dengan Menggunakan DMX

Mengambil Metadata Model dari Set Baris Skema

Mengambil Atribut Input untuk Model

Mengambil Bobot dari Lapisan Tersembunyi

Kueri prediksi

Membuat Prediksi Singleton

Menemukan Informasi tentang Model Jaringan Neural

Semua model penambangan mengekspos konten yang dipelajari oleh algoritma sesuai dengan skema standar, set baris skema model penambangan. Informasi ini menyediakan detail tentang model dan mencakup metadata dasar, struktur yang ditemukan dalam analisis, dan parameter yang digunakan saat memproses. Anda dapat membuat kueri terhadap konten model dengan menggunakan pernyataan Ekstensi Penggalian Data (DMX).

Kueri Sampel 1: Mendapatkan Metadata Model dengan Menggunakan DMX

Kueri berikut mengembalikan beberapa metadata dasar tentang model yang dibangun dengan menggunakan algoritma Microsoft Neural Network. Dalam model jaringan neural, simpul induk model hanya berisi nama model, nama database tempat model disimpan, dan jumlah simpul anak. Namun, simpul statistik marginal (NODE_TYPE = 24) menyediakan metadata dasar ini dan beberapa statistik turunan tentang kolom input yang digunakan dalam model.

Kueri sampel berikut didasarkan pada model penambangan yang Anda buat di Tutorial Penggalian Data Menengah, bernama Call Center Default NN. Model ini menggunakan data dari pusat panggilan untuk mengeksplorasi kemungkinan korelasi antara staf dan jumlah panggilan, pesanan, dan masalah. Pernyataan DMX mengambil data dari simpul statistik marginal model jaringan neural. Kueri menyertakan kata kunci FLATTENED, karena statistik atribut input yang menarik disimpan dalam tabel berlapis, NODE_DISTRIBUTION. Namun, jika penyedia kueri Anda mendukung kumpulan baris hierarkis, Anda tidak perlu menggunakan kata kunci FLATTENED.

SELECT FLATTENED MODEL_CATALOG, MODEL_NAME,   
(    SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE,  
     [SUPPORT], [PROBABILITY], VALUETYPE   
     FROM NODE_DISTRIBUTION  
) AS t  
FROM [Call Center Default NN].CONTENT  
WHERE NODE_TYPE = 24  

Catatan

Anda harus menyertakan nama kolom tabel berlapis DUKUNGAN dan PROBABILITAS dalam tanda kurung siku untuk membedakannya dari kata kunci yang dicadangkan dengan nama yang sama.

Contoh hasil:

MODEL_CATALOG MODEL_NAME t.ATTRIBUTE_NAME t.ATTRIBUTE_VALUE t.SUPPORT t.PROBABILITAS t.VALUETYPE
Adventure Works DW Multidimensi 2012 Pusat Panggilan NN Waktu Rata-rata Per Masalah Tidak ada 0 0 1
Adventure Works DW Multidimensi 2012 Pusat Panggilan NN Waktu Rata-rata Per Masalah < 64.7094100096 11 0.407407407 5

Untuk definisi tentang arti kolom dalam kumpulan baris skema dalam konteks model jaringan neural, lihat Menambang Konten Model untuk Model Jaringan Neural (Analysis Services - Penggalian Data).

Kueri Sampel 2: Mengambil Metadata Model dari Set Baris Skema

Anda dapat menemukan informasi yang sama yang dikembalikan dalam kueri konten DMX dengan mengkueri kumpulan baris skema penggalian data. Namun, kumpulan baris skema menyediakan beberapa kolom tambahan. Kueri sampel berikut mengembalikan tanggal model dibuat, tanggal model dimodifikasi, dan tanggal model terakhir diproses. Kueri juga mengembalikan kolom yang dapat diprediksi, yang tidak mudah tersedia dari konten model, dan parameter yang digunakan untuk membangun model. Informasi ini dapat berguna untuk mendokumen model.

SELECT MODEL_NAME, DATE_CREATED, LAST_PROCESSED, PREDICTION_ENTITY, MINING_PARAMETERS   
from $system.DMSCHEMA_MINING_MODELS  
WHERE MODEL_NAME = 'Call Center Default NN'  

Contoh hasil:

Baris Metadata
MODEL_NAME NN Default Pusat Panggilan
DATE_CREATED 10/10/2008 17:07:38 PM
LAST_PROCESSED 10/10/2008 17:24:02
PREDICTION_ENTITY Waktu Rata-rata Per Masalah,

Nilai layanan,

Jumlah Pesanan
MINING_PARAMETERS HOLDOUT_PERCENTAGE=30, HOLDOUT_SEED=0,

MAXIMUM_INPUT_ATTRIBUTES=255, MAXIMUM_OUTPUT_ATTRIBUTES=255,

MAXIMUM_STATES=100, SAMPLE_SIZE=10000, HIDDEN_NODE_RATIO=4

Kueri Sampel 3: Mengambil Atribut Input untuk Model

Anda dapat mengambil pasangan nilai atribut input yang digunakan untuk membuat model dengan mengkueri simpul anak (NODE_TYPE = 20) dari lapisan input (NODE_TYPE = 18). Kueri berikut mengembalikan daftar atribut input dari deskripsi simpul.

SELECT NODE_DESCRIPTION  
FROM [Call Center Default NN].CONTENT  
WHERE NODE_TYPE = 2  

Contoh hasil:

NODE_DESCRIPTION
Waktu rata-rata per masalah=64,7094100096 - 77.4002099712
Hari Dalam Seminggu=Jum.
Operator Tingkat 1

Hanya beberapa baris perwakilan dari hasil yang ditampilkan di sini. Namun, Anda dapat melihat bahwa NODE_DESCRIPTION memberikan informasi yang sedikit berbeda tergantung pada jenis data atribut input.

  • Jika atribut adalah nilai diskret atau diskret, atribut dan nilainya atau rentang diskretnya dikembalikan.

  • Jika atribut adalah jenis data numerik berkelanjutan, NODE_DESCRIPTION hanya berisi nama atribut. Namun, Anda dapat mengambil tabel NODE_DISTRIBUTION berlapis untuk mendapatkan rata-rata, atau mengembalikan NODE_RULE untuk mendapatkan nilai minimum dan maksimum dari rentang numerik.

Kueri berikut ini memperlihatkan cara mengkueri tabel NODE_DISTRIBUTION berlapis untuk mengembalikan atribut dalam satu kolom, dan nilainya di kolom lain. Untuk atribut berkelanjutan, nilai atribut diwakili oleh rata-ratanya.

SELECT FLATTENED   
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE  
FROM NODE_DISTRIBUTION) as t  
FROM [Call Center Default NN -- Predict Service and Orders].CONTENT  
WHERE NODE_TYPE = 21  

Contoh hasil:

t.ATTRIBUTE_NAME t.ATTRIBUTE_VALUE
Waktu Rata-rata Per Masalah 64.7094100096 - 77.4002099712
Hari Dalam Seminggu Jumat.
Operator Tingkat 1 3.2962962962963

Nilai rentang minimum dan maksimum disimpan di kolom NODE_RULE, dan direpresentasikan sebagai fragmen XML, seperti yang diperlihatkan dalam contoh berikut:

<NormContinuous field="Level 1 Operators">    
  <LinearNorm orig="2.83967303681711" norm="-1" />    
  <LinearNorm orig="3.75291955577548" norm="1" />    
</NormContinuous>    

Kueri Sampel 4: Mengambil Bobot dari Lapisan Tersembunyi

Konten model model jaringan neural disusun dengan cara yang memudahkan untuk mengambil detail tentang simpul apa pun di jaringan. Selain itu, nomor ID simpul memberikan informasi yang membantu Anda mengidentifikasi hubungan di antara jenis node.

Kueri berikut menunjukkan cara mengambil koefisien yang disimpan di bawah simpul tertentu dari lapisan tersembunyi. Lapisan tersembunyi terdiri dari simpul penyelenggara (NODE_TYPE = 19), yang hanya berisi metadata, dan beberapa simpul anak (NODE_TYPE = 22), yang berisi koefisien untuk berbagai kombinasi atribut dan nilai. Kueri ini hanya mengembalikan simpul koefisien.

SELECT FLATTENED TOP 1 NODE_UNIQUE_NAME,   
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE, VALUETYPE  
FROM NODE_DISTRIBUTION) as t  
FROM  [Call Center Default NN -- Predict Service and Orders].CONTENT  
WHERE NODE_TYPE = 22  
AND [PARENT_UNIQUE_NAME] = '40000000200000000' FROM [Call Center Default NN].CONTENT  

Contoh hasil:

NODE_UNIQUE_NAME t.ATTRIBUTE_NAME t.ATTRIBUTE_VALUE t.VALUETYPE
70000000200000000 6000000000000000a -0.178616518 7
70000000200000000 6000000000000000b -0.267561918 7
70000000200000000 6000000000000000c 0.11069497 7
70000000200000000 6000000000000000d 0.123757712 7
70000000200000000 6000000000000000e 0.294565343 7
70000000200000000 6000000000000000f 0.22245318 7
70000000200000000 0.188805045 7

Hasil parsial yang ditunjukkan di sini menunjukkan bagaimana konten model jaringan neural menghubungkan simpul tersembunyi dengan simpul input.

  • Nama unik simpul di lapisan tersembunyi selalu dimulai dengan 70000000.

  • Nama unik simpul dalam lapisan input selalu dimulai dengan 60000000.

Dengan demikian, hasil ini memberi tahu Anda bahwa simpul yang ditandai dengan ID 70000000200000000 memiliki enam koefisien yang berbeda (VALUETYPE = 7) yang diteruskan ke simpul tersebut. Nilai koefisien berada di kolom ATTRIBUTE_VALUE. Anda dapat menentukan dengan tepat atribut input mana yang digunakan koefisien dengan menggunakan ID simpul di kolom ATTRIBUTE_NAME. Misalnya, ID simpul 6000000000000000 mengacu pada atribut dan nilai input, Day of Week = 'Tue.' Anda dapat menggunakan ID simpul untuk membuat kueri, atau Anda dapat menelusuri ke simpul dengan menggunakan Microsoft Generic Content Tree Viewer.

Demikian pula, jika Anda mengkueri tabel NODE_DISTRIBUTION simpul di lapisan output (NODE_TYPE = 23), Anda dapat melihat koefisien untuk setiap nilai output. Namun, di lapisan output, pointer merujuk kembali ke simpul lapisan tersembunyi. Untuk informasi selengkapnya, lihat Menambang Konten Model untuk Model Jaringan Neural (Analysis Services - Penggalian Data).

Menggunakan Model Jaringan Neural untuk Membuat Prediksi

Algoritma Microsoft Neural Network mendukung klasifikasi dan regresi. Anda dapat menggunakan fungsi prediksi dengan model ini untuk menyediakan data baru dan membuat prediksi singleton atau batch.

Kueri Sampel 5: Membuat Prediksi Singleton

Cara termampu untuk membangun kueri prediksi pada model jaringan neural adalah dengan menggunakan Penyusun Kueri Prediksi, yang tersedia di tab Prediksi Penambangan Designer Penggalian Data di SQL Server Management Studio dan SQL Server Data Tools. Anda dapat menelusuri model di Penampil Jaringan Neural Microsoft untuk memfilter atribut tren minat dan tampilan, lalu beralih ke tab Prediksi Penambangan untuk membuat kueri dan memprediksi nilai baru untuk tren tersebut.

Misalnya, Anda dapat menelusuri model pusat panggilan untuk melihat korelasi antara volume pesanan dan atribut lainnya. Untuk melakukan ini, buka model di penampil, dan untuk Input, pilih <Semua>. Selanjutnya, untuk Output, pilih Jumlah Pesanan. Untuk Nilai 1, pilih rentang yang mewakili urutan terbanyak, dan untuk Nilai 2, pilih rentang yang mewakili urutan terkecil. Anda kemudian dapat melihat sekilas semua atribut yang dikorelasikan model dengan volume pesanan.

Dengan menelusuri hasilnya di pemirsa, Anda menemukan bahwa hari-hari tertentu dalam seminggu memiliki volume pesanan yang rendah, dan bahwa peningkatan jumlah operator tampaknya berkorelasi dengan penjualan yang lebih tinggi. Anda kemudian dapat menggunakan kueri prediksi pada model untuk menguji hipotesis "bagaimana jika" dan bertanya apakah meningkatkan jumlah operator tingkat 2 pada hari volume rendah akan meningkatkan pesanan. Untuk melakukan ini, buat kueri seperti berikut ini:

SELECT Predict([Call Center Default NN].[Number of Orders]) AS [Predicted Orders],  
PredictProbability([Call Center Default NN].[Number of Orders]) AS [Probability]  
FROM [Call Center Default NN]  
NATURAL PREDICTION JOIN   
(SELECT 'Tue.' AS [Day of Week],  
13 AS [Level 2 Operators]) AS t  

Contoh hasil:

Pesanan yang Diprediksi Peluang
364 0.9532...

Volume penjualan yang diprediksi lebih tinggi dari kisaran penjualan saat ini untuk hari Selasa, dan probabilitas prediksi sangat tinggi. Namun, Anda mungkin ingin membuat beberapa prediksi dengan menggunakan proses batch untuk menguji berbagai hipotesis pada model.

Catatan

Add-Ins Penggalian Data untuk Excel 2007 menyediakan panduan regresi logistik yang memudahkan menjawab pertanyaan kompleks, seperti berapa banyak Operator Tingkat Dua yang diperlukan untuk meningkatkan tingkat layanan ke tingkat target untuk pergeseran tertentu. Add-in penggalian data adalah unduhan gratis, dan menyertakan wizard yang didasarkan pada jaringan neural dan/atau algoritma regresi logistik. Untuk informasi selengkapnya, lihat Add-in Penggalian Data untuk situs Web Office 2007 .

Daftar Fungsi Prediksi

Semua algoritma Microsoft mendukung serangkaian fungsi umum. Tidak ada fungsi prediksi yang khusus untuk algoritma Microsoft Neural Network; namun, algoritma mendukung fungsi yang tercantum dalam tabel berikut.

Fungsi Prediksi Penggunaan
IsDescendant (DMX) Menentukan apakah satu simpul adalah anak dari simpul lain dalam grafik jaringan neural.
PredictAdjustedProbability (DMX) Mengembalikan probabilitas tertimbang.
PredictHistogram (DMX) Mengembalikan tabel nilai yang terkait dengan nilai yang diprediksi saat ini.
PredictVariance (DMX) Mengembalikan varians untuk nilai yang diprediksi.
PredictProbability (DMX) Mengembalikan probabilitas untuk nilai yang diprediksi.
PredictStdev (DMX) Mengembalikan simpannan standar untuk nilai yang diprediksi.
PredictSupport (DMX) Untuk jaringan neural dan model regresi logistik, mengembalikan satu nilai yang mewakili ukuran set pelatihan untuk seluruh model.

Untuk daftar fungsi yang umum untuk semua algoritma Microsoft, lihat Referensi Algoritma (Analysis Services - Penggalian Data). Untuk sintaks fungsi tertentu, lihat Referensi Fungsi Ekstensi Penggalian Data (DMX).

Lihat juga

Algoritma Jaringan Neural Microsoft
Referensi Teknis Algoritma Jaringan Neural Microsoft
Konten Model Penambangan untuk Model Jaringan Neural (Analysis Services - Penggalian Data)
Pelajaran 5: Membangun Model Jaringan Neural dan Regresi Logistik (Tutorial Penggalian Data Menengah)