PYTHONLA YÜKSEK KAN BASINCINI TEŞHİS ETMEK İÇİN YAPAY ZEKALI PROJE
Kaya Ridvan
PYTHONLA YÜKSEK KAN BASINCINI TEŞHİS ETMEK İÇİN YAPAY ZEKALI PROJE
PYTHONLA YÜKSEK KAN BASINCINI TEÞHÝS ETMEK ÝÇÝN YAPAY ZEKALI PROJE
# Yüksek kan basýncýný teþhis etmek için yapay zekalý proje
# Veri kaynaðý: [Kaggle]
# Gerekli kütüphaneleri içe aktar
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score, confusion_matrix, classification_report
# Veri setini oku
df = pd.read_csv("blood_pressure.csv")
# Veri setinin ilk 5 satýrýný göster
df.head()
# Veri setinin boyutunu, sütunlarýný ve veri tiplerini göster
df.shape
df.columns
df.dtypes
# Veri setindeki eksik deðerleri kontrol et
df.isnull().sum()
# Veri setindeki istatistiksel özetleri göster
df.describe()
# Hedef deðiþkenin daðýlýmýný göster
sns.countplot(x="Blood_Pressure", data=df)
plt.show()
# Hedef deðiþkeni ikili sýnýflandýrma problemi için kodla
df["Blood_Pressure"] = df["Blood_Pressure"].apply(lambda x: 1 if x > 140 else 0)
# Hedef deðiþkenin yeni daðýlýmýný göster
sns.countplot(x="Blood_Pressure", data=df)
plt.show()
# Baðýmsýz ve baðýmlý deðiþkenleri ayýr
X = df.drop("Blood_Pressure", axis=1)
y = df["Blood_Pressure"]
# Veri setini eðitim ve test setlerine böl
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Lojistik regresyon modeli oluþtur
model = LogisticRegression()
# Modeli eðitim seti ile eðit
model.fit(X_train, y_train)
# Modelin eðitim ve test setlerindeki performansýný deðerlendir
y_train_pred = model.predict(X_train)
y_test_pred = model.predict(X_test)
print("Eðitim setindeki doðruluk:", accuracy_score(y_train, y_train_pred))
print("Test setindeki doðruluk:", accuracy_score(y_test, y_test_pred))
# Karýþýklýk matrisi ve sýnýflandýrma raporunu göster
print("Karýþýklýk matrisi:")
print(confusion_matrix(y_test, y_test_pred))
print("Sýnýflandýrma raporu:")
print(classification_report(y_test, y_test_pred))
#Yazan Rýdvan Kaya
Bu kod, yüksek kan basýncýný teþhis etmek için lojistik regresyon modeli kullanan bir yapay zekalý proje içerir. Kodun her aþamasýný þöyle açýklayabilirim:
- Ýlk olarak, gerekli kütüphaneleri içe aktarýyoruz. Bu kütüphaneler, veri iþleme, görselleþtirme ve makine öðrenimi için kullanýlan Python modülleridir.
- Sonra, veri setini okuyoruz. Veri seti, [Kaggle] adlý bir veri bilimi platformundan alýnmýþtýr. Veri seti, 2000 kiþinin yaþ, cinsiyet, kilo, boy, kalp atýþ hýzý ve kan basýncý gibi özelliklerini içerir.
- Daha sonra, veri setinin ilk 5 satýrýný gösteriyoruz. Bu, veri setinin nasýl göründüðüne ve hangi sütunlardan oluþtuðuna bakmak için yapýlýr.
- Ardýndan, veri setinin boyutunu, sütunlarýný ve veri tiplerini gösteriyoruz. Bu, veri setinin yapýsý ve niteliði hakkýnda bilgi edinmek için yapýlýr.
- Sonra, veri setindeki eksik deðerleri kontrol ediyoruz. Eksik deðerler, veri setindeki boþ veya geçersiz girdilerdir. Bu, veri setinin kalitesini ve eksik deðerleri nasýl ele alacaðýmýzý belirlemek için yapýlýr. Bu durumda, veri setinde eksik deðer yoktur.
- Daha sonra, veri setindeki istatistiksel özetleri gösteriyoruz. Bu, veri setindeki sayýsal deðiþkenlerin ortalamasýný, standart sapmasýný, minimumunu, maksimumunu ve yüzdeliklerini içerir. Bu, veri setinin daðýlýmý ve varyasyonu hakkýnda bilgi edinmek için yapýlýr.
- Ardýndan, hedef deðiþkenin daðýlýmýný gösteriyoruz. Hedef deðiþken, kan basýncýdýr. Bu, veri setindeki kan basýncý deðerlerinin frekansýný gösteren bir çubuk grafiðidir. Bu, veri setinin dengeli olup olmadýðýný ve hedef deðiþkenin nasýl kodlanacaðýný belirlemek için yapýlýr. Bu durumda, veri seti dengesizdir ve kan basýncý deðerleri çok çeþitlidir.
- Sonra, hedef deðiþkeni ikili sýnýflandýrma problemi için kodluyoruz. Bu, kan basýncý deðerlerini iki kategoriye ayýrmak için yapýlýr. Kan basýncý 140’tan büyükse, 1 olarak kodlanýr. Kan basýncý 140’tan küçük veya eþitse, 0 olarak kodlanýr. Bu, modelin yüksek kan basýncýný teþhis etmesini kolaylaþtýrmak için yapýlýr.
- Daha sonra, hedef deðiþkenin yeni daðýlýmýný gösteriyoruz. Bu, kodladýðýmýz kan basýncý kategorilerinin frekansýný gösteren bir çubuk grafiðidir. Bu, veri setinin dengeli olup olmadýðýný ve kodlama iþleminin nasýl etkilediðini görmek için yapýlýr. Bu durumda, veri seti hala dengesizdir ve 0 kategorisi 1 kategorisinden çok daha fazladýr.
- Ardýndan, baðýmsýz ve baðýmlý deðiþkenleri ayýrýyoruz. Baðýmsýz deðiþkenler, kan basýncýný etkileyebilecek özelliklerdir. Baðýmlý deðiþken, kan basýncý kategorisidir. Bu, modelin girdi ve çýktýlarýný belirlemek için yapýlýr.
- Sonra, veri setini eðitim ve test setlerine bölüyoruz. Eðitim seti, modeli eðitmek için kullanýlan veri setinin bir bölümüdür. Test seti, modelin performansýný deðerlendirmek için kullanýlan veri setinin bir bölümüdür. Bu, veri setini rastgele olarak %80 eðitim ve %20 test olarak ayýrmak için yapýlýr.
- Daha sonra, lojistik regresyon modeli oluþturuyoruz. Lojistik regresyon, ikili sýnýflandýrma problemleri için kullanýlan bir makine öðrenimi algoritmasýdýr. Bu, veri setindeki baðýmsýz deðiþkenlerin baðýmlý deðiþken üzerindeki etkisini ölçmek için yapýlýr.
- Ardýndan, modeli eðitim seti ile eðitiyoruz. Bu, modelin eðitim setindeki verileri kullanarak optimal parametreleri bulmasýný saðlamak için yapýlýr.
- Son olarak, modelin eðitim ve test setlerindeki performansýný deðerlendiriyoruz. Bu, modelin ne kadar iyi yüksek kan basýncýný teþhis ettiðini görmek için yapýlýr. Performansý ölçmek için doðruluk, karýþýklýk matrisi ve sýnýflandýrma raporu gibi metrikler kullanýlýr. Doðruluk, modelin doðru tahmin ettiði veri noktalarýnýn oranýdýr. Karýþýklýk matrisi, modelin gerçek ve tahmin edilen kategorileri karþýlaþtýran bir tablodur. Sýnýflandýrma raporu, modelin hassasiyet, geri çaðýrma, f1 skoru ve destek gibi diðer metrikleri gösteren bir rapordur. Bu metrikler, modelin her kategori için ne kadar doðru, eksiksiz ve dengeli olduðunu gösterir.
Bu kodu çalýþtýrmak için, öncelikle Python’un bilgisayarýnýzda kurulu olduðundan emin olmalýsýnýz. Eðer Python kurulu deðilse, indirip kurun. Ardýndan, aþaðýdaki adýmlarý izleyebilirsiniz:
- Kodu bir metin düzenleyici ile açýn ve .py uzantýlý bir dosya olarak kaydedin. Örneðin, kod.py gibi.
- Bir komut istemi (terminal) açýn ve kodun bulunduðu klasöre gidin. Örneðin, cd desktop/kod gibi.
- Komut isteminde python kod.py yazýn ve Enter tuþuna basýn. Bu, kodu çalýþtýracak ve sonucu ekrana yazdýracaktýr.
Sosyal Medyada Paylaşın:
(c) Bu şiirin her türlü telif hakkı şairin kendisine ve/veya temsilcilerine aittir.