Обективен
Предизвикателството е да се създаде модел, който използва данни от първите 24 часа от интензивното лечение, за да прогнозира преживяемостта на пациентите. Инициативата на общността GOSSIS на Масачузетския технологичен институт, със сертификат за поверителност от Harvard Privacy Lab, предостави набор от данни за повече от 130 000 посещения на болнични отделения за интензивно лечение (ICU) от пациенти, обхващащи период от една година. Тези данни са част от нарастващи глобални усилия и консорциум, обхващащ Аржентина, Австралия, Нова Зеландия, Шри Ланка, Бразилия и повече от 200 болници в Съединените щати.
Описание на данните
Инициативата на общността GOSSIS на Масачузетския технологичен институт, със сертификат за поверителност от Harvard Privacy Lab, предостави набор от данни за повече от 130 000 посещения на болнични отделения за интензивно лечение (ICU) от пациенти, обхващащи период от една година. Тези данни са част от нарастващи глобални усилия и консорциум, обхващащ Аржентина, Австралия, Нова Зеландия, Шри Ланка, Бразилия и повече от 200 болници в Съединените щати.
Данните включват:
Данни за обучение за 91 713 срещи.
Немаркирани данни от тестове за 39 308 срещи, които включват цялата информация в данните за обучение с изключение на стойностите за hospital_death.
Речник на WiDS Datathon 2020 с допълнителна информация за данните, включително категорията (напр. идентификатор, демографски, жизнени показатели), мерна единица, тип данни (напр. числови, двоични), описание и примери .
Примерни файлове за изпращане
H2O :
H2O е „инструментът за прогнозиране в паметта с отворен код за науката за големи данни“. H2O е богата на функции платформа за машинно обучение с отворен код, известна със своята R и Spark интеграция и лекота на използване. Това е виртуална машина на Java, която е оптимизирана за извършване на обработка в паметта на разпределени, паралелни алгоритми за машинно обучение на клъстери.
Мотивът на H2O е да предостави платформа, която улеснява неспециалистите да правят експерименти с машинно обучение. Архитектурата на H2O може да бъде разделена на различни слоеве, в които горният слой ще бъде с различни API, а долният слой ще бъде H2O JVM.
H2O AutoML
AutoML на H2O може също да бъде полезен инструмент за напреднали потребители, като предоставя проста функция за обвиване, която изпълнява голям брой задачи, свързани с моделиране, които обикновено изискват много редове код, и като им освобождава време да се съсредоточат върху други аспекти на задачите на тръбопровода за наука за данни, като предварителна обработка на данни, инженеринг на функции и внедряване на модел.
AutoML на H2O може да се използва за автоматизиране на работния процес на машинно обучение, което включва автоматично обучение и настройка на много модели в рамките на определен от потребителя срок. Подредените ансамбли — един базиран на всички предварително обучени модели, друг на най-добрия модел от всяка фамилия — ще бъдат автоматично обучени върху колекции от отделни модели, за да произведат силно предсказуеми ансамблови модели, които в повечето случаи ще бъдат най-ефективните модели в Класация на AutoML.
AutoML интерфейс
Интерфейсът H2O AutoML е проектиран да има възможно най-малко параметри, така че всичко, което потребителят трябва да направи, е да посочи своя набор от данни, да идентифицира колоната за отговор и по избор да посочи ограничение във времето или ограничение за общия брой обучени модели.
Пълният изходен код за прогнозиране на оцеляването с помощта на H2O AutoML може да бъде намерен в ядрото на kaggle, дадено по-долу
https://www.kaggle.com/usharengaraju/wids2020-predictionusingh2oautoml
Стартиране на H2O и проверка на клъстера
Има много инструменти за директно взаимодействие с видими от потребителя обекти в H2O клъстера. Всяка нова сесия на python започва с инициализиране на връзка между клиента на python и клъстера H2O. Функцията h2o.init() за инициализиране на H2O.
import h2o from h2o.automl import H2OAutoML h2o.init()
Импортиране на библиотеки
# importing libraries import numpy as np import pandas as pd from sklearn.impute import SimpleImputer from sklearn.metrics import accuracy_score from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier,GradientBoostingClassifier ,AdaBoostClassifier from sklearn.model_selection import train_test_split import lightgbm as lgb from sklearn import preprocessing
Зареждане на данните
# loading dataset training_v2= pd.read_csv("../input/widsdatathon2020/training_v2.csv") # creating independent features X and dependant feature Y y = pd.DataFrame(training_v2['hospital_death']) X = training_v2 X = training_v2.drop('hospital_death',axis = 1)
H2OFrame:
H2OFrame е основното хранилище на данни за H2O. H2OFrame е подобно на DataFrame на pandas. Едно от критичните разграничения е, че данните обикновено не се съхраняват в паметта, вместо това се намират на (вероятно отдалечен) H2O клъстер и по този начин H2OFrame представлява просто обработка на тези данни.
features = list(X) X = y.join(X) X = h2o.H2OFrame(X)
split_frame():
split_frame() разделя рамка на отделни подмножества с размер, определен от дадените съотношения. Броят на подмножествата винаги е с 1 повече от броя на дадените съотношения. Това не дава точно разделяне и H2O е проектиран да бъде ефективен при големи данни, използвайки метод на вероятностно разделяне, а не точно разделяне.
train,test = X.split_frame(ratios=[.7])
H2OAutoML:
Функцията за автоматично машинно обучение (AutoML) автоматизира процеса на обучение на модела за контролирано машинно обучение. Текущата версия на AutoML обучава и кръстосано валидира случайна гора (DRF), изключително рандомизирана гора (DRF/XRT), произволна мрежа от генерализирани линейни модели (GLM) произволна мрежа от XGBoost (XGBoost), произволна мрежа на Gradient Boosting Machines (GBM), произволна мрежа от Deep Neural Nets (DeepLearning) и 2 подредени ансамбъла, един от всички модели и един от най-добрите модели от всеки вид.
model = H2OAutoML(max_runtime_secs=300, seed = 1) model.train(x = features, y = 0, training_frame = train
класация:
leaderboard() извлича класацията от H2OAutoML обект и връща H2OFrame с идентификатори на модели в първата колона и показател за оценка във втората колона, сортирани по показателя за оценка.
lb = model.leaderboard lb.head()
preds = model.predict(test)
Препратки :
Лий, М., Рафа, Дж., Гасеми, М., Полард, Т., Каланиди, С., Бадави, О., Матис, К., Сели, Л. А. (2020). WiDS (Жените в науката за данните) Datathon 2020: Прогноза за смъртността в интензивното отделение. PhysioNet. doi:10.13026/vc0e-th79
Goldberger AL, Amaral LAN, Glass L, Hausdorff JM, Ivanov PCh, Mark RG, Mietus JE, Moody GB, Peng C-K, Stanley HE. PhysioBank, PhysioToolkit и PhysioNet: Компоненти на нов изследователски ресурс за комплексни физиологични сигнали (2003). Тираж. 101(23):e215-e220.
Официална H20 документация
https://opensourceforu.com/2017/01/introduction-h2o-relation-deep-learning/