Bangun model risiko pembelajaran mesin kesehatan mental menggunakan Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Bangun model risiko pembelajaran mesin kesehatan mental menggunakan Amazon SageMaker Data Wrangler

Posting ini ditulis bersama oleh Shibangi Saha, Data Scientist, dan Graciela Kravtzov, Co-Founder dan CTO, dari Equilibrium Point.

Banyak individu mengalami gejala baru penyakit mental, seperti stres, kecemasan, depresi, penggunaan narkoba, dan gangguan stres pascatrauma (PTSD). Berdasarkan Yayasan Keluarga Kaiser, sekitar setengah dari orang dewasa (47%) secara nasional telah melaporkan dampak negatif kesehatan mental selama pandemi, peningkatan yang signifikan dari tingkat sebelum pandemi. Juga, jenis kelamin dan kelompok usia tertentu adalah yang paling mungkin melaporkan stres dan kekhawatiran, dengan tingkat yang jauh lebih tinggi daripada yang lain. Selain itu, beberapa kelompok etnis tertentu lebih cenderung melaporkan "dampak besar" pada kesehatan mental mereka daripada yang lain.

Beberapa survei, termasuk yang dikumpulkan oleh Centers for Disease Control (CDC), telah menunjukkan peningkatan substansial dalam gejala kesehatan perilaku yang dilaporkan sendiri. Menurut satu laporan CDC, yang mensurvei orang dewasa di seluruh AS pada akhir Juni 2020, 31% responden melaporkan gejala kecemasan atau depresi, 13% melaporkan telah memulai atau meningkatkan penggunaan narkoba, 26% melaporkan gejala terkait stres, dan 11% melaporkan memiliki pikiran serius untuk bunuh diri dalam 30 hari terakhir.

Data yang dilaporkan sendiri, meskipun sangat penting dalam mendiagnosis gangguan kesehatan mental, dapat dipengaruhi oleh stigma yang berkelanjutan seputar kesehatan mental dan perawatan kesehatan mental. Daripada hanya mengandalkan data yang dilaporkan sendiri, kita dapat memperkirakan dan memperkirakan tekanan mental menggunakan data dari catatan kesehatan dan data klaim untuk mencoba menjawab pertanyaan mendasar: dapatkah kita memprediksi siapa yang mungkin membutuhkan bantuan kesehatan mental sebelum mereka membutuhkannya? Jika individu-individu ini dapat diidentifikasi, program dan sumber daya intervensi dini dapat dikembangkan dan digunakan untuk menanggapi setiap gejala baru atau peningkatan yang mendasari untuk mengurangi efek dan biaya gangguan mental.

Lebih mudah diucapkan daripada dilakukan bagi mereka yang telah berjuang dengan mengelola dan memproses volume besar data klaim yang kompleks dan penuh kesenjangan! Di postingan kali ini kita share caranya Titik Ekuilibrium IoT bekas Pengatur Data Amazon SageMaker untuk merampingkan persiapan data klaim untuk kasus penggunaan kesehatan mental kami, sambil memastikan kualitas data di setiap langkah dalam proses.

Ikhtisar solusi

Persiapan data atau rekayasa fitur adalah proses yang membosankan, membutuhkan para ilmuwan dan insinyur data berpengalaman yang menghabiskan banyak waktu dan energi untuk merumuskan resep untuk berbagai transformasi (langkah) yang diperlukan untuk mendapatkan data ke dalam bentuk yang benar. Faktanya, penelitian menunjukkan bahwa persiapan data untuk pembelajaran mesin (ML) menghabiskan hingga 80% waktu ilmuwan data. Biasanya, ilmuwan dan insinyur menggunakan berbagai kerangka pemrosesan data, seperti Pandas, PySpark, dan SQL, untuk mengkodekan transformasi mereka dan membuat pekerjaan pemrosesan terdistribusi. Dengan Data Wrangler, Anda dapat mengotomatiskan proses ini. Data Wrangler adalah komponen dari Studio Amazon SageMaker yang menyediakan solusi ujung ke ujung untuk mengimpor, menyiapkan, mengubah, menampilkan, dan menganalisis data. Anda dapat mengintegrasikan Data Wrangler aliran data ke dalam alur kerja ML Anda yang ada untuk menyederhanakan dan merampingkan pemrosesan data dan rekayasa fitur menggunakan sedikit atau tanpa pengkodean.

