Visi komputer end-to-end di tepi untuk manufaktur

Azure Data Factory
Azure IoT Edge
Azure IoT Hub
Azure Machine Learning
Azure Pipelines

Contoh arsitektur ini menunjukkan pendekatan end-to-end untuk visi komputer internet-of-things (IoT) dalam manufaktur.

Arsitektur

Diagram showing the end-to-end approach to computer vision from the edge to the cloud and back.

Unduh file Visio arsitektur ini.

Aliran data

  1. Modul kustom IoT Edge menangkap streaming video langsung, memecahnya menjadi bingkai, dan melakukan inferensi pada data gambar untuk menentukan apakah insiden telah terjadi.
  2. Modul kustom juga menggunakan metode SDK penyimpanan Azure atau API blob untuk mengunggah file video mentah ke Azure Storage, yang bertindak sebagai penyimpanan media mentah.
  3. Modul kustom mengirimkan hasil inferensi dan metadata ke Azure IoT Hub, yang bertindak sebagai hub pesan pusat untuk komunikasi di kedua arah.
  4. Azure Logic Apps memantau IoT Hub untuk pesan tentang peristiwa insiden. Logic Apps merutekan hasil inferensi dan metadata ke Microsoft Dataverse untuk penyimpanan.
  5. Ketika insiden terjadi, Logic Apps mengirimkan SMS dan pemberitahuan email ke teknisi situs. Teknisi situs menggunakan aplikasi seluler berdasarkan Power Apps untuk mengakui dan menyelesaikan insiden.
  6. Power Apps menarik hasil inferensi dan metadata dari Dataverse dan file video mentah dari Blob Storage untuk menampilkan informasi yang relevan tentang insiden tersebut. Power Apps memperbarui Dataverse dengan resolusi insiden yang disediakan teknisi situs. Langkah ini bertindak sebagai validasi human-in-the-loop untuk tujuan pelatihan ulang model.
  7. Azure Data Factory adalah orkestrator data yang mengambil file video mentah dari penyimpanan media mentah, dan mendapatkan hasil inferensi dan metadata yang sesuai dari Dataverse.
  8. Data Factory menyimpan file video mentah, ditambah metadata, di Azure Data Lake, yang berfungsi sebagai arsip video untuk tujuan audit.
  9. Data Factory memecah file video mentah menjadi bingkai, mengonversi hasil inferensi menjadi label, dan mengunggah data ke Blob Storage, yang bertindak sebagai penyimpanan data ML.
  10. Perubahan pada kode model secara otomatis memicu alur orkestrator model Azure Pipelines, yang juga dapat dipicu operator secara manual. Perubahan kode juga memulai proses pelatihan dan validasi model ML di Azure Pembelajaran Mesin.
  11. Azure Pembelajaran Mesin mulai melatih model dengan memvalidasi data dari penyimpanan data ML dan menyalin himpunan data yang diperlukan ke Azure Premium Blob Storage. Tingkat performa ini menyediakan cache data untuk pelatihan model yang lebih cepat.
  12. Azure Pembelajaran Mesin menggunakan himpunan data dalam cache data Premium untuk melatih model, memvalidasi performa model terlatih, menilainya terhadap model yang baru dilatih, dan mendaftarkan model ke registri Azure Pembelajaran Mesin.
  13. Orkestrator model Azure Pipelines meninjau performa model ML yang baru dilatih dan menentukan apakah model tersebut lebih baik daripada model sebelumnya. Jika model baru berkinerja lebih baik, alur mengunduh model dari Azure Pembelajaran Mesin dan membangun versi baru modul inferensi ML untuk diterbitkan di Azure Container Registry.
  14. Saat modul inferensi ML baru siap, Azure Pipelines menyebarkan kontainer modul dari Container Registry ke modul IoT Edge di IoT Hub.
  15. IoT Hub memperbarui perangkat IoT Edge dengan modul inferensi ML baru.

