Klassifizierung von Patienten durch maschinelles Lernen | von Bruno Lanza | Juni 2023

0
28


Die Kategorien Klassifizierung und Random Forests können als Grundlage für die Verwendung von maschinellem Lernen zur Klassifizierung dienen.

Verwendung a base de dados de doença cardíaca Die von der UCI (UC Irvine) vertretenen Modelle haben sich mit der Klassifizierung von Patienten wie „Saudáveis“ oder „Doentes“ auf der Grundlage einiger Merkmale befasst, die sie während ihres Aufenthalts in meinen Krankenhäusern aufgenommen haben.

Der gesamte Code für das R-Projekt könnte gefunden werden Hier.

Der erste Schritt in der Vorbereitungsphase ist auf die Datenbasis „processed.cleveland.information“ zurückzuführen, die je nach Bedarf für die Klassifizierung durch Patienten erforderlich ist.

df <- learn.desk("processed.cleveland.information", fileEncoding = "UTF-8", sep = ",", dec = ".")

Darüber hinaus müssen wir die Struktur des Datensatzes „df“ beobachten:

Rows: 303
Columns: 14
$ V1 <dbl> 63, 67, 67, 37, 41, 56, 62, 57, 63, 53, 57, 56, 56, 44, 52, 57, 48, 54, 48, 49, 64,~
$ V2 <dbl> 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0,~
$ V3 <dbl> 1, 4, 4, 3, 2, 2, 4, 4, 4, 4, 4, 2, 3, 2, 3, 3, 2, 4, 3, 2, 1, 1, 2, 3, 4, 3, 3, 1,~
$ V4 <dbl> 145, 160, 120, 130, 130, 120, 140, 120, 130, 140, 140, 140, 130, 120, 172, 150, 110~
$ V5 <dbl> 233, 286, 229, 250, 204, 236, 268, 354, 254, 203, 192, 294, 256, 263, 199, 168, 229~
$ V6 <dbl> 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,~
$ V7 <dbl> 2, 2, 2, 0, 2, 0, 2, 0, 2, 2, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 0, 0, 0,~
$ V8 <dbl> 150, 108, 129, 187, 172, 178, 160, 163, 147, 155, 148, 153, 142, 173, 162, 174, 168~
$ V9 <dbl> 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,~
$ V10 <dbl> 2.3, 1.5, 2.6, 3.5, 1.4, 0.8, 3.6, 0.6, 1.4, 3.1, 0.4, 1.3, 0.6, 0.0, 0.5, 1.6, 1.0~
$ V11 <dbl> 3, 2, 2, 3, 1, 1, 3, 1, 2, 3, 2, 2, 2, 1, 1, 1, 3, 1, 1, 1, 2, 1, 2, 1, 2, 2, 1, 3,~
$ V12 <chr> "0.0", "3.0", "2.0", "0.0", "0.0", "0.0", "2.0", "0.0", "1.0", "0.0", "0.0", "0.0",~
$ V13 <chr> "6.0", "3.0", "7.0", "3.0", "3.0", "3.0", "3.0", "3.0", "7.0", "7.0", "6.0", "3.0",~
$ V14 <int> 0, 2, 1, 0, 0, 0, 3, 0, 2, 1, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 3, 4, 0, 0, 0,~

Es besteht die Möglichkeit, dass wir auf unserer Foundation 303 Zeilen und 14 Spalten haben. Es besteht die Möglichkeit, eine kurze Beschreibung der verschiedenen Arten zu finden, die Sie zum Teil analysieren müssen:

V1: Idade (numerisch)
V2: Sexo (categórica dicotômica):
1 – Homem
0 – Mulher
V3: Tipo de dor no peito (categórica policotômica):
1 – Dor típica
2 – Dor atípica
3 – Outras dores
4 – Assintomático
V4: Pressão arterial na chegada ao hospital (numerisch)
V5: Cholesterin (numerisch)
V6: Açúcar no sangue após jejum (categorica dicotômica):
1 – SIM
0 – NÃO
V7: Elektrokardiogramm in Repouso (Kategorie der Polizei):
0 – regular
1 – Anomalia na onda ST-T
2 – Überprüfen Sie die endgültige Hypertrophie des ventrikulären Spalts
V8: Taxa máxima de batimento cardíaco (numerisch)
V9: Angina induzida por exercício (Kategorie dicotômica):
1 – SIM
2 – NÃO
V10: Drücken Sie die ST-Style, um sie während der Übung auf dem Repouso zu trainieren (numerisch).
V11: Angulação do pico da depressão ST induzida por exercício (categorica policotômica):
1: Angulação para cima
2: Reta
3: Angulação para baixo
V12: Hauptfarben-Gefässnummer für Fluoroskopie (Kategorie der Polizei):
0: nenhum vazo
1: ähm vazo
2: dois vasos
3: três vasos
V13: Thal (categórica policotômica):
3 – Regular
6 – Defeito fixo
7 – Defeito reversível
V14: Abhängige Diagnose, Diagnose eines Herz-Kreislauf-Erkrankers (Kategorie der Polizei):
0 – Sem doença cardiaca
1, 2, 3, 4 – Herz-Kreislauf-Präsenz mit unterschiedlicher Intensität

