Artefak yang diproduksi oleh pelatihan model di Neptune - Amazon Neptune

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Artefak yang diproduksi oleh pelatihan model di Neptune

Setelah pelatihan model, Neptune MLmenggunakan parameter model terlatih terbaik untuk menghasilkan artefak model yang diperlukan untuk meluncurkan titik akhir inferensi dan memberikan prediksi model. Artefak ini dikemas oleh pekerjaan pelatihan dan disimpan di lokasi keluaran Amazon S3 dari pekerjaan SageMaker pelatihan terbaik.

Bagian berikut menjelaskan apa yang termasuk dalam artefak model untuk berbagai tugas, dan bagaimana perintah model transform menggunakan model terlatih yang sudah ada sebelumnya untuk menghasilkan artefak bahkan pada data grafik baru.

Artefak yang dihasilkan untuk tugas yang berbeda

Isi artefak model yang dihasilkan oleh proses pelatihan tergantung pada tugas pembelajaran mesin target:

  • Klasifikasi dan regresi node - Untuk prediksi properti node, artefak mencakup parameter model, embeddings node dari encoder GNN, prediksi model untuk node dalam grafik pelatihan, dan beberapa file konfigurasi untuk titik akhir inferensi. Dalam klasifikasi node dan tugas regresi node, prediksi model telah dihitung sebelumnya untuk node yang ada selama pelatihan untuk mengurangi latensi kueri.

  • Klasifikasi dan regresi tepi - Untuk prediksi properti edge, artefak juga menyertakan parameter model dan embeddings simpul. Parameter decoder model sangat penting untuk inferensi karena kita menghitung klasifikasi tepi atau prediksi regresi tepi dengan menerapkan decoder model ke embeddings sumber dan titik tujuan dari tepi.

  • Prediksi tautan - Untuk prediksi tautan, selain artefak yang dihasilkan untuk prediksi properti edge, grafik DGL juga disertakan sebagai artefak karena prediksi tautan memerlukan grafik pelatihan untuk melakukan prediksi. Tujuan dari prediksi tautan adalah untuk memprediksi simpul tujuan yang cenderung digabungkan dengan titik sumber untuk membentuk tepi dari jenis tertentu dalam grafik. Untuk melakukan ini, penyematan simpul dari titik sumber dan representasi yang dipelajari untuk tipe tepi digabungkan dengan embeddings simpul dari semua simpul tujuan yang mungkin untuk menghasilkan skor kemungkinan tepi untuk masing-masing simpul tujuan. Skor kemudian diurutkan untuk menentukan peringkat simpul tujuan potensional dan mengembalikan kandidat teratas.

Untuk masing-masing jenis tugas, bobot model Graph Neural Network dari DGL disimpan dalam artefak model. Hal ini memungkinkan Neptune MLuntuk menghitung keluaran model baru saat grafik berubah (inferensi induktif), selain menggunakan prediksi dan embeddings yang telah dihitung sebelumnya (inferensi transduktif) untuk mengurangi latensi.

Menghasilkan artefak model baru

Artefak model yang dihasilkan setelah pelatihan model di Neptune ML secara langsung terkait dengan proses pelatihan. Ini berarti bahwa embeddings dan prediksi pra-dihitung hanya ada untuk entitas yang berada dalam grafik pelatihan asli. Meskipun mode inferensi induktif untuk titik akhir Neptune MLdapat menghitung prediksi untuk entitas baru secara real-time, Anda mungkin ingin membuat prediksi batch pada entitas baru tanpa mengkueri titik akhir.

Untuk mendapatkan prediksi model batch untuk entitas baru yang telah ditambahkan ke grafik, artefak model baru perlu dihitung ulang untuk data grafik baru. Ini dilakukan dengan menggunakanmodeltransform perintah. Anda menggunakanmodeltransform perintah ketika Anda hanya menginginkan prediksi batch tanpa menyiapkan titik akhir, atau ketika Anda ingin semua prediksi dihasilkan sehingga Anda dapat menuliskannya kembali ke grafik.

Karena pelatihan model secara implisit melakukan transformasi model pada akhir proses pelatihan, artefak model selalu dihitung ulang pada data grafik pelatihan oleh pekerjaan pelatihan. Namun,modeltransform perintah tersebut juga dapat menghitung artefak model pada data grafik yang tidak digunakan untuk melatih model. Untuk ini, data grafik baru harus diproses menggunakan pengkodean fitur yang sama dengan data grafik asli dan harus mematuhi skema grafik yang sama.

Anda dapat melakukannya dengan terlebih dahulu membuat pekerjaan pemrosesan data baru yang merupakan tiruan dari pekerjaan pemrosesan data yang dijalankan pada data grafik pelatihan asli, dan menjalankannya pada data grafik baru (lihatMemproses data grafik yang diperbarui untuk Neptune). Kemudian, panggilmodeltransform perintah dengan yang barudataProcessingJobId dan yang lamamodelTrainingJobId untuk menghitung ulang artefak model pada data grafik yang diperbarui.

Untuk prediksi properti node, embeddings node dan prediksi dihitung ulang pada data grafik baru, bahkan untuk node yang ada dalam grafik pelatihan asli.

Untuk prediksi properti edge dan prediksi tautan, embeddings simpul juga dihitung ulang dan juga menimpa embeddings simpul yang ada. Untuk menghitung ulang embeddings node, Neptune MLmenerapkan encoder GNN yang dipelajari dari model terlatih sebelumnya ke node data grafik baru dengan fitur baru mereka.

Untuk node yang tidak memiliki fitur, representasi awal yang dipelajari dari pelatihan model asli digunakan kembali. Untuk node baru yang tidak memiliki fitur dan tidak ada dalam grafik pelatihan asli, Neptune MLmenginisialisasi representasi mereka sebagai rata-rata representasi node awal yang dipelajari dari jenis node yang ada dalam grafik pelatihan asli. Hal ini dapat menyebabkan beberapa penurunan kinerja dalam prediksi model jika Anda memiliki banyak node baru yang tidak memiliki fitur, karena mereka semua akan diinisialisasi ke embedding awal rata-rata untuk jenis node.

Jika model Anda dilatih denganconcat-node-embed set ke true, maka representasi node awal dibuat dengan menggabungkan fitur node dengan representasi awal yang dapat dipelajari. Jadi, untuk grafik yang diperbarui, representasi simpul awal node baru juga menggunakan embeddings simpul awal rata-rata, digabungkan dengan fitur simpul baru.

Selain itu, penghapusan node saat ini tidak didukung. Jika node telah dihapus dalam grafik yang diperbarui, Anda harus melatih ulang model pada data grafik yang diperbarui.

Mengkomputasi ulang artefak model kembali menggunakan parameter model yang dipelajari pada grafik baru, dan hanya boleh dilakukan ketika grafik baru sangat mirip dengan grafik lama. Jika grafik baru Anda tidak cukup mirip, Anda perlu melatih model untuk mendapatkan kinerja model yang sama pada data grafik baru. Apa yang cukup mirip tergantung pada struktur data grafik Anda, tetapi sebagai aturan praktis Anda harus melatih ulang model Anda jika data baru Anda lebih dari 10-20% berbeda dari data grafik pelatihan asli.

Untuk grafik di mana semua node memiliki fitur, ujung ambang batas yang lebih tinggi (20% berbeda) berlaku tetapi untuk grafik di mana banyak node tidak memiliki fitur dan node baru yang ditambahkan ke grafik tidak memiliki properti, maka ujung bawah (10% berbeda) mungkin bahkan terlalu tinggi.

LihatPerintah modeltransform informasi lebih lanjut tentang pekerjaan transformasi model.