Komponen

  • Layanan Azure IoT Edge menganalisis data perangkat secara lokal untuk mengirim lebih sedikit data ke cloud, bereaksi terhadap peristiwa dengan cepat, dan beroperasi dalam kondisi konektivitas rendah. Modul ML IoT Edge dapat mengekstrak wawasan yang dapat ditindakkan dari data video streaming.
  • Azure IoT Hub adalah layanan terkelola yang memungkinkan komunikasi dua arah yang andal dan aman antara jutaan perangkat IoT dan back end berbasis cloud. IoT Hub menyediakan autentikasi per perangkat, perutean pesan, integrasi dengan layanan Azure lainnya, dan fitur manajemen untuk mengontrol dan mengonfigurasi perangkat IoT.
  • Azure Logic Apps adalah layanan cloud tanpa server untuk membuat dan menjalankan alur kerja otomatis yang mengintegrasikan aplikasi, data, layanan, dan sistem. Pengembang dapat menggunakan desainer visual untuk menjadwalkan dan mengatur alur kerja tugas umum. Logic Apps memiliki konektor untuk banyak layanan cloud populer, produk lokal, dan aplikasi perangkat lunak sebagai layanan (SaaS) lainnya. Dalam solusi ini, Logic Apps menjalankan alur kerja pemberitahuan otomatis yang mengirim pemberitahuan SMS dan email ke teknisi situs.
  • Power Apps adalah platform data dan serangkaian aplikasi, layanan, dan konektor. Ini berfungsi sebagai lingkungan pengembangan aplikasi yang cepat. Platform data yang mendasar adalah Microsoft Dataverse.
  • Dataverse adalah platform penyimpanan berbasis cloud untuk Power Apps. Dataverse mendukung pemberitahuan human-in-the-loop dan menyimpan metadata yang terkait dengan alur data MLOps.
  • Azure Blob Storage dapat diskalakan dan mengamankan penyimpanan objek untuk data yang tidak terstruktur. Anda dapat menggunakannya untuk arsip, data lake, komputasi berperforma tinggi, pembelajaran mesin, dan beban kerja cloud-native. Dalam solusi ini, penyimpanan Blob menyediakan penyimpanan data lokal untuk penyimpanan data ML dan cache data Premium untuk melatih model ML. Tingkat premium Blob Storage adalah untuk beban kerja yang membutuhkan waktu respons yang cepat dan tingkat transaksi yang tinggi, seperti pelabelan video human-in-the-loop dalam contoh ini.
  • Data Lake Storage adalah layanan penyimpanan yang dapat diskalakan dan aman secara besar-besaran untuk beban kerja analitik berkinerja tinggi. Data biasanya berasal dari beberapa sumber heterogen dan dapat disusun, semi terstruktur, atau tidak terstruktur. Azure Data Lake Storage Gen2 menggabungkan kemampuan Azure Data Lake Storage Gen1 dengan Blob Storage, dan menyediakan semantik sistem file, keamanan tingkat file, dan skala. Ini juga menawarkan penyimpanan berjenjang, ketersediaan tinggi, dan kemampuan pemulihan bencana Blob Storage. Dalam solusi ini, Data Lake Storage menyediakan penyimpanan video arsip untuk file video mentah dan metadata.
  • Azure Data Factory adalah solusi hibrid, dikelola sepenuhnya, tanpa server untuk alur kerja integrasi dan transformasi data. Ini menyediakan UI bebas kode dan panel pemantauan yang mudah digunakan. Azure Data Factory menggunakan alur untuk pergerakan data. Pemetaan aliran data melakukan berbagai tugas transformasi seperti mengekstrak, mengubah, dan memuat (ETL) dan mengekstrak, memuat, dan mengubah (ELT). Dalam contoh ini, Data Factory mengatur data dalam alur ETL ke data inferensi, yang disimpannya untuk tujuan pelatihan ulang.
  • Azure Pembelajaran Mesin adalah layanan pembelajaran mesin tingkat perusahaan untuk membangun dan menyebarkan model dengan cepat. Ini memberi pengguna di semua tingkat keterampilan dengan perancang kode rendah, pembelajaran mesin otomatis, dan lingkungan notebook Jupyter yang dihosting yang mendukung berbagai IDEs.
  • Azure Pipelines, bagian dari layanan pengembang berbasis tim Azure DevOps , membuat alur integrasi berkelanjutan (CI) dan penyebaran berkelanjutan (CD). Dalam contoh ini, orkestrator model Azure Pipelines memvalidasi kode ML, memicu alur tugas tanpa server, membandingkan model ML, dan membangun kontainer inferensi.
  • Container Registry membuat dan mengelola registri Docker untuk membangun, menyimpan, dan mengelola gambar kontainer Docker, termasuk model ML dalam kontainer.
  • Azure Monitor mengumpulkan telemetri dari sumber daya Azure, sehingga tim dapat secara proaktif mengidentifikasi masalah dan memaksimalkan performa dan keandalan.