Dalam postingan ini, kita akan membahas langkah-langkah untuk mengubah kumpulan data mentah asli menjadi fitur siap-ML yang digunakan untuk membangun model prediksi di tahap berikutnya. Pertama, kami menyelidiki sifat dari berbagai kumpulan data yang digunakan untuk kasus penggunaan kami dan bagaimana kami menggabungkan kumpulan data ini melalui Data Wrangler. Setelah penggabungan dan konsolidasi kumpulan data, kami menjelaskan transformasi individual yang kami terapkan pada kumpulan data seperti de-duplikasi, menangani nilai yang hilang, dan formula khusus, diikuti dengan bagaimana kami menggunakan analisis Model Cepat bawaan untuk memvalidasi status transformasi saat ini untuk prediksi.

Dataset

Untuk percobaan kami, pertama-tama kami mengunduh data pasien dari klien kesehatan perilaku kami. Data ini mencakup hal-hal berikut:

  • Data klaim
  • Jumlah kunjungan ruang gawat darurat
  • Jumlah kunjungan rawat inap
  • Jumlah resep obat terkait dengan kesehatan mental
  • Jumlah diagnosis pengkodean kondisi hierarkis (HCC) yang terkait dengan kesehatan mental

Tujuannya adalah untuk menggabungkan kumpulan data terpisah ini berdasarkan ID pasien dan memanfaatkan data untuk memprediksi diagnosis kesehatan mental. Kami menggunakan Data Wrangler untuk membuat kumpulan data besar dari beberapa juta baris data, yang merupakan gabungan dari lima kumpulan data terpisah. Kami juga menggunakan Data Wrangler untuk melakukan beberapa transformasi untuk memungkinkan penghitungan kolom. Pada bagian berikut, kami menjelaskan berbagai transformasi persiapan data yang kami terapkan.

Jatuhkan kolom duplikat setelah bergabung

Amazon SageMaker Data Wrangler menyediakan banyak transformasi data ML untuk merampingkan pembersihan, transformasi, dan fitur data Anda. Saat Anda menambahkan transformasi, itu menambahkan langkah ke aliran data. Setiap transformasi yang Anda tambahkan memodifikasi kumpulan data Anda dan menghasilkan kerangka data baru. Semua transformasi berikutnya berlaku untuk kerangka data yang dihasilkan. Data Wrangler menyertakan transformasi bawaan, yang dapat Anda gunakan untuk mengubah kolom tanpa kode apa pun. Anda juga dapat menambahkan transformasi khusus menggunakan PySpark, Pandas, dan PySpark SQL. Beberapa transformasi beroperasi di tempat, sementara yang lain membuat kolom keluaran baru di kumpulan data Anda.

Untuk percobaan kami, karena setelah setiap penggabungan pada ID pasien, kami memiliki kolom ID pasien duplikat. Kami perlu menghapus kolom ini. Kami menjatuhkan kolom ID pasien yang tepat, seperti yang ditunjukkan pada tangkapan layar berikut menggunakan pra-bangun Kelola Kolom ->Jatuhkan kolom transform, untuk mempertahankan hanya satu kolom ID pasien (patient_id dalam kumpulan data akhir).

ML8274-gambar001

Putar set data menggunakan Pandas

Dataset klaim adalah data tingkat pasien dengan kunjungan darurat (ER), rawat inap (IP), jumlah resep, dan data diagnosis yang sudah dikelompokkan berdasarkan kode HCC korespondennya (kurang lebih 189 kode). Untuk membangun datamart pasien, kami menggabungkan kode HCC klaim berdasarkan pasien dan memutar kode HCC dari baris ke kolom. Kami menggunakan Pandas untuk memutar set data, menghitung jumlah kode HCC berdasarkan pasien, dan kemudian bergabung dengan dataset utama pada ID pasien. Kami menggunakan opsi transformasi khusus di Data Wrangler memilih Python (Panda) sebagai kerangka pilihan.

ML8274-gambar002

Cuplikan kode berikut menunjukkan logika transformasi untuk memutar tabel:

# Table is available as variable df
import pandas as pd
import numpy as np table = pd.pivot_table(df, values = 'claim_count', index=['patient_id0'], columns = 'hcc', fill_value=0).reset_index()
df = table

Buat kolom baru menggunakan rumus khusus

