• Mashinali o‘qitish fanidan 4-TOPSHIRIQ Mavzu
  • 4 - topshiriq
  • Zbekiston respublikasi raqamli texnologiyalar vazirligi muhammad al-xorazmiy nomidagi toshkent




    Download 440,77 Kb.
    Pdf ko'rish
    Sana16.05.2024
    Hajmi440,77 Kb.
    #236868
    Bog'liq
    4-amaliyish (2)



    O‘ZBEKISTON RESPUBLIKASI RAQAMLI TEXNOLOGIYALAR 
    VAZIRLIGI MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT 
    AXBOROT TEXNOLOGIYALARI UNIVERSITETI 
     
     
     
    Kompyuter injiniringi fakulteti 
    Sun’iy intellekt kafedrasi 
     
     
     
     
     
     
    Mashinali o‘qitish fanidan 
    4-TOPSHIRIQ 
    Mavzu:
    Mashinali o‘qitishda o‘qituvchisiz o‘qitish algoritmlarini o‘rganish va ularni 
    dasturlash 
    Bajardi
    : 210-21 guruh talabasi 
    To’ymurodov Abror 
    Tekshirdi
    : Xasanov U.K. 
    TOSHKENT – 2024 


    4 - topshiriq 
    1. 
    Berilgan variantdagi masala yuzasidan o’rgatuvchi tanlama(dataset)ni 
    shakllantiring. 
    2. 
    Yaratilgan dataset ning ixtiyoriy ikkita xususiyatini olgan holda matplotlib 
    kutubxonasidan foydalanib grafik tasvirlang. 
    3. 
    Sklearn kutubxonasidan foydalangan holda KMeans klasterlash modelini 
    quring(klasterlar sonini variantdan oling). 
    4. 
    Model tomonidan aniqlangan klaster markazlarini va ob’yektlarini grafik 
    tarvirlang. 
    5. 
    Modelini o’rgatuvchi to’plamdagi aniqligini hisoblang va tartibsizlik matritsasi 
    (confusion_matrix) ni quring. Klasterlash aniqligini baholang. 
    6. 
    Hisobotni word faylida shakllantiring. Yozilgan dastur kodlari, chizmalar, 
    tushirilgan oyna rasmlari wordda ilova qilinsin. Hisobotda ishlatilgan har bir rasmga, 
    chizmaga ta’rif bering. Sahifalarning yuqori kalontitulida sana, talaba guruh nomeri
    F.I.SH ni ko’rsating. 
    19 
    Olimlarni klasterini hosil qiling 
    40





    1-
    Rasm. Kodlar ko’rinishi
    2-rasm . Kmeansni yaratish


    3-rasm. Klasterlarni grafigini tasvirlash : 
    Kodda ozgina xatolik tufayli grafik hosil bo’lmadi
    Dastur kodi : 
    import csv 
    import numpy as np 
    import matplotlib.pyplot as plt 
    from sklearn.cluster import KMeans 
    from sklearn.metrics import confusion_matrix 
    # Datasetni o'qish 
    x1 = [] 
    x2 = [] 
    x3 = [] 
    x4 = [] 
    x5 = [] 


    with open("./hayvonlar.csv") as file: 
    reader = csv.DictReader(file) 
    for row in reader: 
    if row["yirtqich"] != "yirtqich": 
    x1.append(row["yirqich"]) 
    x2.append(row["classId"]) 
    x3.append(float(row["umri(yil)"])) 
    x4.append(row["max_vazni(kg)"]) 
    x5.append(float(row["tezligi(km/soat)"])) 
    # Grafik tasvirlash uchun ixtiyoriy ikkita xususiyatni tanlash 
    feature_index = 3 # Ixtiyoriy xususiyat indeksi, misol uchun x4 
    # Grafik tasvirlash 
    plt.scatter(x5[1:], x4[1:]) 
    plt.xlabel("X5") 
    plt.ylabel("X4") 
    plt.title("X5 va X4 grafiki") 
    plt.show() 
    # Datasetni tashkil etish 
    dataset = np.array(list(zip(x5, x4))) 
    # KMeans klasterlash modelini yaratish 


    k = 3 # Klasterlar soni variantdan olinadi 
    kmeans = KMeans(n_clusters=k, random_state=42) 
    # Modelni o'rgatish 
    kmeans.fit(dataset) 
    # Klaster markazlarini olish 
    cluster_centers = kmeans.cluster_centers_ 
    # Ob'yektlarni klasterlarga bog'lash 
    labels = kmeans.labels_ 
    # Klasterlar uchun turli ranglarni belgilash 
    colors = ['red', 'green', 'blue', 'orange', 'purple', 'yellow'] 
    # Klasterlarni grafikda tasvirlash 
    for i in range(k): 
    cluster_points = dataset[labels == i] 
    plt.scatter(cluster_points[:, 0], cluster_points[:, 1], label=f"Cluster {i+1}", c=colors[i 
    % len(colors)]) 
    plt.scatter(cluster_centers[:, 0], cluster_centers[:, 1], c='red', marker='X', s=100, 
    label='Centroids') 
    plt.xlabel("X5") 


    plt.ylabel("X4") 
    plt.title("KMeans klasterlash") 
    plt.legend() 
    plt.show() 
    # Ma'lumotlar bazasidagi obyektlar soni 
    num_objects = len(dataset) 
    # Modelning o'rgatuvchi to'plamdagi aniqligi 
    train_accuracy = -kmeans.score(dataset) 
    # Tartibsizlik matritsasini hisoblash 
    cm = confusion_matrix(labels, kmeans.predict(dataset)) 
    # Klasterlash aniqligini baholash 
    cluster_accuracy = np.mean(np.equal(labels, kmeans.predict(dataset))) 
    print("Ma'lumotlar bazasidagi obyektlar soni:", num_objects) 
    print("Modelning o'rgatuvchi to'plamdagi aniqligi:", train_accuracy) 
    print("Tartibsizlik matritsasi:\n", cm) 
    print("Klasterlash aniqligi:", cluster_accuracy) 



    Download 440,77 Kb.




    Download 440,77 Kb.
    Pdf ko'rish

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Zbekiston respublikasi raqamli texnologiyalar vazirligi muhammad al-xorazmiy nomidagi toshkent

    Download 440,77 Kb.
    Pdf ko'rish