Alternatif

Alih-alih menggunakan alur data untuk memecah aliran video menjadi bingkai gambar, Anda dapat menyebarkan modul Azure Blob Storage ke perangkat IoT Edge. Modul inferensi kemudian mengunggah bingkai gambar inferensi ke modul penyimpanan pada perangkat edge. Modul penyimpanan menentukan kapan harus mengunggah bingkai langsung ke penyimpanan data ML. Keuntungan dari pendekatan ini adalah menghapus langkah dari alur data. Tradeoff adalah bahwa perangkat edge digabungkan erat dengan Azure Blob Storage.

Untuk orkestrasi model, Anda dapat menggunakan Azure Pipelines atau Azure Data Factory.

  • Keuntungan Azure Pipelines adalah hubungan dekatnya dengan kode model ML. Anda dapat memicu alur pelatihan dengan mudah dengan perubahan kode melalui CI/CD.
  • Manfaat Data Factory adalah bahwa setiap alur dapat menyediakan sumber daya komputasi yang diperlukan. Data Factory tidak berpegang pada agen Azure Pipelines untuk menjalankan pelatihan ML, yang dapat menyimpulkan aliran CI/CD normal.

Detail skenario

Pabrik pintar yang sepenuhnya otomatis menggunakan kecerdasan buatan (AI) dan pembelajaran mesin (ML) untuk menganalisis data, menjalankan sistem, dan meningkatkan proses dari waktu ke waktu.

Dalam contoh ini, kamera mengirim gambar ke perangkat Azure IoT Edge yang menjalankan model ML. Model menghitung inferensi, dan mengirim output yang dapat ditindak lanjuti ke cloud untuk diproses lebih lanjut. Intervensi manusia adalah bagian dari kecerdasan yang ditangkap model ML. Proses ML adalah siklus pelatihan, pengujian, penyetelan, dan validasi algoritma ML yang berkelanjutan.

Kemungkinan kasus penggunaan

Proses manufaktur menggunakan visi komputer IoT dalam aplikasi keamanan dan jaminan kualitas. Sistem visi komputer IoT dapat:

  • Membantu memastikan kepatuhan terhadap pedoman manufaktur seperti pelabelan yang tepat.
  • Identifikasi cacat manufaktur seperti ketidak merataan permukaan.
  • Tingkatkan keamanan dengan memantau pintu masuk gedung atau area.
  • Menjunjung tinggi keselamatan pekerja dengan mendeteksi penggunaan alat pelindung diri (APD) dan praktik keselamatan lainnya.

Pertimbangan

Pertimbangan ini mengimplementasikan pilar Azure Well-Architected Framework, yang merupakan serangkaian tenet panduan yang dapat digunakan untuk meningkatkan kualitas beban kerja. Untuk informasi selengkapnya, lihat Microsoft Azure Well-Architected Framework.

