From 2388076bb3ed1c47c2220eb30538f6ae80916d78 Mon Sep 17 00:00:00 2001 From: LiTek Date: Mon, 17 Nov 2025 00:19:51 +0000 Subject: [PATCH] =?UTF-8?q?=D0=97=D0=B0=D0=B3=D1=80=D1=83=D0=B7=D0=B8?= =?UTF-8?q?=D0=BB(=D0=B0)=20=D1=84=D0=B0=D0=B9=D0=BB=D1=8B=20=D0=B2=20'lab?= =?UTF-8?q?works/LW2'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- labworks/LW2/lab2 (1).ipynb | 1 + 1 file changed, 1 insertion(+) create mode 100644 labworks/LW2/lab2 (1).ipynb diff --git a/labworks/LW2/lab2 (1).ipynb b/labworks/LW2/lab2 (1).ipynb new file mode 100644 index 0000000..b8f1238 --- /dev/null +++ b/labworks/LW2/lab2 (1).ipynb @@ -0,0 +1 @@ +{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[{"file_id":"1LJYmJ1o1KkUU__3X_nmhfPlRee1xKGxf","timestamp":1763338601926}],"gpuType":"T4","mount_file_id":"1LJYmJ1o1KkUU__3X_nmhfPlRee1xKGxf","authorship_tag":"ABX9TyOfkUaXOPlhcPvhjffzwfVB"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"},"accelerator":"GPU"},"cells":[{"cell_type":"code","source":["# вариант номер 3 - cardio\n","import os\n","os.chdir('/content/drive/MyDrive/Colab Notebooks/is_lab2')"],"metadata":{"id":"H1Tpd_pXNKic"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# импорт модулей\n","import numpy as np\n","import lab02_lib as lib"],"metadata":{"collapsed":true,"id":"LHCp5uF9PJG5"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# генерация датасета\n","data = lib.datagen(3, 3, 1000, 2)"],"metadata":{"collapsed":true,"id":"-J0M844iPZBZ"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# вывод данных и размерности\n","print('Исходные данные:')\n","print(data)\n","print('Размерность данных:')\n","print(data.shape)"],"metadata":{"id":"4p74pZM2Pv7Y","collapsed":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# обучение AE1\n","patience = 300\n","ae1_trained, IRE1, IREth1 = lib.create_fit_save_ae(data,'out/AE1.h5','out/AE1_ire_th.txt',\n","1000, True, patience)"],"metadata":{"collapsed":true,"id":"wgqf8gF2RluN"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Построение графика ошибки реконструкции\n","lib.ire_plot('training', IRE1, IREth1, 'AE1')"],"metadata":{"collapsed":true,"id":"uleuGdNtUO-B"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# обучение AE2\n","ae2_trained, IRE2, IREth2 = lib.create_fit_save_ae(data,'out/AE2.h5','out/AE2_ire_th.txt',\n","3000, True, patience)\n","lib.ire_plot('training', IRE2, IREth2, 'AE2')"],"metadata":{"collapsed":true,"id":"-x71HpLiXY1k"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# построение областей покрытия и границ классов\n","# расчет характеристик качества обучения\n","numb_square = 20\n","xx, yy, Z1 = lib.square_calc(numb_square, data, ae1_trained, IREth1, '1', True)"],"metadata":{"collapsed":true,"id":"QmVJYJW_X3pn"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["numb_square = 20\n","xx, yy, Z2 = lib.square_calc(numb_square, data, ae2_trained, IREth2, '2', True)"],"metadata":{"collapsed":true,"id":"XaPeEWS6eTLa"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# сравнение характеристик качества обучения и областей аппроксимации\n","lib.plot2in1(data, xx, yy, Z1, Z2)"],"metadata":{"collapsed":true,"id":"Xa9xKSDse02C"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# загрузка тестового набора\n","data_test = np.loadtxt('data_test.txt', dtype=float)"],"metadata":{"collapsed":true,"id":"90w92Kqqe5FB"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["print(data_test)"],"metadata":{"collapsed":true,"id":"5pVLRFSthZwU"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# тестирование АE1\n","predicted_labels1, ire1 = lib.predict_ae(ae1_trained, data_test, IREth1)"],"metadata":{"id":"11SIwVrMoSpW"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# тестирование АE1\n","lib.anomaly_detection_ae(predicted_labels1, ire1, IREth1)\n","lib.ire_plot('test', ire1, IREth1, 'AE1')"],"metadata":{"collapsed":true,"id":"y_DpUuG70rFT"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# тестирование АE2\n","predicted_labels2, ire2 = lib.predict_ae(ae2_trained, data_test, IREth2)"],"metadata":{"id":"MpEE4xHR8soP"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# тестирование АE2\n","lib.anomaly_detection_ae(predicted_labels2, ire2, IREth2)\n","lib.ire_plot('test', ire2, IREth2, 'AE2')"],"metadata":{"collapsed":true,"id":"thv9cjm58wge"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# построение областей аппроксимации и точек тестового набора\n","lib.plot2in1_anomaly(data, xx, yy, Z1, Z2, data_test)"],"metadata":{"collapsed":true,"id":"XGx5pH2m8yat"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# задание 2"],"metadata":{"id":"wyM0ZsTS85nI"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# загрузка обчуающей выборки\n","train = np.loadtxt('cardio_train.txt', dtype=float)"],"metadata":{"id":"m1GP2hhaFnmM"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["print('train:\\n', train)\n","print('train.shape:', np.shape(train))"],"metadata":{"collapsed":true,"id":"r2g3UBF9FoX2"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# **kwargs\n","# verbose_every_n_epochs - отображать прогресс каждые N эпох (по умолчанию - 1000)\n","# early_stopping_delta - дельта для ранней остановки (по умолчанию - 0.001)\n","# early_stopping_value = значение для ранней остановки (по умолчанию - 0.0001)\n","\n","from time import time\n","\n","patience = 4000\n","start = time()\n","ae3_v1_trained, IRE3_v1, IREth3_v1 = lib.create_fit_save_ae(train,'out/AE3_V1.h5','out/AE3_v1_ire_th.txt',\n","100000, False, patience, verbose_every_n_epochs = 1000, early_stopping_delta = 0.001)\n","print(\"Время на обучение: \", time() - start)"],"metadata":{"id":"fyf_3nxCF2t-","collapsed":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Построение графика ошибки реконструкции\n","lib.ire_plot('training', IRE3_v1, IREth3_v1, 'AE3_v1')"],"metadata":{"id":"grKMKaYIGDN1","collapsed":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["#загрузка тестовой выборки\n","test = np.loadtxt('cardio_test.txt', dtype=float)\n","print('\\n test:\\n', test)\n","print('test.shape:', np.shape(test))"],"metadata":{"id":"zJLF8jc9giAd","collapsed":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# тестирование АE3\n","predicted_labels3_v1, ire3_v1 = lib.predict_ae(ae3_v1_trained, test, IREth3_v1)\n"],"metadata":{"id":"q5zDhjM1p9fu"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Построение графика ошибки реконструкции\n","lib.ire_plot('test', ire3_v1, IREth3_v1, 'AE3_v1')\n"],"metadata":{"collapsed":true,"id":"kWfJdFmIqtCB"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# тестирование АE2\n","lib.anomaly_detection_ae(predicted_labels3_v1, IRE3_v1, IREth3_v1)\n"],"metadata":{"collapsed":true,"id":"pq4HCuXqqvhu"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# **kwargs\n","# verbose_every_n_epochs - отображать прогресс каждые N эпох (по умолчанию - 1000)\n","# early_stopping_delta - дельта для ранней остановки (по умолчанию - 0.01)\n","# early_stopping_value = значение для ранней остановки (по умолчанию - 0.0001)\n","\n","from time import time\n","\n","patience = 4000\n","start = time()\n","ae3_v2_trained, IRE3_v2, IREth3_v2 = lib.create_fit_save_ae(train,'out/AE3_V2.h5','out/AE3_v2_ire_th.txt',\n","100000, False, patience, early_stopping_delta = 0.001, verbose_every_n_epochs = 1000)\n","print(\"Время на обучение: \", time() - start)"],"metadata":{"collapsed":true,"id":"YfxMr7cQq0WA"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Построение графика ошибки реконструкции\n","lib.ire_plot('training', IRE3_v2, IREth3_v2, 'AE3_v2')"],"metadata":{"collapsed":true,"id":"5ufAXUELrCNn"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# тестирование АE3\n","predicted_labels3_v2, ire3_v2 = lib.predict_ae(ae3_v2_trained, test, IREth3_v2)"],"metadata":{"id":"SFt1gFoau6bH"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Построение графика ошибки реконструкции\n","lib.ire_plot('test', ire3_v2, IREth3_v2, 'AE3_v2')"],"metadata":{"collapsed":true,"id":"AN11aPvBvGYD"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# тестирование АE2\n","lib.anomaly_detection_ae(predicted_labels3_v2, IRE3_v2, IREth3_v2)"],"metadata":{"collapsed":true,"id":"9frRIdvBvIhY"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":[],"metadata":{"id":"2HPJTt52vNgF"},"execution_count":null,"outputs":[]}]} \ No newline at end of file