In der nächsten Section werden verschiedene Kategorien verwendet, um sie besser zu analysieren, in verschiedene Kategorien umzuwandeln und zu entfernen, wenn Datensätze verloren gehen, deren Wert verloren geht.

Es ist nicht möglich, dass ein Datensatz verwendet wird, da verschiedene THAL- und FLUOR-Werte durch das Zeichen „?“ dargestellt werden. Wie einige 6 Registrierungen, deren Wert verloren gegangen ist, haben Sie sich entschieden, den Datensatz zu entfernen.

Nachdem sie sich als variabel erwiesen und so unterschiedliche qualitative Faktoren in Faktoren transformiert hatten, reagierte die unterschiedliche Reaktion auf die Transformation in Dikotomy, oder seja, nun stellte sie eine Existenz (Y) oder keine (N) dar, weil sie Herzblut hatte. Vor der Transformation zeigt die Variation von 0 bis 4 den Degree an, den der geduldige Affected person benötigt.

Vamos dar ein olhada agora na nova distribuição da variável DOENCA:

N   Y 
160 137

Als Ergebnis wurde der Datensatz beobachtet und mit den meisten Patienten (160) verglichen, die mit der Anzahl der Patienten (137) verglichen wurden.

Anschließend besteht die Möglichkeit, auf der Grundlage der folgenden Schritte Einzelheiten zu erfahren:

Rows: 297
Columns: 14
$ idade <dbl> 63, 67, 67, 37, 41, 56, 62, 57, 63, 53, 57, 56, 56, 44, 52, 57, 48, 54,~
$ sexo <fct> 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1,~
$ dor_peito <fct> 1, 4, 4, 3, 2, 2, 4, 4, 4, 4, 4, 2, 3, 2, 3, 3, 2, 4, 3, 2, 1, 1, 2, 3,~
$ pressao <dbl> 145, 160, 120, 130, 130, 120, 140, 120, 130, 140, 140, 140, 130, 120, 1~
$ colesterol <dbl> 233, 286, 229, 250, 204, 236, 268, 354, 254, 203, 192, 294, 256, 263, 1~
$ acucar <fct> 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0,~
$ eletro <fct> 2, 2, 2, 0, 2, 0, 2, 0, 2, 2, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2,~
$ bat_card <dbl> 150, 108, 129, 187, 172, 178, 160, 163, 147, 155, 148, 153, 142, 173, 1~
$ angina_ex <fct> 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,~
$ depressao_st_ex <dbl> 2.3, 1.5, 2.6, 3.5, 1.4, 0.8, 3.6, 0.6, 1.4, 3.1, 0.4, 1.3, 0.6, 0.0, 0~
$ ang_st_ex <fct> 3, 2, 2, 3, 1, 1, 3, 1, 2, 3, 2, 2, 2, 1, 1, 1, 3, 1, 1, 1, 2, 1, 2, 1,~
$ fluor <fct> 0.0, 3.0, 2.0, 0.0, 0.0, 0.0, 2.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0~
$ thal <fct> 6.0, 3.0, 7.0, 3.0, 3.0, 3.0, 3.0, 3.0, 7.0, 7.0, 6.0, 3.0, 6.0, 7.0, 7~
$ doenca <fct> N, Y, Y, N, N, N, Y, N, Y, Y, N, N, Y, N, N, N, Y, N, N, N, N, N, Y, Y,~

Aufgrund der importierten Daten und der vorab verarbeiteten Daten wird die Verteilung der verschiedenen Algen vor und nach der Zeit erfolgen.

Es besteht die Möglichkeit, dass es sich um eine Grafik handelt, die die Idee der Patienten darstellt:

