форкнуто от main/is_dnn
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
16 KiB
16 KiB
import osos.chdir('/content/drive/MyDrive/Colab Notebooks/lab2')# скачивание библиотеки
!wget -N http://uit.mpei.ru/git/main/is_dnn/raw/branch/main/labworks/LW2/lab02_lib.py# скачивание выборок
!wget -N http://uit.mpei.ru/git/main/is_dnn/raw/branch/main/labworks/LW2/data/letter_train.txt!wget -N http://uit.mpei.ru/git/main/is_dnn/raw/branch/main/labworks/LW2/data/letter_test.txt#импортмодулей
import numpy as np
import lab02_lib as libos.getcwd()#генерациядатасета
data=lib.datagen(5,5,1000,2)#вывод данных и размерности
print('Исходные данные:')
print(data)
print('Размерность данных:')
print(data.shape)# обучение AE1
patience= 300
ae1_trained, IRE1, IREth1= lib.create_fit_save_ae(data,'out/AE1.h5','out/AE1_ire_th.txt', 1000, False, patience)#Построение графика ошибки реконструкции
lib.ire_plot('training', IRE1, IREth1, 'AE1')# обучение AE2
ae2_trained, IRE2, IREth2= lib.create_fit_save_ae(data,'out/AE2.h5','out/AE2_ire_th.txt', 3000, False, patience)
lib.ire_plot('training', IRE2, IREth2, 'AE2')#построение областей покрытия и границ классов
#расчет характеристик качестваобучения
numb_square= 20
xx,yy,Z1=lib.square_calc(numb_square,data,ae1_trained,IREth1,'1',True)xx,yy,Z2=lib.square_calc(numb_square,data,ae2_trained,IREth2,'2',True)#сравнение характеристик качества обучения и областей аппроксимации
lib.plot2in1(data,xx,yy,Z1,Z2)#загрузка тестового набора
data_test= np.loadtxt('data_test.txt', dtype=float)#тестирование АE1
predicted_labels1, ire1 = lib.predict_ae(ae1_trained, data_test, IREth1)#тестирование АE1
lib.anomaly_detection_ae(predicted_labels1, ire1, IREth1)
lib.ire_plot('test', ire1, IREth1, 'AE1')#тестирование АE2
predicted_labels2, ire2 = lib.predict_ae(ae2_trained, data_test, IREth2)#тестирование АE2
lib.anomaly_detection_ae(predicted_labels2, ire2, IREth2)
lib.ire_plot('test', ire2, IREth2, 'AE2')#построение областей аппроксимации и точек тестового набора
lib.plot2in1_anomaly(data, xx, yy, Z1, Z2, data_test)#загрузка выборок
train= np.loadtxt('letter_train.txt', dtype=float)
test = np.loadtxt('letter_test.txt', dtype=float)# обучение AE3
patience=5000
ae3_trained, IRE3, IREth3= lib.create_fit_save_ae(train,'out/AE3.h5','out/AE3_ire_th.txt', 100000, False, patience)
lib.ire_plot('training', IRE3, IREth3, 'AE3')#тестирование АE3
predicted_labels3, ire3 = lib.predict_ae(ae3_trained, test, IREth3)#тестированиеАE3
lib.anomaly_detection_ae(predicted_labels3, ire3, IREth3)
lib.ire_plot('test', ire3, IREth3, 'AE3')# обучение AE3.2
patience=5000
ae32_trained, IRE32, IREth32= lib.create_fit_save_ae(train,'out/AE32.h5','out/AE32_ire_th.txt', 100000, False, patience)
lib.ire_plot('training', IRE32, IREth32, 'AE32')#тестирование АE32
predicted_labels32, ire32 = lib.predict_ae(ae32_trained, test, IREth32)#тестированиеАE32
lib.anomaly_detection_ae(predicted_labels32, ire32, IREth32)
lib.ire_plot('test', ire32, IREth32, 'AE32')# обучение AE3.3
patience=5000
ae33_trained, IRE33, IREth33= lib.create_fit_save_ae(train,'out/AE33.h5','out/AE33_ire_th.txt', 100000, False, patience)
lib.ire_plot('training', IRE33, IREth33, 'AE33')#тестирование АE33
predicted_labels33, ire33 = lib.predict_ae(ae33_trained, test, IREth33)#тестированиеАE33
lib.anomaly_detection_ae(predicted_labels33, ire33, IREth33)
lib.ire_plot('test', ire33, IREth33, 'AE33')# обучение AE3.4
patience=5000
ae34_trained, IRE34, IREth34=lib.create_fit_save_ae(train,'out/AE34.h5','out/AE34_ire_th.txt', 100000, False, patience)
lib.ire_plot('training', IRE34, IREth34, 'AE34')#тестированиеАE34
lib.anomaly_detection_ae(predicted_labels34, ire34, IREth34)
lib.ire_plot('test', ire34, IREth34, 'AE34')#тестирование АE34
predicted_labels34, ire34 = lib.predict_ae(ae34_trained, test, IREth34)