Makine öğrenimi (ML), pek çok sektörü benzeri görülmemiş bir hızla değiştiriyor. Sağlık ve yaşam bilimleri (HCLS) endüstrisi, son yıllarda kaliteli bakım sunmak ve hasta sonuçlarını iyileştirmek için makine öğrenimini çok sayıda kullanım örneğinde benimseyerek hızlı bir evrim geçiriyor.
Tipik bir makine öğrenimi yaşam döngüsünde, veri mühendisleri ve bilim adamları zamanlarının çoğunu, model oluşturma ve eğitim sürecine başlamadan önce veri hazırlama ve özellik mühendisliği adımlarına harcarlar. Veri hazırlığı için giriş engelini azaltabilecek ve böylece üretkenliği artırabilecek bir araca sahip olmak, bu kişiler için son derece arzu edilen bir taleptir. Amazon SageMaker Veri Düzenleyicisi AWS tarafından öğrenme eğrisini kısaltmak ve veri uygulayıcılarının veri hazırlama, temizleme ve özellik mühendisliği görevlerini daha az çaba ve zaman harcayarak gerçekleştirmelerine olanak sağlamak amacıyla oluşturulmuştur. Birçok yerleşik işleve ve aşağıdaki gibi diğer AWS hizmetleriyle entegrasyona sahip bir GUI arayüzü sunar. Amazon Basit Depolama Hizmeti (Amazon S3) ve Amazon SageMaker Özellik Mağazası, Snowflake ve Databricks gibi iş ortağı veri kaynaklarının yanı sıra.
Bu yazıda, hastanın demografik bilgileri, önceki tıbbi koşulları ve laboratuvar testi sonuç geçmişi göz önüne alındığında, kalp yetmezliğini tahmin edecek bir modeli eğitmek amacıyla sağlık hizmeti verilerini hazırlamak için Data Wrangler'ın nasıl kullanılacağını gösteriyoruz.
Çözüme genel bakış
Çözüm aşağıdaki adımlardan oluşur:
- Data Wrangler'a girdi olarak bir sağlık hizmeti veri kümesi edinin.
- Veri kümesini dönüştürmek için Data Wrangler'ın yerleşik dönüştürme işlevlerini kullanın. Bu, sütunları kaldırmayı, veri/zamanı özelleştirmeyi, veri kümelerini birleştirmeyi, eksik değerleri atamayı, kategorik değişkenleri kodlamayı, sayısal değerleri ölçeklendirmeyi, veri kümesini dengelemeyi ve daha fazlasını içerir.
- Yerleşik dönüşümlerin ötesinde gereken ek dönüşümleri tamamlamak ve Data Wrangler'ın genişletilebilirliğini göstermek için Data Wrangler'ın özel dönüştürme işlevini (Pandas veya PySpark kodu) kullanın. Bu, satırları filtrelemeyi, verileri gruplamayı, koşullara göre yeni veri çerçeveleri oluşturmayı ve daha fazlasını içerir.
- Görsel analiz gerçekleştirmek için Data Wrangler'ın yerleşik görselleştirme işlevlerini kullanın. Buna hedef sızıntısı, özellik korelasyonu, hızlı model ve daha fazlası dahildir.
- Dönüştürülen veri kümesini Amazon S3'e aktarmak için Data Wrangler'ın yerleşik dışa aktarma seçeneklerini kullanın.
- Bir modeli eğitmek amacıyla Amazon S3'teki dönüştürülmüş veri kümesini girdi olarak kullanmak için bir Jupyter not defteri başlatın.
Veri kümesi oluştur
Artık makine öğrenimi problemi tanımına karar verdiğimize göre, öncelikle ihtiyacımız olan verileri elde etmeye odaklanıyoruz. Gibi araştırma çalışmaları Kalp Yetmezliği Tahmini zaten iyi durumda olan veriler sağlayabilir. Bununla birlikte, verilerin oldukça dağınık olduğu ve makine öğrenimi eğitimi için kullanılmadan önce sağlık alanına çok özel olan birleştirme, temizleme ve diğer bazı dönüşümleri gerektirdiği senaryolarla sıklıkla karşılaşıyoruz. Yeterince karmaşık verileri bulmak veya oluşturmak ve bunları Data Wrangler'ı kullanarak hazırlama adımlarında size yol göstermek istiyoruz. Bunu aklımızda tutarak, hedefimize uygun sentetik veriler üretme aracı olarak Synthea'yı seçtik. sentez sentetik hastaların tıbbi geçmişini modelleyen açık kaynaklı bir sentetik hasta oluşturucudur. Veri kümenizi oluşturmak için aşağıdaki adımları tamamlayın:
- Talimatlara uygun olarak izleyin hızlı başlangıç oluşturmak için belgeler Amazon SageMaker Stüdyosu etki alanına gidin ve Studio'yu başlatın.
Bu bir önkoşul adımıdır. Studio'nun hesabınızda zaten kurulu olması isteğe bağlıdır. - Studio başlatıldıktan sonra fırlatıcı sekmesini seçin Sistem terminali.
Bu, size çalışabileceğiniz bir komut satırı arayüzü sağlayan bir terminal oturumu başlatır. - Synthea'yi kurmak ve veri kümesini CSV formatında oluşturmak için başlatılan terminal oturumunda aşağıdaki komutları çalıştırın:
Nüfus büyüklüğü 10,000 olan veri kümelerini oluşturmak için bir parametre sağlıyoruz. Boyut parametresinin popülasyonun canlı üyelerinin sayısını gösterdiğine dikkat edin. Ek olarak Synthea, popülasyonun ölü üyeleri için de, belirtilen örnek boyutunun üstüne birkaç ekstra veri noktası ekleyebilecek veriler üretir.
Veri oluşturma işlemi tamamlanana kadar bekleyin. Bu adım genellikle yaklaşık bir saat veya daha az sürer. Synthea birden fazla veri kümesi oluşturur: patients
, medications
, allergies
, conditions
, ve dahası. Bu yazı için ortaya çıkan veri kümelerinden üçünü kullanıyoruz:
- hastalar.csv – Bu veri seti yaklaşık 3.2 MB'tır ve yaklaşık 11,000 satır hasta verisi içerir (hasta kimliği, doğum tarihi, cinsiyet, adres ve daha fazlasını içeren 25 sütun)
- koşullar.csv – Bu veri seti yaklaşık 47 MB'tır ve yaklaşık 370,000 satırlık tıbbi durum verisi içerir (hasta kimliği, durum başlangıç tarihi, durum kodu ve daha fazlasını içeren altı sütun)
- gözlemler.csv – Bu veri seti yaklaşık 830 MB'tır ve yaklaşık 5 milyon satır gözlem verisi içerir (hasta kimliği, gözlem tarihi, gözlem kodu, değer ve daha fazlasını içeren sekiz sütun)
arasında bire-çok ilişki vardır. patients
ve conditions
veri kümeleri. arasında da bire-çok ilişki vardır. patients
ve observations
veri kümeleri. Ayrıntılı bir veri sözlüğü için bkz. CSV Dosyası Veri Sözlüğü.
- Oluşturulan veri kümelerini Amazon S3'teki bir kaynak paketine yüklemek için terminal oturumunda aşağıdaki komutları çalıştırın:
Data Wrangler'ı başlatın
Klinik SageMaker kaynakları Studio'daki gezinme sayfasında ve Projeler menü seç Veri Düzenleyici Veri Wrangler veri akışı oluşturmak için. Data Wrangler'ın Studio içinden nasıl başlatılacağına ilişkin ayrıntılı adımlar için bkz. Data Wrangler'ı Kullanmaya Başlayın.
Tarihleri içe aktar
Verilerinizi içe aktarmak için aşağıdaki adımları tamamlayın:
- Klinik Amazon S3 ve S3 klasöründeki hastalar.csv dosyasını bulun.
- içinde - Detaylar bölme, seç İlk K için Örnekleme.
- Keşfet
1100
için Örnek boyut.
Önizleme bölmesinde Data Wrangler, veri kümesinden ilk 100 satırı alır ve bunları önizleme olarak listeler. - Klinik ithalat.
Data Wrangler, Synthea tarafından oluşturulan toplam hastalardan (1,100 satır) ilk 11,000 hastayı seçer ve verileri içe aktarır. Örnekleme yaklaşımı, Data Wrangler'ın yalnızca örnek verileri işlemesine olanak tanır. Veri akışımızı daha küçük bir veri kümesiyle geliştirmemize olanak tanır, bu da daha hızlı işleme ve daha kısa bir geri bildirim döngüsüyle sonuçlanır. Veri akışını oluşturduktan sonra geliştirilen tarifi bir yetkiliye gönderebiliriz. SageMaker işleme tam veya daha büyük veri kümesi için işlemeyi dağıtılmış bir şekilde yatay olarak ölçeklendirme işi. - için bu işlemi tekrarlayın.
conditions
veobservations
veri kümeleri.- Için
conditions
veri kümesi, girin37000
için Örnek boyutBu, Synthea tarafından oluşturulan toplam 1 satırın 10/370,000'udur. - Için
observations
veri kümesi, girin500000
için Örnek boyutBu, Synthea tarafından oluşturulan toplam gözlem 1 milyon satırın 10/5'udur.
- Için
Aşağıdaki ekran görüntüsünde gösterildiği gibi üç veri kümesi görmelisiniz.
Verileri dönüştürün
Veri dönüşümü, veri kümesindeki bir veya daha fazla sütunun yapısını, değerini veya biçimini değiştirme işlemidir. Süreç genellikle bir veri mühendisi tarafından geliştirilir ve daha küçük veri mühendisliği becerilerine sahip kişiler için dönüşüm için önerilen mantığı çözmek zor olabilir. Veri dönüşümü, daha geniş özellik mühendisliği sürecinin bir parçasıdır ve adımların doğru sırası, bu tür tarifleri tasarlarken akılda tutulması gereken bir diğer önemli kriterdir.
Data Wrangler, etkili veri hazırlığı için giriş engelini azaltan düşük kodlu bir araç olacak şekilde tasarlanmıştır. Tek bir satır kod yazmanıza gerek kalmadan seçebileceğiniz 300'den fazla önceden yapılandırılmış veri dönüşümüyle birlikte gelir. Aşağıdaki bölümlerde, içe aktarılan veri kümelerinin Data Wrangler'da nasıl dönüştürüleceğini görüyoruz.
Patient.csv dosyasındaki sütunları bırakın
İlk önce bazı sütunları bırakıyoruz patients
veri kümesi. Yedekli sütunların kaldırılması, veri kümesinden alakasız bilgileri kaldırır ve veri kümesini işlemek ve bir modeli eğitmek için gereken bilgi işlem kaynaklarının miktarını azaltmamıza yardımcı olur. Bu bölümde, SSN veya pasaport numarası gibi sütunları, bu sütunların tahmin değeri olmadığı yönündeki sağduyumuza dayanarak bırakıyoruz. Başka bir deyişle, modelimizin kalp yetmezliğini tahmin etmesine yardımcı olmuyorlar. Çalışmamız ayrıca doğum yeri veya sağlık harcamalarının hastanın kalp yetmezliğine etkisi gibi diğer sütunları da ilgilendirmiyor, bu yüzden onları da bırakıyoruz. Yedekli sütunlar, Data Wrangler'da yerleşik olan hedef sızıntısı, özellik korelasyonu, çoklu bağlantı ve daha fazlası gibi yerleşik analizler çalıştırılarak da belirlenebilir. Desteklenen analiz türleri hakkında daha fazla ayrıntı için bkz. Analiz Edin ve Görselleştirin. Ek olarak, Veri Kalitesi ve Öngörüler Raporu Ortadan kaldırılacak gereksiz sütunların bir listesine ulaşmak için veri kümeleri üzerinde otomatik analizler gerçekleştirmek.
- yanındaki artı işaretini seçin Veri tipleri hastalar.csv veri kümesi için Dönüşüm ekle.
- Klinik Adım ekle Ve seç Sütunları yönet.
- İçin DönüştürmekSeç Sütunu bırak.
- İçin Bırakılacak sütunlar, aşağıdaki sütunları seçin:
SSN
DRIVERS
PASSPORT
PREFIX
FIRST
LAST
SUFFIX
MAIDEN
RACE
ETHNICITY
BIRTHPLACE
ADDRESS
CITY
STATE
COUNTY
ZIP
LAT
LON
HEALTHCARE_EXPENSES
HEALTHCARE_COVERAGE
- Klinik Önizleme Dönüştürülen veri kümesini incelemek için Ekle.
Adımı görmelisin Sütunu bırak dönüşümler listenizde.
Hastalar.csv'de tarih/saati belirtin
Şimdi yeni özelliği oluşturmak için Tarih/saati Özelleştir işlevini kullanıyoruz Year
itibaren BIRTHDATE
sütunundaki sütun patients
veri kümesi. Yeni özelliği bir sonraki adımda gözlemin gerçekleştiği sırada hastanın yaşını hesaplamak için kullanıyoruz.
- içinde Dönüşümler senin bölmesi Sütunu bırak için sayfa
patients
veri kümesi, seçin Adım ekle. - Seçin Tarih/saati öne çıkar dönüşümü.
- Klinik Sütunları ayıkla.
- İçin Giriş sütunları, sütunu ekleyin
BIRTHDATE
. - seç Yıl ve seçimi kaldırın Ay, Gün, saat, Dakika, İkinci.
- Klinik Önizleme, Daha sonra seçmek Ekle.
Gözlemler.csv'ye dönüşüm ekleme
Data Wrangler, Python (kullanıcı tanımlı işlevler), PySpark, Pandas veya PySpark (SQL) kullanılarak özel dönüşümleri destekler. Her seçenek ve tercihe olan aşinalığınıza göre dönüşüm türünüzü seçebilirsiniz. Son üç seçenek için Data Wrangler değişkeni ortaya çıkarır df
veri çerçevesine erişmeniz ve üzerinde dönüşümler uygulamanız için. Ayrıntılı açıklama ve örnekler için bkz. Özel Dönüşümler. Bu bölümde, üç özel dönüşüm ekliyoruz. observations
Veri kümesi.
- gözlemler.csv'ye bir dönüşüm ekleyin ve bırakın
DESCRIPTION
sütun. - Klinik Önizleme, Daha sonra seçmek Ekle.
- içinde Dönüşümler bölme, seç Adım ekle Ve seç Özel dönüşüm.
- Açılır menüden şunu seçin: Python (Pandalar).
- Aşağıdaki kodu girin:
Bunlar, kalp yetmezliğini öngörmek için özellikler olarak kullanmak istediğimiz aşağıdaki gözlemlere karşılık gelen LONIC kodlarıdır:
- Klinik Önizleme, Daha sonra seçmek Ekle.
- Çıkarılacak bir dönüşüm ekleyin
Year
veQuarter
itibarenDATE
sütun. - Klinik Önizleme, Daha sonra seçmek Ekle.
- Klinik Adım ekle Ve seç Özel dönüşüm.
- Açılır menüden şunu seçin: Python (PySpark).
Beş tür gözlem her zaman aynı tarihte kaydedilmeyebilir. Örneğin bir hasta 21 Ocak'ta aile doktoruna giderek sistolik kan basıncını, diyastolik kan basıncını, kalp atım hızını, vücut kitle indeksini ölçtürebilir ve kaydedebilir. Ancak trombositleri içeren bir laboratuvar testi daha sonraki bir tarihte 2 Şubat'ta yapılabilir. Bu nedenle veri çerçevelerini gözlem tarihine kadar birleştirmek her zaman mümkün olmuyor. Burada veri çerçevelerini çeyrek bazında kaba bir ayrıntı düzeyinde birleştiriyoruz. - Aşağıdaki kodu girin:
- Klinik Önizleme, Daha sonra seçmek Ekle.
- Klinik Adım ekle, Daha sonra seçmek Satırları yönet.
- İçin Dönüştürmek, seçmek Kopyaları bırak.
- Klinik Önizleme, Daha sonra seçmek Ekle.
- Klinik Adım ekle Ve seç Özel dönüşüm.
- Açılır menüden şunu seçin: Python (Pandalar).
- Aynı zaman değerini paylaşan veri noktalarının ortalamasını almak için aşağıdaki kodu girin:
- Klinik Önizleme, Daha sonra seçmek Ekle.
Hastalar.csv ve gözlemler.csv'ye katılın
Bu adımda, Data Wrangler'ın güçlü kullanıcı arayüzü aracılığıyla herhangi bir kod yazmadan veri kümeleri üzerinde karmaşık birleştirmelerin nasıl etkili ve kolay bir şekilde gerçekleştirileceğini gösteriyoruz. Desteklenen birleştirme türleri hakkında daha fazla bilgi edinmek için bkz. Verileri Dönüştür.
- Hakları için Dönüştürme: hastalar.csv, yanındaki artı işaretini seçin Basamaklar Ve seç Kaydol.
Dönüştürülen hastalar.csv dosyasını aşağıda listelenmiş olarak görebilirsiniz. Veri Setleri sol bölmede - Hakları için Dönüşüm: gözlemler.csv, tıkla Basamaklar birleştirme işlemini başlatmak için.
Dönüştürülen gözlemler.csv dosyası artık altında listelenmiştir. Veri Setleri sol bölmede - Klinik yapılandırma.
- İçin Birleştirme Türü, seçmek İç.
- İçin Sol, seçmek Id.
- İçin Sağ, seçmek hasta.
- Klinik Önizleme, Daha sonra seçmek Ekle.
Birleştirilen veri kümelerine özel bir dönüşüm ekleme
Bu adımda hastanın gözlem anındaki yaşını hesaplıyoruz. Ayrıca artık ihtiyaç duyulmayan sütunları da bırakıyoruz.
- yanındaki artı işaretini seçin 1. Katılım Ve seç Dönüşüm ekle.
- Pandalar'a özel bir dönüşüm ekleyin:
- Klinik Önizleme, Daha sonra seçmek Ekle.
Koşullar.csv'ye özel dönüşümler ekleme
- yanındaki artı işaretini seçin Dönüştürme: koşullar.csv Ve seç Dönüşüm ekle.
- Pandalar'a özel bir dönüşüm ekleyin:
Not: Daha önce gösterdiğimiz gibi, özel kodu kullanarak veya Data Wrangler tarafından sağlanan yerleşik dönüşümleri kullanarak sütunları bırakabilirsiniz. Data Wrangler'daki özel dönüşümler, kendi dönüşüm mantığınızı desteklenen çerçevelere kod parçacıkları biçiminde getirme esnekliği sağlar. Bu parçacıklar daha sonra gerekirse aranabilir ve uygulanabilir.
Önceki dönüşümdeki kodlar, aşağıdaki koşullara karşılık gelen SNOMED-CT kodlarıdır. heart failure
or chronic congestive heart failure
durum etiket haline gelir. Kalan koşulları kalp yetmezliğini tahmin etmek için özellikler olarak kullanıyoruz. Ayrıca artık ihtiyaç duyulmayan birkaç sütunu da bırakıyoruz.
- Sonra PySpark'a özel bir dönüşüm ekleyelim:
Tüm girişleri kalp yetmezliği veri çerçevesinde tutmak için sol dış birleştirme gerçekleştiririz. Yeni bir sütun
has_xxx
kalp yetmezliği dışındaki her durum için, hastalığın başlangıç tarihine göre hesaplanır. Biz yalnızca kalp yetmezliğinden önce kaydedilen tıbbi durumlarla ilgileniyoruz ve bunları kalp yetmezliğini öngörmek için özellikler olarak kullanıyoruz. - Yerleşik ekle Sütunları yönet Artık ihtiyaç duyulmayan gereksiz sütunları bırakmak için dönüştürün:
hypertension
diabetes
coronary
smoke
atrial
- Çıkarmak
Year
veQuarter
itibarenheartfailure
sütun.
Bu, daha önce dönüşümünde kullandığımız ayrıntı düzeyiyle eşleşir.observations
Veri kümesi. - Koşullar.csv için toplam 6 adımımız olmalıdır.
Koşullar.csv'yi birleştirilen veri kümesine ekleyin
Şimdi, koşullar veri kümesini birleştirilmiş veri kümesine birleştirmek için yeni bir birleştirme gerçekleştiriyoruz patients
ve observations
Veri kümesi.
- Klinik Dönüşüm: 1. Katılma.
- Artı işaretini seçin ve seçin Kaydol.
- Klinik Basamaklar yanındaki Dönüştürme: koşullar.csv.
- Klinik yapılandırma.
- İçin Birleştirme Türü, seçmek Sol dış.
- İçin Sol, seçmek Id.
- İçin Sağ, seçmek hasta.
- Klinik Önizleme, Daha sonra seçmek Ekle.
Birleştirilen veri kümelerine dönüşümler ekleme
Artık üç veri kümesinin tamamını birleştirdiğimize göre, bazı ek dönüşümler uygulayalım.
- Aşağıdaki özel dönüşümü PySpark'a ekleyin, böylece
has_heartfailure
etiket sütunumuz olur: - PySpark'a aşağıdaki özel dönüşümü ekleyin:
- Artık ihtiyaç duyulmayan gereksiz sütunları bırakın:
Id
DATE_year
DATE_quarter
patient
heartfailure
heartfailure_year
heartfailure_quarter
- Üzerinde Analiz sekme için Analiz türüSeç Tablo özeti.
Özetin hızlı bir şekilde taranması şunu gösterir:MARITAL
sütununda eksik veriler var. - Seçin Veri sekmesine tıklayın ve bir adım ekleyin.
- Klinik Eksik Kol.
- İçin Dönüştürmek, seçmek Eksik olanı doldur.
- İçin Giriş sütunları, seçmek EVLİLİK.
- İçin Değeri doldur, girmek
S
.
Buradaki stratejimiz, medeni durumunun eksik değeri varsa hastanın bekar olduğunu varsaymaktır. Farklı bir stratejiniz olabilir. - Klinik Önizleme, Daha sonra seçmek Ekle.
- Eksik değeri 0 olarak doldurun
has_hypertension
,has_diabetes
,has_coronary
,has_smoke
,has_atrial
.
Marital
ve Gender
kategorik değişkenlerdir. Data Wrangler'ın kategorik değişkenleri kodlamak için yerleşik bir işlevi vardır.
- Bir adım ekleyin ve seçin Kategoriyi kodla.
- İçin Dönüştürmek, seçmek Tek sıcak kodlama.
- İçin Giriş sütunları, seçmek EVLİLİK.
- İçin Çıktı stili, seçmek Sütun.
Bu çıktı stili, ayrı sütunlarda kodlanmış değerler üretir. - Klinik Önizleme, Daha sonra seçmek Ekle.
- için bu adımları tekrarlayın. Cinsiyet sütun.
Tek sıcak kodlama, Evlilik sütununu şu şekilde böler: Marital_M
(evli) ve Marital_S
(tek) ve Cinsiyet sütununu ikiye böler Gender_M
(erkek) ve Gender_F
(dişi). Çünkü Marital_M
ve Marital_S
birbirini dışlayan (olduğu gibi) Gender_M
ve Gender_F
), gereksiz özelliklerden kaçınmak için bir sütunu bırakabiliriz.
- Damla
Marital_S
veGender_F
.
Sistolik, kalp atış hızı ve yaş gibi sayısal özelliklerin farklı birim standartları vardır. Doğrusal regresyona dayalı bir model için öncelikle bu sayısal özellikleri normalleştirmemiz gerekir. Aksi takdirde, daha yüksek mutlak değere sahip bazı özellikler, daha düşük mutlak değere sahip diğer özelliklere göre yersiz bir avantaja sahip olabilir ve zayıf model performansıyla sonuçlanabilir. Data Wrangler, verileri normalleştirmek için yerleşik dönüşüm Min-maks ölçekleyiciye sahiptir. Karar ağacı tabanlı bir sınıflandırma modeli için normalleştirme gerekli değildir. Çalışmamız bir sınıflandırma problemi olduğundan normalizasyon uygulamamıza gerek yoktur. Dengesiz sınıflar sınıflandırmada yaygın bir sorundur. Dengesizlik, eğitim veri kümesi ciddi şekilde çarpık sınıf dağılımı içerdiğinde meydana gelir. Örneğin, veri setimiz kalp yetmezliği olmayan hastalardan orantısız olarak daha fazla hasta içerdiğinde, bu durum modelin kalp yetmezliği olmadığını tahmin etme yönünde önyargılı olmasına ve kötü performans göstermesine neden olabilir. Data Wrangler'ın sorunun üstesinden gelmek için yerleşik bir işlevi vardır.
- Sütunların veri türünü "nesne" türünden sayısal türe dönüştürmek için Pandas'a özel bir dönüşüm ekleyin:
- Seçin Analiz sekmesi.
- İçin Analiz türüSeç Histogram.
- İçin X ekseni, seçmek has_heartfailure.
- Klinik Önizleme.
Dengesiz bir sınıfa sahip olduğumuz açıktır (kalp yetmezliği olarak etiketlenen veri noktalarından daha fazla kalp yetmezliği olmayan olarak etiketlenen veri noktaları). - geri dön Veri sekmesi. Seç Adım ekle Ve seç Bakiye verileri.
- İçin Hedef sütun, seçmek has_heartfailure.
- İçin İstenilen oran, girmek
1
. - İçin Dönüştürmek, seçmek cezalandırdı.
SMOTE, Sentetik Azınlık Aşırı Örnekleme Tekniği anlamına gelir. Yeni azınlık örnekleri oluşturma ve sınıf dengesine ulaşmak için veri kümesine ekleme tekniğidir. Ayrıntılı bilgi için bkz. SMOTE: Sentetik Azınlık Aşırı Örnekleme Tekniği. - Klinik Önizleme, Daha sonra seçmek Ekle.
- Adım 20-23'teki histogram analizini tekrarlayın. Sonuç dengeli bir sınıftır.
Hedef sızıntısını ve özellik korelasyonunu görselleştirin
Daha sonra, Data Wrangler'ın gelişmiş ML destekli analiz türlerinden oluşan zengin araç setini kullanarak birkaç görsel analiz gerçekleştireceğiz. İlk olarak hedef sızıntıya bakıyoruz. Hedef sızıntısı, eğitim veri kümesindeki veriler hedef etiketle güçlü bir şekilde ilişkili olduğunda ancak çıkarım zamanında gerçek dünya verilerinde mevcut olmadığında meydana gelir.
- Üzerinde Analiz sekmesi, Için Analiz türüSeç Hedef Sızıntısı.
- İçin Problem türü, seçmek sınıflandırma.
- İçin Hedef, seçmek has_heartfailure.
- Klinik Önizleme.
Analize dayanarak,hr
hedef sızıntısıdır. Bir sonraki adımda bunu bırakacağız.age
hedef sızıntı olarak işaretlendi. Çıkarım süresi boyunca hastanın yaşının mevcut olacağını söylemek mantıklı olduğundan yaşı bir özellik olarak tutuyoruz.Systolic
vediastolic
aynı zamanda olası hedef sızıntısı olarak işaretlenir. Çıkarım süresi boyunca iki ölçümün yapılmasını bekliyoruz, bu nedenle bunları özellik olarak tutuyoruz. - Klinik Ekle Analizi eklemek için.
Daha sonra özellik korelasyonuna bakıyoruz. Hedefle ilişkili ancak kendi aralarında ilişkisiz olan özellikleri seçmek istiyoruz.
- Üzerinde Analiz sekmesi, Için Analiz türüSeç Özellik Korelasyonu.
- İçin Korelasyon TürüSeç doğrusal.
- Klinik Önizleme.
Katsayı puanları aşağıdaki çiftler arasındaki güçlü korelasyonları gösterir:
systolic
vediastolic
bmi
veage
has_hypertension
vehas_heartfailure
(etiket)
Güçlü bir korelasyona sahip özellikler için matrislerin hesaplama açısından tersine çevrilmesi zordur ve bu da sayısal olarak kararsız tahminlere yol açabilir. Korelasyonu azaltmak için çiftten birini basitçe kaldırabiliriz. Biz bıraktık diastolic
ve bmi
tutmak systolic
ve age
bir sonraki adımda.
Diyastolik ve vücut kitle indeksi sütunlarını bırakın
Bırakmak için ek dönüştürme adımları ekleyin hr
, diastolic
ve bmi
yerleşik dönüşümü kullanan sütunlar.
Veri Kalitesi ve Öngörüler Raporunu Oluşturun
AWS yakın zamanda açıkladı Data Wrangler'daki yeni Veri Kalitesi ve Analiz Raporu özelliği. Bu rapor, veri kalitesini otomatik olarak doğrular ve verilerinizdeki anormallikleri tespit eder. Veri bilimcileri ve veri mühendisleri, makine öğrenimi modeli eğitimine yönelik veri kümelerini işlemek üzere etki alanı bilgisini verimli ve hızlı bir şekilde uygulamak için bu aracı kullanabilir. Bu adım isteğe bağlıdır. Bu raporu veri kümelerimizde oluşturmak için aşağıdaki adımları tamamlayın:
- Üzerinde Analiz sekme için Analiz türü, seçmek Veri Kalitesi ve Öngörüler Raporu.
- İçin Hedef sütun, seçmek has_heartfailure.
- İçin Sorun tipiseçin Sınıflandırma.
- Klinik oluşturmak.
Birkaç dakika içinde özet, görseller ve önerilerin yer aldığı bir rapor oluşturur.
Hızlı Model analizi oluşturma
Veri hazırlama, temizleme ve özellik mühendisliğimizi tamamladık. Data Wrangler, veri setimizdeki özelliklerin beklenen tahmin kalitesine ve tahmin gücüne ilişkin kaba bir tahmin sağlayan yerleşik bir işleve sahiptir.
- Üzerinde Analiz sekme için Analiz türüSeç Hızlı Model.
- İçin etiket, seçmek has_heartfailure.
- Klinik Önizleme.
Hızlı Model analizimize göre özelliği görebiliriz has_hypertension
tüm özellikler arasında en yüksek özellik önem puanına sahiptir.
Verileri dışarı aktarın ve modeli eğitin
Şimdi dönüştürülmüş ML'ye hazır özellikleri bir hedef S3 klasörüne aktaralım ve örnekleri kullanarak şu ana kadar oluşturduğumuz tüm özellik mühendisliği hattını dağıtılmış bir şekilde tüm veri kümesine ölçeklendirelim.
- Veri akışındaki son kutunun yanındaki artı işaretini seçin ve Hedef ekle.
- Klinik Amazon S3.
- Bir girin Veri kümesi adı. Için Amazon S3 konumu, bir S3 paketi seçin ve ardından Hedef ekle.
- Klinik İş oluştur dönüşümü gerçekleştirmek ve verileri hedef S3 klasörüne çıkarmak için dağıtılmış bir PySpark işleme işi başlatmak.
Veri kümelerinin boyutuna bağlı olarak bu seçenek, kümeyi kolayca yapılandırmamıza ve kodsuz bir şekilde yatay olarak ölçeklendirmemize olanak tanır. Veri kümelerini bölümlendirmek veya kümeyi ve Spark dahililerini yönetmek konusunda endişelenmemize gerek yok. Tüm bunlar bizim için Data Wrangler tarafından otomatik olarak gerçekleştirilir. - Sol bölmede, Sonraki, 2. İşi yapılandırın.
- Sonra seç koşmak.
Alternatif olarak dönüştürülmüş çıktıyı Jupyter Notebook aracılığıyla S3'e de aktarabiliriz. Bu yaklaşımla Data Wrangler, veri akışı adımlarını (bir örnek kullanılarak oluşturulan) daha büyük tam veri kümesine uygulamak ve dönüştürülmüş veri kümesini, özellikleri başlatmak için kullanmak üzere bir işleme işini başlatmak için gereken tüm kodu içeren bir Jupyter not defterini otomatik olarak oluşturur. daha sonra eğitim işi dışında. Dizüstü bilgisayar kodu, değişiklik yapılarak veya yapılmadan kolayca çalıştırılabilir. Şimdi bunun Data Wrangler'ın kullanıcı arayüzü aracılığıyla nasıl yapılacağına ilişkin adımları inceleyelim.
- Veri akışındaki son adımın yanındaki artı işaretini seçin ve İhracat.
- Klinik Amazon S3 (Jupyter Notebook aracılığıyla).
- Jupyter not defterinde otomatik olarak yeni bir sekme açar.
- Jupyter not defterinde hücreyi bulun. (İsteğe bağlı) Sonraki Adımlar bölüm ve değişiklik
run_optional_steps
itibarenFalse
içinTrue
.
Dizüstü bilgisayarda etkinleştirilen isteğe bağlı adımlar aşağıdakileri gerçekleştirir: - Not defterinin en üstüne geri dönün ve koşmak menü seç Tüm Hücreleri Çalıştır.
Oluşturulan dizüstü bilgisayarı olduğu gibi kullanırsanız, S5.4 klasöründeki tüm veri kümesini işlemek için işlemeyi iki m3xlarge örneğine ölçeklendiren bir SageMaker işleme işi başlatır. İşi tamamlamak için ihtiyaç duyduğunuz veri kümesi boyutuna ve süreye göre bulut sunucusu sayısını ve bulut sunucusu türlerini ayarlayabilirsiniz.
Son hücredeki eğitim işi tamamlanana kadar bekleyin. SageMaker'ın varsayılan S3 klasöründe bir model oluşturur.
Eğitilen model, gerçek zamanlı çıkarım veya toplu dönüşüm için dağıtıma hazırdır. Data Wrangler'daki işlevleri göstermek için sentetik veriler kullandığımızı ve eğitim modeli için işlenmiş verileri kullandığımızı unutmayın. Kullandığımız verilerin sentetik olduğu göz önüne alındığında, eğitilen modelden elde edilen çıkarım sonucu, gerçek dünyadaki tıbbi durum teşhisi veya tıp pratisyenlerinin yargısının yerine geçmesi anlamına gelmez.
Ayrıca dönüştürülmüş veri kümenizi doğrudan Amazon S3'e aktarabilirsiniz. Ihracat Dönüşüm önizleme sayfasının üst kısmında. Doğrudan dışa aktarma seçeneği yalnızca içe aktarma sırasında örnekleme etkinleştirildiyse dönüştürülen örneği dışa aktarır. Daha küçük veri kümeleriyle çalışıyorsanız bu seçenek en uygunudur. Dönüştürülen veriler doğrudan bir özellik deposuna da alınabilir. Daha fazla bilgi için bkz. Amazon SageMaker Özellik Mağazası. Veri akışı, gereksinimlerinize göre düzenlenebilen ve planlanabilen bir SageMaker işlem hattı olarak da dışa aktarılabilir. Daha fazla bilgi için bakınız Amazon SageMaker Ardışık Düzenleri.
Sonuç
Bu yazıda, sağlık hizmeti verilerini işlemek ve ölçeklenebilir özellik mühendisliğini araç odaklı, az kodlu bir şekilde gerçekleştirmek için Data Wrangler'ın nasıl kullanılacağını gösterdik. Veri hazırlama iş akışımıza daha da fazla esneklik eklemek için yerleşik dönüşümleri ve analizleri ihtiyaç duyulan her yerde nasıl uygulayacağımızı ve bunları özel dönüşümlerle nasıl birleştireceğimizi öğrendik. Ayrıca dağıtılmış işleme işleri aracılığıyla veri akışı tarifinin ölçeğini genişletmek için farklı seçenekleri de inceledik. Ayrıca dönüştürülmüş verilerin, kalp yetmezliğini tahmin edecek bir modeli eğitmek için nasıl kolayca kullanılabileceğini de öğrendik.
Data Wrangler'da bu yazıda ele almadığımız birçok başka özellik daha var. Nelerin mümkün olduğunu keşfedin Amazon SageMaker Data Wrangler ile ML Verilerini Hazırlayın ve bir sonraki veri bilimi veya makine öğrenimi projeniz için Data Wrangler'dan nasıl yararlanacağınızı öğrenin.
Yazarlar Hakkında
Forrest Güneşi Toronto, Kanada'da AWS Kamu Sektörü ekibinde Kıdemli Çözüm Mimarıdır. Son yirmi yıldır sağlık ve finans sektörlerinde çalıştı. İş dışında ailesiyle birlikte kamp yapmaktan hoşlanıyor.
Arunprasath Şankar AWS'li bir Yapay Zeka ve Makine Öğrenimi (AI / ML) Uzman Çözüm Mimarıdır ve küresel müşterilerin yapay zeka çözümlerini bulutta etkili ve verimli bir şekilde ölçeklendirmelerine yardımcı olur. Arun boş zamanlarında bilim kurgu filmleri izlemekten ve klasik müzik dinlemekten hoşlanıyor.
- AI
- yapay zeka
- AI sanat üreteci
- yapay zeka robotu
- Amazon Adaçayı Yapıcı
- Amazon SageMaker Veri Düzenleyicisi
- yapay zeka
- yapay zeka sertifikası
- bankacılıkta yapay zeka
- yapay zeka robotu
- yapay zeka robotları
- yapay zeka yazılımı
- AWS Makine Öğrenimi
- blockchain
- blockchain konferans ai
- zeka
- konuşma yapay zekası
- kripto konferans ai
- dal-e
- derin öğrenme
- google ai
- makine öğrenme
- Platon
- plato yapay zekası
- Plato Veri Zekası
- Plato Oyunu
- PlatoVeri
- plato oyunu
- ölçek ai
- sözdizimi
- zefirnet