Kami mempelajari literatur penelitian untuk menentukan kode HCC mana yang deterministik dalam diagnosis kesehatan mental. Kami kemudian menulis logika ini menggunakan transformasi formula kustom Data Wrangler yang menggunakan ekspresi Spark SQL untuk menghitung kolom target Diagnosis Kesehatan Mental (MH), yang kami tambahkan ke akhir DataFrame.

ML8274-gambar003

Kami menggunakan logika transformasi berikut:

# Output: MH
IF (HCC_Code_11 > 0 or HCC_Code_22 > 0 or HCC_Code_23 > 0 or HCC_Code_54 > 0 or HCC_Code_55 > 0 or HCC_Code_57 > 0 or HCC_Code_72 > 0, 1, 0)

Jatuhkan kolom dari DataFrame menggunakan PySpark

Setelah perhitungan kolom target (MH), kami membuang semua kolom duplikat yang tidak perlu. Kami mempertahankan ID pasien dan kolom MH untuk digabungkan ke dataset utama kami. Ini difasilitasi oleh transformasi SQL khusus yang menggunakan PySpark SQL sebagai kerangka kerja pilihan kami.

ML8274-gambar005

Kami menggunakan logika berikut:

/* Table is available as variable df */ select MH, patient_id0 from df

Pindahkan kolom MH untuk memulai

Algoritme ML kami mengharuskan input berlabel ada di kolom pertama. Oleh karena itu, kami memindahkan kolom terhitung MH ke awal DataFrame agar siap diekspor.

ML8274-gambar006

Isi bagian yang kosong dengan 0 menggunakan Pandas

Algoritme ML kami juga mengharuskan data input tidak memiliki bidang kosong. Oleh karena itu, kami mengisi bidang kosong dataset akhir dengan 0s. Kita dapat dengan mudah melakukan ini melalui transformasi kustom (Panda) di Data Wrangler.

ML8274-gambar007

Kami menggunakan logika berikut:

# Table is available as variable df
df.fillna(0, inplace=True)

Cast kolom dari float ke long

Anda juga dapat mengurai dan mentransmisikan kolom ke tipe data baru apa pun dengan mudah di Data Wrangler. Untuk tujuan pengoptimalan memori, kami menggunakan kolom input label kesehatan mental sebagai float.

ML8274-gambar008

Analisis Model Cepat: Grafik kepentingan fitur

Setelah membuat kumpulan data akhir, kami menggunakan jenis analisis Model Cepat di Data Wrangler untuk mengidentifikasi inkonsistensi data dengan cepat dan jika akurasi model kami berada dalam kisaran yang diharapkan, atau jika kami perlu melanjutkan rekayasa fitur sebelum menghabiskan waktu untuk melatih model. Model tersebut mengembalikan skor F1 sebesar 0.901, dengan 1 sebagai yang tertinggi. Skor F1 adalah cara menggabungkan presisi dan daya ingat model, dan itu didefinisikan sebagai rata-rata harmonik dari keduanya. Setelah memeriksa hasil positif awal ini, kami siap untuk mengekspor data dan melanjutkan dengan pelatihan model menggunakan kumpulan data yang diekspor.

ML8274-gambar009

Ekspor kumpulan data akhir ke Amazon S3 melalui notebook Jupyter

Sebagai langkah terakhir, untuk mengekspor dataset dalam bentuk saat ini (diubah) ke Layanan Penyimpanan Sederhana Amazon (Amazon S3) untuk penggunaan di masa mendatang pada pelatihan model, kami menggunakan Simpan ke Amazon S3 (melalui Jupyter Notebook) opsi ekspor. Notebook ini memulai distribusi dan skalabel Pemrosesan SageMaker Amazon pekerjaan yang menerapkan resep yang dibuat (aliran data) ke input tertentu (biasanya kumpulan data yang lebih besar) dan menyimpan hasilnya di Amazon S3. Anda juga dapat mengekspor kolom (fitur) yang diubah ke Toko Fitur Amazon SageMaker atau ekspor transformasi sebagai jalur pipa menggunakan Pipa Amazon SageMaker, atau cukup ekspor transformasi sebagai kode Python.

