Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan Machine Learning (ML) dengan Amazon Athena
Machine Learning (ML) dengan Amazon Athena memungkinkan Anda menggunakan Athena untuk menulis pernyataan SQL yang menjalankan inferensi Machine Learning (ML) menggunakan Amazon. SageMaker Fitur ini menyederhanakan akses ke model ML untuk analisis data, menghilangkan kebutuhan untuk menggunakan metode pemrograman yang kompleks untuk menjalankan inferensi.
Untuk menggunakan ML dengan Athena, Anda mendefinisikan sebuah ML dengan fungsi Athena dengan klausa USING EXTERNAL
FUNCTION
. Fungsi menunjuk ke titik akhir SageMaker model yang ingin Anda gunakan dan menentukan nama variabel dan tipe data untuk diteruskan ke model. Klausa berikutnya dalam kueri mereferensikan fungsi untuk meneruskan nilai ke model. Model ini menjalankan inferensi berdasarkan nilai-nilai yang diteruskan oleh kueri, kemudian mengembalikan hasil inferensi. Untuk informasi selengkapnya tentang SageMaker dan cara kerja SageMaker titik akhir, lihat Panduan SageMaker Pengembang Amazon.
Untuk contoh yang menggunakan ML dengan Athena dan SageMaker inferensi untuk mendeteksi nilai anomali dalam kumpulan hasil, lihat artikel Blog AWS Big Data Mendeteksi nilai anomali dengan menjalankan
Pertimbangan dan batasan
-
Wilayah yang Tersedia - Fitur Athena MLadalah fitur di mana mesin Wilayah AWS Athena versi 2 atau yang lebih baru didukung.
-
SageMaker titik akhir model harus menerima dan mengembalikan
text/csv
— Untuk informasi selengkapnya tentang format data, lihat Format data umum untuk inferensi di Panduan SageMaker Pengembang Amazon. -
Athena tidak mengirim header CSV - Jika SageMaker titik akhir Anda
text/csv
, penangan input Anda tidak boleh berasumsi bahwa baris pertama input adalah header CSV. Karena Athena tidak mengirim header CSV, output yang dikembalikan ke Athena akan berisi satu baris lebih sedikit dari yang diharapkan Athena dan menyebabkan kesalahan. -
SageMaker penskalaan titik akhir — Pastikan titik akhir SageMaker model yang direferensikan cukup ditingkatkan untuk panggilan Athena ke titik akhir. Untuk informasi selengkapnya, lihat Menskalakan SageMaker model secara otomatis di Panduan SageMaker Pengembang Amazon dan CreateEndpointConfigdi Referensi SageMaker API Amazon.
-
Izin IAM — Untuk menjalankan kueri yang menentukan fungsi HTML dengan Athena, prinsipal IAM yang menjalankan kueri harus diizinkan untuk melakukan
sagemaker:InvokeEndpoint
tindakan untuk titik akhir model yang direferensikan. SageMaker Untuk informasi selengkapnya, lihat Mengizinkan akses untuk ML dengan Athena. -
ML dengan fungsi Athena tidak dapat digunakan dalam klausa secara langsung
GROUP BY
ML dengan sintaks Athena
Klausa USING EXTERNAL FUNCTION
menentukan ML dengan fungsi Athena atau beberapa fungsi yang dapat dijadikan referensi oleh pernyataan SELECT
berikutnya dalam kueri. Anda menentukan nama fungsi, nama variabel, dan tipe data untuk variabel dan nilai kembali.
Sinopsis
Sintaks berikut menunjukkan klausa USING EXTERNAL FUNCTION
yang menentukan sebuah ML dengan fungsi Athena.
USING EXTERNAL FUNCTION ml_function_name
(variable1
data_type
[, variable2
data_type
][,...])
RETURNS data_type
SAGEMAKER 'sagemaker_endpoint
'
SELECT ml_function_name
()
Parameter
- USING EXTERNAL FUNCTION
ml_function_name
(variable1
data_type
[,variable2
data_type
][,...]) -
ml_function_name
mendefinisikan nama fungsi, yang dapat digunakan dalam klausa kueri berikutnya. Setiapvariabel data_type
menentukan variabel bernama dan tipe data yang sesuai yang diterima SageMaker model sebagai input. Tipe data yang ditentukan harus berupa tipe data Athena yang didukung. - RETURNS
data_type
-
data_type
menentukan tipe data SQL yangml_function_name
kembali ke query sebagai output dari model. SageMaker - SAGEMAKER '
sagemaker_endpoint
' -
sagemaker_endpoint menentukan titik akhir model
. SageMaker - SELECT [...]
ml_function_name
(expression
) [...] -
Query SELECT yang meneruskan nilai ke variabel fungsi dan SageMaker model untuk mengembalikan hasil.
ml_function_name
menentukan fungsi didefinisikan sebelumnya dalam query, diikuti olehekspresi
yang dievaluasi untuk lulus nilai. Nilai-nilai yang diteruskan dan dihasilkan harus cocok dengan tipe data yang sesuai yang ditentukan untuk fungsi dalam klausaUSING EXTERNAL FUNCTION
.
Contoh
Contoh berikut menunjukkan kueri menggunakan ML dengan Athena.
USING EXTERNAL FUNCTION predict_customer_registration(age INTEGER) RETURNS DOUBLE SAGEMAKER 'xgboost-2019-09-20-04-49-29-303' SELECT predict_customer_registration(age) AS probability_of_enrolling, customer_id FROM "sampledb"."ml_test_dataset" WHERE predict_customer_registration(age) < 0.5;
Contoh penggunaan pelanggan
Video berikut, yang menggunakan versi Pratinjau Machine Learning (ML) dengan Amazon Athena, menampilkan cara-cara yang dapat Anda gunakan dengan SageMaker Athena.
Memprediksi churn pelanggan
Video berikut menunjukkan cara menggabungkan Athena dengan kemampuan pembelajaran mesin Amazon SageMaker untuk memprediksi churn pelanggan.
Mendeteksi botnet
Video berikut menunjukkan bagaimana satu perusahaan menggunakan Amazon Athena dan Amazon SageMaker untuk mendeteksi botnet.