Ich glaube, es gibt eine Konzentration von Patienten im Alter von 35 bis 75 Jahren, darunter 3 Patienten im Alter von 35 Jahren und 3 Patienten im Alter von 75 Jahren.

Jetzt analysieren wir, wie sich die verschiedenen Gruppen für die Patientengruppe verhalten und für die Patientengruppe, die keine Patienten hat.

Bei einer Druckvariation (bezogen auf den arteriellen Druck) beträgt die Beobachtungskonzentration für Patienten zwischen 100 und 140, wobei einige Bilder einen Wert und ein Medium von 129,25 haben. Für die Patienten konzentrierte sie sich auf 120 und 150, mit verschiedenen Bildern, die mehr als 134,57 Jahre alt waren, und zwar vor allem, als die Patienten sich befanden. Wir können auch darauf achten, dass die Patienten unter einem Druck von mehr als 180 °C stehen, oder dass sie den Patienten nicht helfen können.

Kein Fall von COLESTEROL, ein Prinzip, das als Händler angesehen werden kann. Es liegt ein Wertunterschied vor, der nicht mit der ersten Grafik übereinstimmt, und ein geduldiger Affected person stellt einen Cholesterinspiegel von 500 zur Verfügung. Um einen Vergleich mit anderen Entfernern durchführen zu können, muss die Visualisierung geduldig sein und die Analyse der beiden Grafiken erleichtert werden.

Jetzt müssen wir darauf achten, dass die Verteilung unterschiedlicher COLESTEROL-Werte für unsere Patientengruppen verbessert wird. Für die Saudáveis-Gruppe ist es möglich, dass die Anzahl der Beobachtungen einen Wert von etwa 250 beträgt, mit einer Gesamtzahl von 300 und einem Wert von 242,64. Für die Patienten liegt die Beobachtungszahl zwischen 250 und 300 und den Medien bei 251,48. Für diese Patientengruppe liegt die Zahl der Beobachtungen bei etwa 300 Cholesterin.

Analysieren Sie die Herzfrequenz-Patienten, damit sich die Patienten auf Beobachtungen zwischen 150 und 180 Einheiten auf den Medien von 158 konzentrieren können. Ich habe es viel gesehen Unterschied zwischen Beobachtungen und Beobachtungsbildern. Für Patienten müssen nach der 150-Marken-Marke mindestens 150 Picos benötigt werden, bevor die 150-Marken-Markierung für Patienten erforderlich ist.

Eine weitere Analyse für DOR_PEITO. Wir beobachten unsere Grafiken, die für die Patienten erforderlich sind, um eine Anzahl von Patienten zu finden, die den Kategorien „Atípica“ und „Assintomático“ ähneln. In keinem Fall begeben sich Patienten in die Obhut eines Krankenhausassistenten, oder sie sind nicht für sie da.

Keine Vergleichsgrafik der verschiedenen THAL, da diese Reaktion auf eine vererbte Erbkrankheit der Blutkrankheit Talassämie, die durch Blutfluss verursacht wurde, zu einem großen Verhaltensunterschied zwischen zwei Gruppen führen könnte. Erstens, die Patienten wiesen darauf hin, dass die Talessämie regular ist, oder zumindest, wenn der Blutfluss regular ist. Keine einzige Gruppe von Patienten, vor allem denen, die die Einstufung „Defeito Reversível“ vorlegten, als der Fluch der Sanguínio aufgrund eines Problemtyps auftrat. Ich habe die meisten Patienten in die Kategorie „Defeito Fixo“ versetzt, was bedeutet, dass einige Teile des Herzens nicht im Fluss sind.

Bei verschiedenen FLUOR-Checks, die eine Reihe von Hauptfarbgefäßen für die Durchleuchtung darstellen, besteht die Möglichkeit, dass zwischen Patienten und Patienten unterschieden wird. Keine Gruppe dieser beiden Personen warfare während des Verfahrens in der Lage, Farben zu zeigen. Ich habe keine Gruppe von zwei Patienten, verschiedene Patienten waren während einer Durchleuchtung mit 1, 2 oder 3 farbigen Gefäßen vertreten.

Darüber hinaus ist es wichtig, dass wir sie analysieren und mit den unterschiedlichen quantitativen Daten unserer Daten korrelieren.