Untuk mengekspor data ke Amazon S3, Anda memiliki tiga opsi:

  • Ekspor data yang diubah langsung ke Amazon S3 melalui UI Data Wrangler
  • Ekspor transformasi sebagai pekerjaan Pemrosesan SageMaker melalui notebook Jupyter (seperti yang kami lakukan untuk posting ini).
  • Ekspor transformasi ke Amazon S3 melalui node tujuan. Node tujuan memberi tahu Data Wrangler tempat menyimpan data setelah Anda memprosesnya. Setelah Anda membuat node tujuan, Anda membuat pekerjaan pemrosesan untuk menghasilkan data.

ML8274-gambar010

Kesimpulan

Dalam postingan ini, kami menunjukkan bagaimana Equilibrium Point IoT menggunakan Data Wrangler untuk mempercepat proses pemuatan sejumlah besar data klaim kami untuk pembersihan dan transformasi data dalam persiapan untuk ML. Kami juga mendemonstrasikan cara menggabungkan rekayasa fitur dengan transformasi khusus menggunakan Pandas dan PySpark di Data Wrangler, yang memungkinkan kami mengekspor data langkah demi langkah (setelah masing-masing bergabung) untuk tujuan jaminan kualitas. Penerapan transformasi yang mudah digunakan ini di Data Wrangler mengurangi waktu yang dihabiskan untuk transformasi data ujung ke ujung hingga hampir 50%. Selain itu, fitur analisis Model Cepat di Data Wrangler memungkinkan kami dengan mudah memvalidasi status transformasi saat kami menggilir proses persiapan data dan rekayasa fitur.

Sekarang kami telah menyiapkan data untuk kasus penggunaan pemodelan risiko kesehatan mental kami, sebagai langkah berikutnya, kami berencana untuk membangun model ML menggunakan SageMaker dan algoritme bawaan yang ditawarkannya, memanfaatkan kumpulan data klaim kami untuk mengidentifikasi anggota yang harus mencari kesehatan mental layanan sebelum mereka sampai ke titik di mana mereka membutuhkannya. Pantau terus!


Tentang Penulis

Bangun model risiko pembelajaran mesin kesehatan mental menggunakan Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.Shibangi Saha adalah Data Scientist di Equilibrium Point. Dia menggabungkan keahliannya dalam data klaim pembayar layanan kesehatan dan pembelajaran mesin untuk merancang, mengimplementasikan, mengotomatisasi, dan mendokumentasikan alur data kesehatan, pelaporan, dan proses analitik yang mendorong wawasan dan peningkatan yang dapat ditindaklanjuti dalam sistem pemberian layanan kesehatan. Shibangi menerima gelar Master of Science di bidang Bioinformatika dari Northeastern University College of Science dan Bachelor of Science di bidang Biologi dan Ilmu Komputer dari Khoury College of Computer Science and Information Sciences.

Bangun model risiko pembelajaran mesin kesehatan mental menggunakan Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.Graciela Kravtzov adalah Co-Founder dan CTO dari Equilibrium Point. Grace telah memegang posisi kepemimpinan C-level/VP dalam Rekayasa, Operasi, dan Kualitas, dan menjabat sebagai konsultan eksekutif untuk strategi bisnis dan pengembangan produk dalam industri perawatan kesehatan dan pendidikan serta ruang industri IoT. Grace menerima gelar Master of Science di bidang Electromechanical Engineer dari University of Buenos Aires dan gelar Master of Science di bidang Computer Science dari Boston University.

Bangun model risiko pembelajaran mesin kesehatan mental menggunakan Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.Arunprasath Shankar adalah Arsitek Solusi Spesialis Kecerdasan Buatan dan Pembelajaran Mesin (AI / ML) dengan AWS, membantu pelanggan global menskalakan solusi AI mereka secara efektif dan efisien di cloud. Di waktu senggangnya, Arun suka menonton film sci-fi dan mendengarkan musik klasik.

Bangun model risiko pembelajaran mesin kesehatan mental menggunakan Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai. Ajai Sharma adalah Manajer Produk Senior untuk Amazon SageMaker di mana dia berfokus pada SageMaker Data Wrangler, alat persiapan data visual untuk ilmuwan data. Sebelum di AWS, Ajai adalah Pakar Ilmu Data di McKinsey and Company di mana dia memimpin keterlibatan yang berfokus pada ML untuk perusahaan keuangan dan asuransi terkemuka di seluruh dunia. Ajai sangat menyukai ilmu data dan suka menjelajahi algoritme dan teknik pembelajaran mesin terbaru.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS