Postingan ini ditulis bersama Daniele Chiappalupi, peserta tim mahasiswa Hackathon AWS di ETH Zürich.
Setiap orang dapat dengan mudah memulai pembelajaran mesin (ML) menggunakan Mulai Lompatan Amazon SageMaker. Dalam postingan ini, kami menunjukkan kepada Anda bagaimana tim Hackathon universitas menggunakan SageMaker JumpStart untuk dengan cepat membangun aplikasi yang membantu pengguna mengidentifikasi dan menghilangkan bias.
“Amazon SageMaker berperan penting dalam proyek kami. Hal ini memudahkan penerapan dan pengelolaan instance Flan yang telah dilatih sebelumnya, sehingga memberi kami dasar yang kuat untuk aplikasi kami. Fitur penskalaan otomatisnya terbukti penting selama periode lalu lintas tinggi, memastikan aplikasi kami tetap responsif dan pengguna menerima analisis bias yang stabil dan cepat. Lebih jauh lagi, dengan memungkinkan kami memindahkan tugas berat untuk menanyakan model Flan ke layanan terkelola, kami dapat menjaga aplikasi kami tetap ringan dan cepat, sehingga meningkatkan pengalaman pengguna di berbagai perangkat. Fitur SageMaker memberdayakan kami untuk memaksimalkan waktu kami di hackathon, memungkinkan kami untuk fokus pada pengoptimalan perintah dan aplikasi kami daripada mengelola kinerja dan infrastruktur model.”
– Daniele Chiappalupi, peserta tim Hackathon mahasiswa AWS di ETH Zürich.
Ikhtisar solusi
Tema Hackathon adalah berkontribusi pada tujuan berkelanjutan PBB dengan teknologi AI. Seperti yang ditunjukkan pada gambar berikut, aplikasi yang dibangun di Hackathon berkontribusi terhadap tiga Tujuan Pembangunan Berkelanjutan (pendidikan berkualitas, menargetkan diskriminasi berbasis gender, dan mengurangi kesenjangan) dengan membantu pengguna mengidentifikasi dan menghilangkan bias dari teks mereka untuk mempromosikan keadilan. dan bahasa inklusif.
Seperti yang ditunjukkan pada tangkapan layar berikut, setelah Anda memberikan teks, aplikasi menghasilkan versi baru yang bebas dari bias ras, etnis, dan gender. Selain itu, ini menyoroti bagian spesifik dari teks masukan Anda yang terkait dengan setiap kategori bias.
Dalam arsitektur yang ditunjukkan pada diagram berikut, pengguna memasukkan teks ke dalam Bereaksiaplikasi web berbasis, yang memicu Gerbang API Amazon, yang pada gilirannya memanggil an AWS Lambda berfungsi tergantung pada bias dalam teks pengguna. Fungsi Lambda memanggil titik akhir model Flan di SageMaker JumpStart, yang mengembalikan hasil teks yang tidak bias melalui rute yang sama kembali ke aplikasi front-end.
Proses pengembangan aplikasi
Proses pengembangan aplikasi ini bersifat berulang dan berpusat pada dua bidang utama: antarmuka pengguna dan integrasi model ML.
Kami memilih React untuk pengembangan front-end karena fleksibilitas, skalabilitas, dan alat canggihnya untuk membuat antarmuka pengguna interaktif. Mengingat sifat aplikasi kami—memproses masukan pengguna dan menyajikan hasil yang lebih baik—arsitektur berbasis komponen React terbukti ideal. Dengan React, kami dapat secara efisien membangun aplikasi satu halaman yang memungkinkan pengguna mengirimkan teks dan melihat hasil yang tidak bias tanpa perlu penyegaran halaman terus-menerus.
Teks yang dimasukkan oleh pengguna perlu diproses oleh model bahasa yang kuat untuk memeriksa bias. Kami memilih Flan karena sifat ketahanan, efisiensi, dan skalabilitasnya. Untuk memanfaatkan Flan, kami menggunakan SageMaker JumpStart, seperti yang ditunjukkan pada gambar layar berikut. Amazon SageMaker mempermudah penerapan dan pengelolaan instance Flan yang telah dilatih sebelumnya, memungkinkan kami fokus pada pengoptimalan perintah dan kueri dibandingkan mengelola performa dan infrastruktur model.
Menghubungkan model Flan ke aplikasi front-end kami memerlukan integrasi yang kuat dan aman, yang dicapai dengan menggunakan Lambda dan API Gateway. Dengan Lambda, kami membuat fungsi tanpa server yang berkomunikasi langsung dengan model SageMaker kami. Kami kemudian menggunakan API Gateway untuk membuat titik akhir yang aman, terukur, dan mudah diakses bagi aplikasi React kami untuk menjalankan fungsi Lambda. Saat pengguna mengirimkan teks, aplikasi memicu serangkaian panggilan API ke gateway—pertama untuk mengidentifikasi apakah ada bias, kemudian, jika perlu, kueri tambahan untuk mengidentifikasi, menemukan, dan menetralisir bias tersebut. Semua permintaan ini dirutekan melalui fungsi Lambda dan kemudian ke model SageMaker kami.
Tugas akhir kami dalam proses pengembangan adalah pemilihan petunjuk untuk menanyakan model bahasa. Di sini, kumpulan data CrowS-Pairs memainkan peran penting karena memberikan contoh nyata teks bias, yang kami gunakan untuk menyempurnakan permintaan kami. Kami memilih petunjuk melalui proses berulang, dengan tujuan memaksimalkan akurasi dalam deteksi bias dalam kumpulan data ini.
Mengakhiri prosesnya, kami mengamati alur operasional yang lancar dalam aplikasi yang telah selesai. Prosesnya dimulai dengan pengguna mengirimkan teks untuk dianalisis, yang kemudian dikirim melalui permintaan POST ke titik akhir API Gateway kami yang aman. Hal ini memicu fungsi Lambda, yang berkomunikasi dengan titik akhir SageMaker. Akibatnya, model Flan menerima serangkaian kueri. Yang pertama memeriksa adanya bias dalam teks. Jika bias terdeteksi, kueri tambahan disebarkan untuk menemukan, mengidentifikasi, dan menetralisir elemen bias ini. Hasilnya kemudian dikembalikan melalui jalur yang sama—pertama ke fungsi Lambda, lalu melalui API Gateway, dan akhirnya kembali ke pengguna. Jika ada bias yang ditemukan dalam teks asli, pengguna akan menerima analisis komprehensif yang menunjukkan jenis bias yang terdeteksi, baik ras, etnis, atau gender. Bagian tertentu dari teks di mana bias ini ditemukan akan disorot, sehingga memberikan gambaran yang jelas kepada pengguna tentang perubahan yang dilakukan. Bersamaan dengan analisis ini, disajikan versi baru teks mereka yang tidak bias, yang secara efektif mengubah masukan yang berpotensi bias menjadi narasi yang lebih inklusif.
Di bagian berikut, kami merinci langkah-langkah untuk menerapkan solusi ini.
Siapkan lingkungan React
Kami mulai dengan menyiapkan lingkungan pengembangan untuk React. Untuk mem-bootstrap aplikasi React baru dengan konfigurasi minimal, kami menggunakan create-react-app:
npx create-react-app my-app
Bangun antarmuka pengguna
Dengan menggunakan React, kami merancang antarmuka sederhana bagi pengguna untuk memasukkan teks, dengan tombol pengiriman, tombol reset, dan tampilan overlay untuk menyajikan hasil yang diproses saat tersedia.
Memulai model Flan di SageMaker
Kami menggunakan SageMaker untuk membuat instance model bahasa Flan yang telah dilatih sebelumnya dengan titik akhir untuk inferensi waktu nyata. Model ini dapat digunakan terhadap payload terstruktur JSON seperti berikut:
Buat fungsi Lambda
Kami mengembangkan fungsi Lambda yang berinteraksi langsung dengan titik akhir SageMaker kami. Fungsi ini dirancang untuk menerima permintaan dengan teks pengguna, meneruskannya ke titik akhir SageMaker, dan mengembalikan hasil yang disempurnakan, seperti yang ditunjukkan dalam kode berikut (ENDPOINT_NAME
telah disiapkan sebagai titik akhir instans SageMaker):
Siapkan Gerbang API
Kami mengonfigurasi REST API baru di API Gateway dan menautkannya ke fungsi Lambda kami. Koneksi ini memungkinkan aplikasi React kami membuat permintaan HTTP ke API Gateway, yang kemudian memicu fungsi Lambda.
Integrasikan aplikasi React dengan API
Kami memperbarui aplikasi React untuk membuat permintaan POST ke API Gateway ketika tombol kirim diklik, dengan isi permintaan berupa teks pengguna. Kode JavaScript yang kami gunakan untuk melakukan panggilan API adalah sebagai berikut (REACT_APP_AWS_ENDPOINT
sesuai dengan titik akhir API Gateway yang terikat pada panggilan Lambda):
Optimalkan pilihan cepat
Untuk meningkatkan akurasi deteksi bias, kami menguji berbagai perintah terhadap kumpulan data CrowS-Pairs. Melalui proses berulang ini, kami memilih petunjuk yang memberikan akurasi tertinggi.
Terapkan dan uji aplikasi React di Vercel
Setelah membangun aplikasi, kami menyebarkannya di Vercel agar dapat diakses publik. Kami melakukan pengujian ekstensif untuk memastikan aplikasi berfungsi sesuai harapan, mulai dari antarmuka pengguna hingga respons dari model bahasa.
Langkah-langkah ini meletakkan dasar untuk membuat aplikasi kami untuk menganalisis dan menghilangkan bias teks. Terlepas dari kompleksitas proses yang melekat, penggunaan alat seperti SageMaker, Lambda, dan API Gateway menyederhanakan pengembangan, memungkinkan kami untuk fokus pada tujuan inti proyek—mengidentifikasi dan menghilangkan bias dalam teks.
Kesimpulan
SageMaker JumpStart menawarkan cara mudah untuk menjelajahi fitur dan kemampuan SageMaker. Ini memberikan solusi satu langkah yang dikurasi, contoh notebook, dan model terlatih yang dapat diterapkan. Sumber daya ini memungkinkan Anda mempelajari dan memahami SageMaker dengan cepat. Selain itu, Anda memiliki opsi untuk menyempurnakan model dan menerapkannya sesuai dengan kebutuhan spesifik Anda. Akses ke JumpStart tersedia melalui Studio Amazon SageMaker atau secara terprogram menggunakan API SageMaker.
Dalam postingan ini, Anda mempelajari bagaimana tim mahasiswa Hackathon mengembangkan solusi dalam waktu singkat menggunakan SageMaker JumpStart, yang menunjukkan potensi AWS dan SageMaker JumpStart dalam memungkinkan pengembangan dan penerapan solusi AI yang canggih secara cepat, bahkan oleh tim kecil atau individu.
Untuk mempelajari lebih lanjut tentang penggunaan SageMaker JumpStart, lihat Instruksi penyempurnaan untuk FLAN T5 XL dengan Amazon SageMaker Jumpstart dan Permintaan zero-shot untuk model dasar Flan-T5 di Amazon SageMaker JumpStart.
ETH Analytics Club menyelenggarakan 'ETH Datathon', sebuah hackathon AI/ML yang menarik lebih dari 150 peserta dari ETH Zurich, Universitas Zurich, dan EPFL. Acara ini menampilkan lokakarya yang dipimpin oleh para pemimpin industri, tantangan coding 24 jam, dan peluang jaringan yang berharga dengan sesama mahasiswa dan profesional industri. Terima kasih yang sebesar-besarnya kepada tim ETH Hackathon: Daniele Chiappalupi, Athina Nisioti, dan Francesco Ignazio Re, serta tim penyelenggara AWS lainnya: Alice Morano, Demir Catovic, Iana Peix, Jan Oliver Seidenfuss, Lars Nettemann, dan Markus Winterholer.
Konten dan opini dalam posting ini adalah milik penulis pihak ketiga dan AWS tidak bertanggung jawab atas konten atau keakuratan posting ini.
Tentang penulis
Juni Zhang adalah Arsitek Solusi yang berbasis di Zurich. Dia membantu pelanggan Swiss merancang solusi berbasis cloud untuk mencapai potensi bisnis mereka. Dia memiliki minat terhadap keberlanjutan dan berupaya memecahkan tantangan keberlanjutan saat ini dengan teknologi. Dia juga penggemar berat tenis dan sangat menikmati bermain permainan papan.
Mohan Gowda memimpin tim Machine Learning di AWS Swiss. Dia bekerja terutama dengan pelanggan Otomotif untuk mengembangkan solusi dan platform AI/ML yang inovatif untuk kendaraan generasi berikutnya. Sebelum bekerja dengan AWS, Mohan bekerja di perusahaan Konsultan Manajemen Global dengan fokus pada Strategi & Analisis. Minatnya terletak pada kendaraan yang terhubung dan mengemudi secara otonom.
Makananini Egli adalah Kepala Pendidikan di Swiss. Dia adalah Pemimpin Tim yang antusias dengan pengalaman luas dalam pengembangan bisnis, penjualan, dan pemasaran.
Kemeng Zhang adalah Insinyur ML yang berbasis di Zurich. Dia membantu pelanggan global merancang, mengembangkan, dan menskalakan aplikasi berbasis ML untuk memberdayakan kemampuan digital mereka guna meningkatkan pendapatan bisnis dan mengurangi biaya. Dia juga sangat bersemangat dalam menciptakan aplikasi yang berpusat pada manusia dengan memanfaatkan pengetahuan dari ilmu perilaku. Dia suka bermain olahraga air dan berjalan-jalan dengan anjing.
Daniele Chiappalupi adalah lulusan baru dari ETH Zürich. Dia menyukai setiap aspek rekayasa perangkat lunak, mulai dari desain hingga implementasi, dan dari penerapan hingga pemeliharaan. Dia sangat tertarik dengan AI dan sangat antusias dalam mengeksplorasi, memanfaatkan, dan berkontribusi terhadap kemajuan terbaru di bidangnya. Di waktu luangnya, dia suka bermain seluncur salju saat cuaca dingin dan bermain bola basket saat cuaca sedang hangat.
- Konten Bertenaga SEO & Distribusi PR. Dapatkan Amplifikasi Hari Ini.
- PlatoData.Jaringan Vertikal Generatif Ai. Berdayakan Diri Anda. Akses Di Sini.
- PlatoAiStream. Intelijen Web3. Pengetahuan Diperkuat. Akses Di Sini.
- PlatoESG. Karbon, teknologi bersih, energi, Lingkungan Hidup, Tenaga surya, Penanganan limbah. Akses Di Sini.
- PlatoHealth. Kecerdasan Uji Coba Biotek dan Klinis. Akses Di Sini.
- Sumber: https://aws.amazon.com/blogs/machine-learning/innovation-for-inclusion-hack-the-bias-with-amazon-sagemaker/
- :memiliki
- :adalah
- :bukan
- :Di mana
- $NAIK
- 100
- 13
- 150
- 17
- 25
- 7
- 8
- 87
- 97
- 990
- a
- Sanggup
- Tentang Kami
- mengakses
- dapat diakses
- Menurut
- ketepatan
- Mencapai
- dicapai
- di seluruh
- Tambahan
- Selain itu
- kemajuan
- Setelah
- terhadap
- AI
- AI / ML
- alice
- Semua
- mengizinkan
- diizinkan
- Membiarkan
- di samping
- juga
- Amazon
- Amazon SageMaker
- Amazon Web Services
- an
- analisis
- analisis
- menganalisis
- dan
- dan infrastruktur
- mengantisipasi
- Apa pun
- api
- Lebah
- aplikasi
- Aplikasi
- aplikasi
- arsitektur
- ADALAH
- daerah
- AS
- penampilan
- At
- penulis
- mobil
- otomotif
- otonom
- tersedia
- AWS
- Axios
- kembali
- berdasarkan
- Bola basket
- BE
- karena
- sebelum
- mulai
- makhluk
- prasangka
- bias
- bias
- papan
- Permainan papan
- tubuh
- Terikat
- luas
- membangun
- Bangunan
- dibangun di
- bisnis
- pengembangan bisnis
- tombol
- by
- panggilan
- Panggilan
- CAN
- kemampuan
- Kategori
- berpusat
- menantang
- tantangan
- Perubahan
- Cek
- memilih
- jelas
- klub
- kode
- Pengkodean
- kompleksitas
- luas
- dilakukan
- konfigurasi
- dikonfigurasi
- terhubung
- koneksi
- Karena itu
- konstan
- konsultasi
- Konten
- konteks
- menyumbang
- berkontribusi
- berkontribusi
- Mudah
- Core
- berkorespondensi
- Biaya
- bisa
- membuat
- dibuat
- membuat
- sangat penting
- dikuratori
- terbaru
- pelanggan
- data
- mendalam
- Tergantung
- menyebarkan
- dikerahkan
- penyebaran
- Mendesain
- dirancang
- Meskipun
- rinci
- terdeteksi
- Deteksi
- mengembangkan
- dikembangkan
- berkembang
- Pengembangan
- Devices
- berbeda
- digital
- langsung
- menampilkan
- menarik
- penggerak
- dua
- selama
- setiap
- dengan penuh semangat
- mudah
- Mudah
- Pendidikan
- efektif
- efisiensi
- efisien
- elemen
- menghilangkan
- memberdayakan
- diberdayakan
- memungkinkan
- Titik akhir
- insinyur
- Teknik
- meningkatkan
- memastikan
- memastikan
- masuk
- antusias
- Lingkungan Hidup
- ETH
- Bahkan
- Acara
- Setiap
- contoh
- contoh
- diharapkan
- pengalaman
- menyelidiki
- Menjelajahi
- luas
- adil
- kipas
- FAST
- Fitur
- Fitur
- sesama
- bidang
- Angka
- terakhir
- Perusahaan
- Pertama
- keluwesan
- aliran
- Fokus
- berikut
- berikut
- Untuk
- Depan
- ditemukan
- Prinsip Dasar
- Gratis
- dari
- fungsi
- lebih lanjut
- Games
- pintu gerbang
- memberikan
- Gender
- menghasilkan
- generasi
- mendapatkan
- diberikan
- Pemberian
- Aksi
- tujuan
- Anda
- akan
- merebut
- lulus
- besar
- dasar
- terjangan
- hackathon
- Memiliki
- he
- kepala
- berat
- membantu
- membantu
- di sini
- paling tinggi
- Disorot
- highlight
- -nya
- host
- Seterpercayaapakah Olymp Trade? Kesimpulan
- HTML
- http
- HTTPS
- besar
- ideal
- mengenali
- if
- melaksanakan
- implementasi
- mengimpor
- memperbaiki
- in
- penyertaan
- Inklusif
- Meningkatkan
- individu
- industri
- ketidaksetaraan
- Infrastruktur
- inheren
- Innovation
- inovatif
- memasukkan
- contoh
- instrumental
- integrasi
- interaktif
- Antarmuka
- interface
- ke
- memanggil
- IT
- NYA
- jan
- JavaScript
- jpg
- json
- Menjaga
- pengetahuan
- bahasa
- Terbaru
- memimpin
- pemimpin
- Memimpin
- BELAJAR
- belajar
- pengetahuan
- Dipimpin
- leveraging
- terletak
- ringan
- 'like'
- 'like
- terkait
- Lot
- mencintai
- mesin
- Mesin belajar
- terbuat
- Utama
- pemeliharaan
- membuat
- mengelola
- berhasil
- pengelolaan
- pelaksana
- Marketing
- Maksimalkan
- memaksimalkan
- minimal
- ML
- model
- model
- bulan
- lebih
- NARASI
- Alam
- perlu
- Perlu
- dibutuhkan
- kebutuhan
- jaringan
- Peluang jaringan
- New
- berikutnya
- tujuan
- of
- menawarkan
- Penawaran
- on
- operasional
- Pendapat
- Peluang
- mengoptimalkan
- pilihan
- or
- urutan
- pengorganisasian
- asli
- OS
- kami
- halaman
- peserta
- bagian
- gairah
- bergairah
- Melakukan
- prestasi
- periode
- Platform
- plato
- Kecerdasan Data Plato
- Data Plato
- dimainkan
- bermain
- Pos
- potensi
- berpotensi
- kuat
- kehadiran
- menyajikan
- disajikan
- terutama
- proses
- Diproses
- profesional
- proyek
- mendorong
- properties
- terbukti
- memberikan
- disediakan
- menyediakan
- di depan umum
- kualitas
- query
- segera
- cepat
- agak
- RE
- Bereaksi
- segera
- nyata
- real-time
- menerima
- diterima
- menerima
- baru
- menurunkan
- mengurangi
- lihat
- halus
- terkait
- tetap
- menghapus
- permintaan
- permintaan
- wajib
- Sumber
- tanggapan
- tanggung jawab
- responsif
- ISTIRAHAT
- mengakibatkan
- Hasil
- kembali
- Pengembalian
- pendapatan
- kuat
- kesegaran
- Peran
- Rute
- pembuat bijak
- penjualan
- sama
- Skalabilitas
- terukur
- Skala
- skala
- Ilmu
- mulus
- bagian
- aman
- melihat
- benih
- terpilih
- seleksi
- mengirim
- Seri
- Tanpa Server
- layanan
- Layanan
- set
- pengaturan
- dia
- Pendek
- Menunjukkan
- ditunjukkan
- Pertunjukkan
- Sederhana
- kecil
- Perangkat lunak
- rekayasa Perangkat Lunak
- padat
- larutan
- Solusi
- MEMECAHKAN
- mutakhir
- tertentu
- Olahraga
- mulai
- mantap
- Tangga
- Penyelarasan
- efisien
- berusaha
- mahasiswa
- Siswa
- pengajuan
- menyerahkan
- disampaikan
- Kemudian
- Keberlanjutan
- berkelanjutan
- Pembangunan berkelanjutan
- SWIFT
- Swiss
- Swiss
- penargetan
- tugas
- tim
- tim
- Teknologi
- uji
- diuji
- tes
- teks
- dari
- Terima kasih
- bahwa
- Grafik
- mereka
- Mereka
- tema
- kemudian
- Ini
- pihak ketiga
- ini
- itu
- tiga
- Melalui
- waktu
- untuk
- alat
- mengubah
- dipicu
- MENGHIDUPKAN
- dua
- jenis
- Akhirnya
- UN
- memahami
- universitas
- diperbarui
- us
- menggunakan
- bekas
- Pengguna
- Pengguna Pengalaman
- User Interface
- Pengguna
- menggunakan
- Penggunaan
- dimanfaatkan
- Memanfaatkan
- Berharga
- berbagai
- Kendaraan
- versi
- sangat
- melalui
- View
- berjalan
- Hangat
- adalah
- air
- Cara..
- we
- Cuaca
- jaringan
- layanan web
- BAIK
- adalah
- ketika
- apakah
- yang
- dengan
- dalam
- tanpa
- bekerja
- kerja
- bekerja
- Lokakarya
- Kamu
- Anda
- zephyrnet.dll
- Zurich