Eine Korrelation von Pearson, die für die mittlere Korrelation zwischen verschiedenen quantitativen Werten verwendet wurde, variierte von -1 bis 1 und sendete -1 eine perfektisch unfavorable Korrelation und 1 eine perfeit optimistic Korrelation. Es ist nicht möglich, dass die Warmwasserkarte mit den negativen Auswirkungen korreliert, die jedoch zwischen den verschiedenen IDADE- und BAT_CARD- und DEPRESSAO_ST_EX- und BAT_CARD-Einstellungen geändert werden müssen. Es besteht eine optimistic Korrelation, die zwischen den verschiedenen IDADE- und FLUOR-Farben bestimmt ist.

Wir weisen darauf hin, dass die Korrelationen nur dann angezeigt werden, wenn keine Wärmekarte vorhanden ist. Es sind keine ausdrücklichen Angaben erforderlich, da die Korrelation in der Regel nicht vorhanden ist, da die Werte 0 bis 1 und -1 betragen, sodass perfekte Korrelationen vorliegen. Es ist von Bedeutung, dass unsere Unterschiede zwischen uns und uns nicht korrelieren, weder eine Abhängigkeitsbeziehung noch eine größere Abhängigkeit möglich ist.

Abaixo kann eine grafische Darstellung der verschiedenen Brückentypen und Herzfrequenzmessungen aufweisen, die eine größere Korrelation zum Modul darstellen.

Ich beobachte nicht, dass die Anzahl der Patienten, die in der letzten Zeit größer geworden ist, 150 beträgt. Wir sehen additionally, dass wir beobachten können, dass die Anzahl der Patienten, die über 150 sind, immer kleiner wird tun vor 70 Jahren drastisch.

Abschließend, nach der Analyse der Merkmale der Patienten, gehen wir davon aus, dass wir vor der Entscheidung eine Antwort auf die Einstufung der Patienten erhalten, weil sie existieren oder nicht in der Lage sind.

Wir haben uns mit der Darstellung von zwei Jahren befasst, einschließlich der Ausreißer, oder Sie sehen, dass die folgenden Beobachtungen ein sehr unterschiedliches Korrespondenz-Repertoire darstellen. Denken Sie an unsere Datenbasis, die Zusammensetzung der Patientenmerkmale und die interessante Entfernung von Ausreißern für die Analyse des prädiktiven Modells. Es ist wichtig, das Modell so weit wie eine Überanpassung zu vermeiden und eine größere Verallgemeinerung zu erwarten.

Ich habe eine neue Verteilung der verschiedenen DOENCA-Änderungen in Bezug auf die Linhas vorgenommen, die Ausreißer kontinhamen, und stellte fest, dass „N“ für die geduldigen Patienten und „Y“ für die Zahlen steht:

N   Y 
153 120

Nach der Entfernung von Ausreißern wurden die Zahlen vom Modell 70/30 getrennt, von 70 % für die Ausbildung und 30 % für den Take a look at des Klassifizierungsmodells.

Vor der Entscheidung, die Funktion „rpart“ zu verwenden, um „rpart“ zu laden, folgt folgendes:

CART_doenca <- rpart(method = doenca ~ .,
information = treino,
xval = 10,
management = rpart.management(cp = 0.0153256,
maxdepth = 30),
parms = checklist(cut up = "info"),
methodology = "class")

Mit der zusätzlichen Funktion von rpart.plot können Sie die visuelle Darstellung analysieren:

Weitere wichtige Beobachtungen:
* Wir müssen uns darüber im Klaren sein, dass unser Erster keine andere THAL-Untersuchung hat, als wir uns während einer Erkundungsphase mit einem großen Unterschied zwischen den Patienten und den Patienten konfrontiert sahen;
– In der Nähe verschiedener Patientengruppen, die zur Trennung von FLUOR verwendet werden, ist auch ein differenziertes Verhalten zwischen zwei Patientengruppen vorhanden;
– Wir beginnen nun damit, verschiedene Foren zur Trennung von den Basisforen DOR_PEITO und DEPRESSAO_ST_EX zu verwenden;
– Variáveis ​​como ACUCAR, ANG_ST_EX und SEXO não apareceram nos ós ós da árvore.

Schärfe, Sensibilität und Spezifität sind in jedem Bereich der ROC-Kurve enthalten, da die verwendeten Messinstrumente dazu dienen, die Leistung des Modells auf der Foundation des Dreiklangs auf der Foundation der Hoden zu verbessern.