Ketersediaan

Aplikasi berbasis ML biasanya memerlukan satu set sumber daya untuk pelatihan dan satu lagi untuk melayani. Sumber daya pelatihan umumnya tidak memerlukan ketersediaan tinggi, karena permintaan produksi langsung tidak secara langsung menggunakan sumber daya ini. Sumber daya yang diperlukan untuk melayani permintaan harus memiliki ketersediaan tinggi.

Operasional

Solusi ini dibagi menjadi tiga area operasional:

  • Dalam operasi IoT, model ML pada perangkat edge menggunakan gambar real time dari kamera yang terhubung ke bingkai video inferensi. Perangkat edge juga mengirim aliran video yang di-cache ke penyimpanan cloud untuk digunakan untuk audit dan pelatihan ulang model. Setelah pelatihan ulang ML, Azure IoT Hub memperbarui perangkat edge dengan modul inferensi ML baru.

  • MLOps menggunakan praktik DevOps untuk mengatur pelatihan model, pengujian, dan operasi penyebaran. Manajemen siklus hidup MLOps mengotomatiskan proses penggunaan model ML untuk pengambilan keputusan yang kompleks, atau produksi model. Kunci MLOps adalah koordinasi yang ketat di antara tim yang membangun, melatih, mengevaluasi, dan menyebarkan model ML.

  • Operasi human-in-the-loop memberi tahu orang untuk campur tangan pada langkah-langkah tertentu dalam otomatisasi. Dalam transaksi human-in-the-loop, pekerja memeriksa dan mengevaluasi hasil prediksi pembelajaran mesin. Intervensi manusia menjadi bagian dari kecerdasan yang ditangkap model ML, dan membantu memvalidasi model.

    Peran manusia berikut adalah bagian dari solusi ini:

    • Teknisi situs menerima pemberitahuan insiden yang dikirim Logic Apps, dan memvalidasi hasil atau prediksi model ML secara manual. Misalnya, teknisi situs mungkin memeriksa katup yang diprediksi model telah gagal.

    • Pelabel data melabeli himpunan data untuk pelatihan ulang, untuk menyelesaikan perulangan solusi end-to-end. Proses pelabelan data sangat penting untuk data gambar, sebagai langkah pertama dalam melatih model yang andal melalui algoritma. Dalam contoh ini, Azure Data Factory mengatur bingkai video menjadi pengelompokan positif dan positif palsu, yang membuat pekerjaan pelabel data lebih mudah.

    • Ilmuwan data menggunakan himpunan data berlabel untuk melatih algoritma untuk membuat prediksi kehidupan nyata yang benar. Ilmuwan data menggunakan MLOps dengan GitHub Actions atau Azure Pipelines dalam proses CI untuk melatih dan memvalidasi model secara otomatis. Pelatihan dapat dipicu secara manual, atau otomatis dengan memeriksa skrip atau data pelatihan baru. Ilmuwan data bekerja di ruang kerja Azure Pembelajaran Mesin yang dapat mendaftar, menyebarkan, dan mengelola model secara otomatis.

    • Teknisi IoT menggunakan Azure Pipelines untuk menerbitkan modul IoT Edge dalam kontainer ke Container Registry. Teknisi dapat menyebarkan dan menskalakan infrastruktur sesuai permintaan dengan menggunakan alur CD.

    • Brankas auditor meninjau aliran video yang diarsipkan untuk mendeteksi anomali, menilai kepatuhan, dan mengonfirmasi hasil ketika pertanyaan muncul tentang prediksi model.

    Dalam solusi ini, IoT Hub menyerap telemetri dari kamera dan mengirim metrik ke Azure Monitor, sehingga teknisi situs dapat menyelidiki dan memecahkan masalah. Azure Pembelajaran Mesin mengirimkan metrik pengamatan dan telemetri model ke Azure Monitor, membantu teknisi IoT dan ilmuwan data untuk mengoptimalkan operasi.