Anschließend können wir die folgenden Informationen zu den Verwirrungsmatrizen analysieren:

"Informações das previões na base de treino:"

"Matriz de confusão:"

N Y
N 95 17
Y 9 70

"Acurácia na base de treino:"

0.8638743

"ROC, Sensibilidade e Especificidade na base de treino:"

ROC Sens Spec
0.8994805 0.9134615 0.8045977

"Informações das previões na basede teste:"

"Matriz de confusão:"

N Y
N 42 8
Y 7 25

"Acurácia na base de teste:"

0.8170732

"ROC, Sensibilidade e Especificidade na base de teste:"

ROC Sens Spec
0.8698207 0.8571429 0.7575758

Auf der Foundation des Modells lag die Genauigkeit bei 86,38 % und der ROC-Kurvenbereich bei 0,89 unter Verwendung eines Grenzwerts von 50 % mehr als 50 % als klassifiziert als DOENTES. Die verschiedenen Cutoff-Werte im Take a look at betrugen 50 % oder wiesen eine höhere Empfindlichkeit, einen ROC und einen Ausgleich zwischen Sensibilität (91 %) und Spezifität (80 %) auf.

Die Testbasis des Modells hatte eine Genauigkeit von 81,70 % und einen ROC-Kurvenbereich von 0,86, außerdem wurde ein Grenzwert von 50 %, eine Empfindlichkeit von 85 % und eine Spezifikation von 75 % verwendet.

Das Modell hatte auf der Testbasis ein Ergebnis mit einer Härte von 82 % und stellte ein Gleichgewicht zwischen der Testbasis und dem Take a look at dar. Dieses Gleichgewicht ist ein Indikator für die Verallgemeinerung des Modells und eine mögliche Überanpassung.

Letztendlich, um das Ergebnis zu verbessern, das mit der Entscheidungsfindung einherging, wurde Random Forest auf Foundation von Patientendaten ausgewählt.

Das Random-Forest-Modell wurde für die Bibliothek „Caret“ verwendet und bietet verschiedene Optionen von Hiperparametern zur Steuerung des Zuges nach der Vorverarbeitung auf der Foundation des Zuges mit der Funktion trainControl().

Die Einzelheiten des trainierten Modells können nachstehend aufgeführt werden:

controle <- trainControl(methodology = "repeatedcv",
quantity = 10,
repeats = 5,
search = "grid",
summaryFunction = twoClassSummary,
classProbs = TRUE)

grid <- base::broaden.grid(.mtry=c(1:13))

CART_doenca_gc <- caret::prepare(doenca ~.,
information = treino,
methodology = "rf",
metric = "ROC",
trControl = controle,
ntree = 600,
tuneGrid = grid)

Wir analysieren auch die von Random Forest bereitgestellten Messwerte:

"Informações das previões na base de treino:"

"Matriz de confusão:"

N Y
N 98 14
Y 6 73

"Acurácia na base de treino:"
0.895288

"Informações das previões na base de teste:"

"Matriz de confusão:"

N Y
N 46 7
Y 3 26

"Acurácia na base teste:"
0.8780488

"ROC, Sensibilidade e Especificidade na base de teste:"

ROC Sens Spec
0.9288806 0.9387755 0.7878788

Wie Sie sehen können, haben wir auf der Foundation des Drei-Prozent-Wettbewerbs einen Drei-Prozent-Anteil im Zusammenhang mit der Entscheidungsfindung erhalten. Auf der Foundation der Hoden, vor Ihrem ersten Versuch, mehr als 6 Prozent.

Als das Modell vor der Entscheidungsfindung einen Wert von 81,70 % mit einem ROC-Kurvenbereich von 0,86 erreichte, erreichte ein zufälliger Wald einen Wert von 87,80 % mit einem ROC-Wert von 0,92.

Die ausserordentlich wichtigen Beobachtungen und Sensibilitäten ergaben, dass kein Zufallswaldmodell 93,87 % erreichte. Es weist darauf hin, dass es sich um eine größere Fähigkeit zur Einstufung von Patienten handelt, und es besteht die Möglichkeit, dass sie in kürzerer Zeit eine gründlichere Analyse durchführen müssen.

Dúvidas und Vorschläge? Geben Sie die Kontaktnummer ein LinkedIn Du hast keine E-Mail b.lanza91@gmail.com.



Source link

HINTERLASSEN SIE EINE ANTWORT

Please enter your comment!
Please enter your name here