Performa

Perangkat IoT memiliki memori dan daya pemrosesan yang terbatas, jadi penting untuk membatasi ukuran kontainer model yang dikirim ke perangkat. Pastikan untuk menggunakan perangkat IoT yang dapat melakukan inferensi model dan menghasilkan hasil dalam jumlah waktu yang dapat diterima.

Untuk mengoptimalkan performa model pelatihan, arsitektur contoh ini menggunakan Azure Premium Blob Storage. Tingkat performa ini dirancang untuk beban kerja yang membutuhkan waktu respons yang cepat dan tingkat transaksi yang tinggi, seperti skenario pelabelan video human-in-the-loop.

Pertimbangan performa juga berlaku untuk alur penyerapan data. Data Factory memaksimalkan pergerakan data dengan menyediakan solusi yang sangat berkinerja tinggi dan hemat biaya.

Skalabilitas

Sebagian besar komponen yang digunakan dalam solusi ini adalah layanan terkelola yang secara otomatis diskalakan.

Skalabilitas untuk aplikasi IoT tergantung pada kuota dan throttling IoT Hub. Faktor-faktor yang perlu dipertimbangkan meliputi:

  • Kuota harian pesan maksimum ke Azure IoT Hub.
  • Kuota perangkat yang tersambung dalam instans Azure IoT Hub.
  • Throughput penyerapan dan pemrosesan.

Dalam ML, skalabilitas mengacu pada peluasan skala kluster yang digunakan untuk melatih model terhadap himpunan data besar. Skalabilitas juga memungkinkan model ML memenuhi tuntutan aplikasi yang mengonsumsinya. Untuk memenuhi kebutuhan ini, kluster ML harus menyediakan peluasan skala pada CPU dan pada node yang diaktifkan unit pemrosesan grafis (GPU).

Untuk panduan umum tentang merancang solusi yang dapat diskalakan, lihat daftar periksa efisiensi performa di Azure Architecture Center.

Keamanan

Keamanan memberikan jaminan terhadap serangan yang disukai dan penyalahgunaan data dan sistem berharga Anda. Untuk informasi selengkapnya, lihat Gambaran Umum pilar keamanan.

Manajemen akses di Dataverse dan layanan Azure lainnya membantu memastikan bahwa hanya pengguna yang berwenang yang dapat mengakses lingkungan, data, dan laporan. Solusi ini menggunakan Azure Key Vault untuk mengelola kata sandi dan rahasia. Penyimpanan dienkripsi menggunakan kunci yang dikelola pelanggan.

Untuk panduan umum tentang merancang solusi IoT yang aman, lihat Dokumentasi Keamanan Azure dan arsitektur referensi Azure IoT.

Pengoptimalan biaya

Optimalisasi biaya adalah tentang mencari cara untuk mengurangi pengeluaran yang tidak perlu dan meningkatkan efisiensi operasional. Untuk informasi selengkapnya, lihat Gambaran umum pilar pengoptimalan biaya.

Secara umum, gunakan kalkulator harga Azure untuk memperkirakan biaya. Untuk pertimbangan lain, lihat Pengoptimalan biaya.

Azure Machine Learning juga menyebarkan layanan Container Registry, Azure Storage, dan Azure Key Vault, yang dikenakan biaya tambahan. Untuk informasi selengkapnya, lihat Cara kerja Azure Machine Learning: Arsitektur dan konsep.

Harga Azure Pembelajaran Mesin mencakup biaya untuk komputer virtual (VM) yang digunakan untuk melatih model di cloud. Untuk informasi tentang ketersediaan Azure Pembelajaran Mesin dan VM per wilayah Azure, lihat Produk yang tersedia menurut wilayah.

Kontributor

Artikel ini dikelola oleh Microsoft. Ini awalnya ditulis oleh kontributor berikut.

Penulis Utama:

Langkah berikutnya