commit 6faf2694e6ec4d128dee6a31777b02fa65dc5532 Author: Jiga228 Date: Mon Jul 13 23:23:11 2026 +0700 Init diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8ec79ac --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.idea/ +x64/ diff --git a/NeuronsNetworkBase.h b/NeuronsNetworkBase.h new file mode 100644 index 0000000..b380d91 --- /dev/null +++ b/NeuronsNetworkBase.h @@ -0,0 +1,36 @@ +#pragma once + +#include +#include + +template +class NeuronsNetworkBase +{ + double rate_train_ = 0.01; + std::vector masses; + +protected: + virtual double activation(double x) = 0; + + double& operator[](size_t index) + { + return masses[index]; + } + +public: + NeuronsNetworkBase(size_t count_neurons, double rate_train): + rate_train_(rate_train) + { + masses.resize(count_neurons); + } + virtual ~NeuronsNetworkBase() = default; + + virtual void train(double error, const T& data) = 0; + + virtual double call(const T& data) = 0; + + double get_rate_train() const + { + return rate_train_; + } +}; diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..b79bfaf --- /dev/null +++ b/README.txt @@ -0,0 +1,10 @@ +# TitanicAI +Эта неросеть предсказывает смерть пасажиров Титаника с вероятностью 0.76 + +В файле train.txt находится ассет для обучет + +В файле TitanicAI.cpp константа count_train_items указыает на количество ассетов для обучения. Остальные пойдут на тесты. +Скорость обучения решулируется во втором параметре конструктора + +Вектора в ассете: +Survived|Pclass|Sex|Age|Relatives|Fare|Embarked diff --git a/TitanicAI.cpp b/TitanicAI.cpp new file mode 100644 index 0000000..33beea0 --- /dev/null +++ b/TitanicAI.cpp @@ -0,0 +1,108 @@ +#include +#include +#include + +#include "NeuronsNetworkBase.h" + +using data_item = std::array; + +class TitanicAI : public NeuronsNetworkBase +{ + constexpr static size_t count_neurons = 6; +protected: + double activation(double x) override + { + return 1/(1+exp(-x)); + } + +public: + TitanicAI() : NeuronsNetworkBase(count_neurons, 0.01) + {} + + double call(const data_item& data) override + { + double sum = 0; + for (size_t i = 0; i < count_neurons; ++i) + { + sum += (*this)[i] * data[i + 1]; + } + + return activation(sum); + } + + void train(double error, const data_item& data) override + { + for (size_t i = 0; i < count_neurons; ++i) + { + (*this)[i] += get_rate_train() * error * data[i + 1]; + } + } + + void print_masses() + { + for (size_t i = 0; i < count_neurons; ++i) + { + std::cout << (*this)[i] << " "; + } + std::cout << "\n"; + } +}; + +constexpr size_t count_train_items = 700; +std::vector train_data; + +int main(int argc, char* argv[]) +{ + TitanicAI ai; + std::ifstream file("train.txt"); + + while (file.eof() == false) + { + data_item item{}; + + std::string vec; + file >> vec; + if (vec.empty() == false) + item[0] = std::stod(vec); + file >> vec; + if (vec.empty() == false) + item[1] = std::stod(vec); + file >> vec; + if (vec.empty() == false) + item[2] = std::stod(vec); + file >> vec; + if (vec.empty() == false) + item[3] = std::stod(vec); + file >> vec; + if (vec.empty() == false) + item[4] = std::stod(vec); + file >> vec; + if (vec.empty() == false) + item[5] = std::stod(vec); + if (vec.empty() == false) + item[6] = std::stod(vec); + + train_data.push_back(item); + } + + for (size_t i = 0; i < count_train_items; ++i) + { + ai.train(train_data[i][0] - ai.call(train_data[i]), train_data[i]); + } + + size_t score = 0; + const size_t max_score = train_data.size() - count_train_items; + constexpr double delta = 0.001; + for (size_t i = count_train_items + 1; i < train_data.size(); ++i) + { + double activate_result = ai.call(train_data[i]); + bool is_dead = activate_result + delta > 0.5; + if (is_dead == static_cast(train_data[i][0])) + ++score; + } + + std::cout << "Accuracy: " << score << '/' << max_score << " (float: " << (static_cast(score) / static_cast(max_score)) << ")\n"; + std::cout << "Masses: "; ai.print_masses(); + + return 0; +} diff --git a/TitanicAI.slnx b/TitanicAI.slnx new file mode 100644 index 0000000..8d894c7 --- /dev/null +++ b/TitanicAI.slnx @@ -0,0 +1,7 @@ + + + + + + + diff --git a/TitanicAI.vcxproj b/TitanicAI.vcxproj new file mode 100644 index 0000000..74ee310 --- /dev/null +++ b/TitanicAI.vcxproj @@ -0,0 +1,165 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 15.0 + {733EC31E-B31D-4A78-B1E4-EAA7AAA4B909} + Win32Proj + TitanicAI + 10.0.26100.0 + + + + x64 + + + Application + true + v145 + Unicode + + + Application + false + v145 + true + Unicode + + + Application + true + v145 + Unicode + + + Application + false + v145 + true + Unicode + + + + + + + + + + + + + + + + + + + + + true + + + true + + + false + + + false + + + + NotUsing + Level3 + Disabled + true + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + pch.h + + + Console + true + + + + + NotUsing + Level3 + Disabled + true + _DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + pch.h + + + Console + true + + + + + NotUsing + Level3 + MaxSpeed + true + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + pch.h + + + Console + true + true + true + + + + + NotUsing + Level3 + MaxSpeed + true + true + true + NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + pch.h + + + Console + true + true + true + + + + + + + + + + + + \ No newline at end of file diff --git a/TitanicAI.vcxproj.filters b/TitanicAI.vcxproj.filters new file mode 100644 index 0000000..cabbbc7 --- /dev/null +++ b/TitanicAI.vcxproj.filters @@ -0,0 +1,22 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Source Files + + + \ No newline at end of file diff --git a/train.txt b/train.txt new file mode 100644 index 0000000..1cb33e1 --- /dev/null +++ b/train.txt @@ -0,0 +1,889 @@ +0 3 1 22 1 7.25 2 +1 1 0 38 1 71.2833 1 +1 3 0 26 0 7.925 2 +1 1 0 35 1 53.1 2 +0 3 1 35 0 8.05 2 +0 3 1 28 0 8.4583 3 +0 1 1 54 0 51.8625 2 +0 3 1 2 4 21.075 2 +1 3 0 27 2 11.1333 2 +1 2 0 14 1 30.0708 1 +1 3 0 4 2 16.7 2 +1 1 0 58 0 26.55 2 +0 3 1 20 0 8.05 2 +0 3 1 39 6 31.275 2 +0 3 0 14 0 7.8542 2 +1 2 0 55 0 16 2 +0 3 1 2 5 29.125 3 +1 2 1 28 0 13 2 +0 3 0 31 1 18 2 +1 3 0 28 0 7.225 1 +0 2 1 35 0 26 2 +1 2 1 34 0 13 2 +1 3 0 15 0 8.0292 3 +1 1 1 28 0 35.5 2 +0 3 0 8 4 21.075 2 +1 3 0 38 6 31.3875 2 +0 3 1 28 0 7.225 1 +0 1 1 19 5 263 2 +1 3 0 28 0 7.8792 3 +0 3 1 28 0 7.8958 2 +0 1 1 40 0 27.7208 1 +1 1 0 28 1 146.5208 1 +1 3 0 28 0 7.75 3 +0 2 1 66 0 10.5 2 +0 1 1 28 1 82.1708 1 +0 1 1 42 1 52 2 +1 3 1 28 0 7.2292 1 +0 3 1 21 0 8.05 2 +0 3 0 18 2 18 2 +1 3 0 14 1 11.2417 1 +0 3 0 40 1 9.475 2 +0 2 0 27 1 21 2 +0 3 1 28 0 7.8958 1 +1 2 0 3 3 41.5792 1 +1 3 0 19 0 7.8792 3 +0 3 1 28 0 8.05 2 +0 3 1 28 1 15.5 3 +1 3 0 28 0 7.75 3 +0 3 1 28 2 21.6792 1 +0 3 0 18 1 17.8 2 +0 3 1 7 5 39.6875 2 +0 3 1 21 0 7.8 2 +1 1 0 49 1 76.7292 1 +1 2 0 29 1 26 2 +0 1 1 65 1 61.9792 1 +1 1 1 28 0 35.5 2 +1 2 0 21 0 10.5 2 +0 3 1 28.5 0 7.2292 1 +1 2 0 5 3 27.75 2 +0 3 1 11 7 46.9 2 +0 3 1 22 0 7.2292 1 +0 1 2 3 4 5 6 +0 3 1 4 5 27.9 2 +0 1 1 28 0 27.7208 1 +1 3 1 28 2 15.2458 1 +1 2 0 29 0 10.5 2 +0 3 1 19 0 8.1583 2 +1 3 0 17 6 7.925 2 +0 3 1 26 2 8.6625 2 +0 2 1 32 0 10.5 2 +0 3 0 16 7 46.9 2 +0 2 1 21 0 73.5 2 +0 3 1 26 1 14.4542 1 +1 3 1 32 0 56.4958 2 +0 3 1 25 0 7.65 2 +0 3 1 28 0 7.8958 2 +0 3 1 28 0 8.05 2 +1 2 1 0.83 2 29 2 +1 3 0 30 0 12.475 2 +0 3 1 22 0 9 2 +1 3 1 29 0 9.5 2 +1 3 0 28 0 7.7875 3 +0 1 1 28 0 47.1 2 +1 2 0 17 0 10.5 2 +1 3 0 33 3 15.85 2 +0 3 1 16 4 34.375 2 +0 3 1 28 0 8.05 2 +1 1 0 23 5 263 2 +0 3 1 24 0 8.05 2 +0 3 1 29 0 8.05 2 +0 3 1 20 0 7.8542 2 +0 1 1 46 1 61.175 2 +0 3 1 26 3 20.575 2 +0 3 1 59 0 7.25 2 +0 3 1 28 0 8.05 2 +0 1 1 71 0 34.6542 1 +1 1 1 23 1 63.3583 1 +1 2 0 34 1 23 2 +0 2 1 34 1 26 2 +0 3 0 28 0 7.8958 2 +0 3 1 28 0 7.8958 2 +0 1 1 21 1 77.2875 2 +0 3 1 33 0 8.6542 2 +0 3 1 37 2 7.925 2 +0 3 1 28 0 7.8958 2 +1 3 0 21 0 7.65 2 +1 3 1 28 0 7.775 2 +0 3 1 38 0 7.8958 2 +1 3 0 28 1 24.15 3 +0 1 1 47 0 52 2 +0 3 0 14.5 1 14.4542 1 +0 3 1 22 0 8.05 2 +0 3 0 20 1 9.825 2 +0 3 0 17 0 14.4583 1 +0 3 1 21 0 7.925 2 +0 3 1 70.5 0 7.75 3 +0 2 1 29 1 21 2 +0 1 1 24 1 247.5208 1 +0 3 0 2 6 31.275 2 +0 2 1 21 2 73.5 2 +0 3 1 28 0 8.05 2 +0 2 1 32.5 1 30.0708 1 +1 2 0 32.5 0 13 2 +0 1 1 54 1 77.2875 2 +1 3 1 12 1 11.2417 1 +0 3 1 28 0 7.75 3 +1 3 1 24 0 7.1417 2 +1 3 0 28 2 22.3583 1 +0 3 1 45 0 6.975 2 +0 3 1 33 0 7.8958 1 +0 3 1 20 0 7.05 2 +0 3 0 47 1 14.5 2 +1 2 0 29 1 26 2 +0 2 1 25 0 13 2 +0 2 1 23 0 15.0458 1 +1 1 0 19 2 26.2833 2 +0 1 1 37 1 53.1 2 +0 3 1 16 0 9.2167 2 +0 1 1 24 0 79.2 1 +0 3 0 28 2 15.2458 1 +1 3 0 22 0 7.75 2 +1 3 0 24 1 15.85 2 +0 3 1 19 0 6.75 3 +0 2 1 18 0 11.5 2 +0 2 1 19 2 36.75 2 +1 3 1 27 0 7.7958 2 +0 3 0 9 4 34.375 2 +0 2 1 36.5 2 26 2 +0 2 1 42 0 13 2 +0 2 1 51 0 12.525 2 +1 1 0 22 1 66.6 2 +0 3 1 55.5 0 8.05 2 +0 3 1 40.5 2 14.5 2 +0 3 1 28 0 7.3125 2 +0 1 1 51 1 61.3792 1 +1 3 0 16 0 7.7333 3 +0 3 1 30 0 8.05 2 +0 3 1 28 0 8.6625 2 +0 3 1 28 10 69.55 2 +0 3 1 44 1 16.1 2 +1 2 0 40 0 15.75 2 +0 3 1 26 0 7.775 2 +0 3 1 17 0 8.6625 2 +0 3 1 1 5 39.6875 2 +1 3 1 9 2 20.525 2 +1 1 0 28 1 55 2 +0 3 0 45 5 27.9 2 +0 1 1 28 0 25.925 2 +0 3 1 28 0 56.4958 2 +0 1 1 61 0 33.5 2 +0 3 1 4 5 29.125 3 +1 3 0 1 2 11.1333 2 +0 3 1 21 0 7.925 2 +0 1 1 56 0 30.6958 1 +0 3 1 18 2 7.8542 2 +0 3 1 28 4 25.4667 2 +0 1 0 50 0 28.7125 1 +0 2 1 30 0 13 2 +0 3 1 36 0 0 2 +0 3 0 28 10 69.55 2 +0 2 1 28 0 15.05 1 +0 3 1 9 6 31.3875 2 +1 2 1 1 3 39 2 +1 3 0 4 2 22.025 2 +0 1 1 28 0 50 2 +1 3 0 28 1 15.5 3 +1 1 1 45 0 26.55 2 +0 3 1 40 2 15.5 3 +0 3 1 36 0 7.8958 2 +1 2 0 32 0 13 2 +0 2 1 19 0 13 2 +1 3 0 19 1 7.8542 2 +1 2 1 3 2 26 2 +1 1 0 44 0 27.7208 1 +1 1 0 58 0 146.5208 1 +0 3 1 28 0 7.75 3 +0 3 1 42 1 8.4042 2 +1 3 0 28 0 7.75 3 +0 2 0 24 0 13 2 +0 3 1 28 0 9.5 2 +0 3 1 28 10 69.55 2 +0 3 1 34 0 6.4958 2 +0 3 1 45.5 0 7.225 1 +1 3 1 18 0 8.05 2 +0 3 0 2 1 10.4625 2 +0 3 1 32 1 15.85 2 +1 3 1 26 0 18.7875 1 +1 3 0 16 0 7.75 3 +1 1 1 40 0 31 1 +0 3 1 24 0 7.05 2 +1 2 0 35 0 21 2 +0 3 1 22 0 7.25 2 +0 2 1 30 0 13 2 +0 3 1 28 1 7.75 3 +1 1 0 31 1 113.275 1 +1 3 0 27 0 7.925 2 +0 2 1 42 1 27 2 +1 1 0 32 0 76.2917 1 +0 2 1 30 0 10.5 2 +1 3 1 16 0 8.05 2 +0 2 1 27 0 13 2 +0 3 1 51 0 8.05 2 +0 3 1 28 0 7.8958 2 +1 1 1 38 1 90 2 +0 3 1 22 0 9.35 2 +1 2 1 19 0 10.5 2 +0 3 1 20.5 0 7.25 2 +0 2 1 18 0 13 2 +0 3 0 28 4 25.4667 2 +1 1 0 35 1 83.475 2 +0 3 1 29 0 7.775 2 +0 2 1 59 0 13.5 2 +1 3 0 5 6 31.3875 2 +0 2 1 24 0 10.5 2 +0 3 0 28 0 7.55 2 +0 2 1 44 1 26 2 +1 2 0 8 2 26.25 2 +0 2 1 19 0 10.5 2 +0 2 1 33 0 12.275 2 +0 3 0 28 1 14.4542 1 +1 3 0 28 1 15.5 3 +0 2 1 29 0 10.5 2 +0 3 1 22 0 7.125 2 +0 3 1 30 0 7.225 1 +0 1 1 44 2 90 3 +0 3 0 25 0 7.775 2 +1 2 0 24 2 14.5 2 +1 1 1 37 2 52.5542 2 +0 2 1 54 1 26 2 +0 3 1 28 0 7.25 2 +0 3 0 29 2 10.4625 2 +0 1 1 62 0 26.55 2 +0 3 1 30 1 16.1 2 +0 3 0 41 2 20.2125 2 +1 3 0 29 2 15.2458 1 +1 1 0 28 0 79.2 1 +1 1 0 30 0 86.5 2 +1 1 0 35 0 512.3292 1 +1 2 0 50 1 26 2 +0 3 1 28 0 7.75 3 +1 3 1 3 6 31.3875 2 +0 1 1 52 2 79.65 2 +0 1 1 40 0 0 2 +0 3 0 28 0 7.75 3 +0 2 1 36 0 10.5 2 +0 3 1 16 5 39.6875 2 +1 3 1 25 1 7.775 2 +1 1 0 58 1 153.4625 2 +1 1 0 35 0 135.6333 2 +0 1 1 28 0 31 2 +1 3 1 25 0 0 2 +1 2 0 41 1 19.5 2 +0 1 1 37 1 29.7 1 +1 3 0 28 0 7.75 3 +1 1 0 63 1 77.9583 2 +0 3 0 45 0 7.75 2 +0 2 1 28 0 0 2 +0 3 1 7 5 29.125 3 +1 3 0 35 2 20.25 2 +0 3 1 65 0 7.75 3 +0 3 1 28 0 7.8542 2 +0 3 1 16 0 9.5 2 +1 3 1 19 0 8.05 2 +0 1 1 28 0 26 2 +0 3 1 33 0 8.6625 1 +1 3 1 30 0 9.5 2 +0 3 1 22 0 7.8958 2 +1 2 1 42 0 13 2 +1 3 0 22 0 7.75 3 +1 1 0 26 0 78.85 2 +1 1 0 19 1 91.0792 1 +0 2 1 36 0 12.875 1 +0 3 0 24 0 8.85 2 +0 3 1 24 0 7.8958 2 +0 1 1 28 0 27.7208 1 +0 3 1 23.5 0 7.2292 1 +0 1 0 2 3 151.55 2 +1 1 1 28 0 30.5 2 +1 1 0 50 1 247.5208 1 +1 3 0 28 0 7.75 3 +1 3 1 28 2 23.25 3 +0 3 1 19 0 0 2 +1 2 0 28 0 12.35 3 +0 3 1 28 0 8.05 2 +1 1 1 0.92 3 151.55 2 +1 1 0 28 0 110.8833 1 +1 1 0 17 1 108.9 1 +0 2 1 30 1 24 1 +1 1 0 30 0 56.9292 1 +1 1 0 24 0 83.1583 1 +1 1 0 18 4 262.375 1 +0 2 0 26 2 26 2 +0 3 1 28 0 7.8958 2 +0 2 1 43 2 26.25 2 +1 3 0 26 0 7.8542 2 +1 2 0 24 1 26 2 +0 2 1 54 0 14 2 +1 1 0 31 2 164.8667 2 +1 1 0 40 2 134.5 1 +0 3 1 22 0 7.25 2 +0 3 1 27 0 7.8958 2 +1 2 0 30 0 12.35 3 +1 2 0 22 2 29 2 +0 3 1 28 10 69.55 2 +1 1 0 36 0 135.6333 1 +0 3 1 61 0 6.2375 2 +1 2 0 36 0 13 2 +1 3 0 31 2 20.525 2 +1 1 0 16 1 57.9792 1 +1 3 0 28 2 23.25 3 +0 1 1 45.5 0 28.5 2 +0 1 1 38 1 153.4625 2 +0 3 1 16 2 18 2 +1 1 0 28 1 133.65 2 +0 3 1 28 0 7.8958 2 +0 1 1 29 1 66.6 2 +1 1 0 41 0 134.5 1 +1 3 1 45 0 8.05 2 +0 1 1 45 0 35.5 2 +1 2 1 2 2 26 2 +1 1 0 24 5 263 2 +0 2 1 28 0 13 2 +0 2 1 25 0 13 2 +0 2 1 36 0 13 2 +1 2 0 24 0 13 2 +1 2 0 40 0 13 2 +1 3 0 28 1 16.1 2 +1 3 1 3 2 15.9 2 +0 3 1 42 0 8.6625 2 +0 3 1 23 0 9.225 2 +0 1 1 28 0 35 2 +0 3 1 15 2 7.2292 1 +0 3 1 25 1 17.8 2 +0 3 1 28 0 7.225 1 +0 3 1 28 0 9.5 2 +1 1 0 22 1 55 2 +0 2 0 38 0 13 2 +1 3 0 28 0 7.8792 3 +1 3 0 28 0 7.8792 3 +0 3 1 40 5 27.9 2 +0 2 1 29 1 27.7208 1 +0 3 0 45 1 14.4542 1 +0 3 1 35 0 7.05 2 +0 3 1 28 1 15.5 3 +0 3 1 30 0 7.25 2 +1 1 0 60 1 75.25 1 +1 3 0 28 0 7.2292 1 +1 3 0 28 0 7.75 3 +1 1 0 24 0 69.3 1 +1 1 1 25 1 55.4417 1 +0 3 1 18 1 6.4958 2 +0 3 1 19 0 8.05 2 +0 1 1 22 0 135.6333 1 +0 3 0 3 4 21.075 2 +1 1 0 28 1 82.1708 1 +1 3 0 22 0 7.25 2 +0 1 1 27 2 211.5 1 +0 3 1 20 0 4.0125 1 +0 3 1 19 0 7.775 2 +1 1 0 42 0 227.525 1 +1 3 0 1 2 15.7417 1 +0 3 1 32 0 7.925 2 +1 1 0 35 1 52 2 +0 3 1 28 0 7.8958 2 +0 2 1 18 0 73.5 2 +0 3 1 1 7 46.9 2 +1 2 0 36 0 13 2 +0 3 1 28 0 7.7292 3 +1 2 0 17 0 12 1 +1 1 1 36 3 120 2 +1 3 1 21 0 7.7958 2 +0 3 1 28 2 7.925 2 +1 1 0 23 1 113.275 1 +1 3 0 24 2 16.7 2 +0 3 1 22 0 7.7958 2 +0 3 0 31 0 7.8542 2 +0 2 1 46 0 26 2 +0 2 1 23 0 10.5 2 +1 2 0 28 0 12.65 2 +1 3 1 39 0 7.925 2 +0 3 1 26 0 8.05 2 +0 3 0 21 1 9.825 2 +0 3 1 28 1 15.85 2 +0 3 0 20 0 8.6625 2 +0 2 1 34 1 21 2 +0 3 1 51 0 7.75 2 +1 2 1 3 2 18.75 2 +0 3 1 21 0 7.775 2 +0 3 0 28 4 25.4667 2 +0 3 1 28 0 7.8958 2 +0 3 1 28 0 6.8583 3 +1 1 0 33 1 90 3 +0 2 1 28 0 0 2 +1 3 1 44 0 7.925 2 +0 3 0 28 0 8.05 2 +1 2 0 34 2 32.5 2 +1 2 0 18 2 13 2 +0 2 1 30 0 13 2 +0 3 0 10 2 24.15 2 +0 3 1 28 0 7.8958 1 +0 3 1 21 0 7.7333 3 +0 3 1 29 0 7.875 2 +0 3 0 28 2 14.4 2 +0 3 1 18 2 20.2125 2 +0 3 1 28 0 7.25 2 +1 2 0 28 1 26 2 +1 2 0 19 0 26 2 +0 3 1 28 0 7.75 3 +1 3 1 32 0 8.05 2 +1 1 1 28 0 26.55 2 +1 3 0 28 1 16.1 2 +1 2 0 42 1 26 2 +0 3 1 17 0 7.125 2 +0 1 1 50 1 55.9 2 +1 1 0 14 3 120 2 +0 3 0 21 4 34.375 2 +1 2 0 24 5 18.75 2 +0 1 1 64 5 263 2 +0 2 1 31 0 10.5 2 +1 2 0 45 2 26.25 2 +0 3 1 20 0 9.5 2 +0 3 1 25 1 7.775 2 +1 2 0 28 0 13 2 +1 3 1 28 0 8.1125 2 +1 1 1 4 2 81.8583 2 +1 2 0 13 1 19.5 2 +1 1 1 34 0 26.55 2 +1 3 0 5 3 19.2583 1 +1 1 1 52 0 30.5 2 +0 2 1 36 3 27.75 2 +0 3 1 28 1 19.9667 2 +0 1 1 30 0 27.75 1 +1 1 1 49 1 89.1042 1 +0 3 1 28 0 8.05 2 +1 3 1 29 0 7.8958 1 +0 1 1 65 0 26.55 2 +1 1 0 28 1 51.8625 2 +1 2 0 50 0 10.5 2 +0 3 1 28 0 7.75 3 +1 1 1 48 0 26.55 2 +0 3 1 34 0 8.05 2 +0 1 1 47 0 38.5 2 +0 2 1 48 0 13 2 +0 3 1 28 0 8.05 2 +0 3 1 38 0 7.05 2 +0 2 1 28 0 0 2 +0 1 1 56 0 26.55 2 +0 3 1 28 0 7.725 3 +1 3 0 0.75 3 19.2583 1 +0 3 1 28 0 7.25 2 +0 3 1 38 0 8.6625 2 +1 2 0 33 3 27.75 2 +1 2 0 23 0 13.7917 1 +0 3 0 22 0 9.8375 2 +0 1 1 28 0 52 2 +0 2 1 34 1 21 2 +0 3 1 29 1 7.0458 2 +0 3 1 22 0 7.5208 2 +1 3 0 2 1 12.2875 2 +0 3 1 9 7 46.9 2 +0 2 1 28 0 0 2 +0 3 1 50 0 8.05 2 +1 3 0 63 0 9.5875 2 +1 1 1 25 1 91.0792 1 +0 3 0 28 4 25.4667 2 +1 1 0 35 1 90 2 +0 1 1 58 0 29.7 1 +0 3 1 30 0 8.05 2 +1 3 1 9 2 15.9 2 +0 3 1 28 1 19.9667 2 +0 3 1 21 0 7.25 2 +0 1 1 55 0 30.5 2 +0 1 1 71 0 49.5042 1 +0 3 1 21 0 8.05 2 +0 3 1 28 0 14.4583 1 +1 1 0 54 1 78.2667 1 +0 3 1 28 0 15.1 2 +0 1 0 25 3 151.55 2 +0 3 1 24 0 7.7958 2 +0 3 1 17 0 8.6625 2 +0 3 0 21 0 7.75 3 +0 3 0 28 0 7.6292 3 +0 3 0 37 0 9.5875 2 +1 1 0 16 0 86.5 2 +0 1 1 18 1 108.9 1 +1 2 0 33 2 26 2 +1 1 1 28 0 26.55 2 +0 3 1 28 0 22.525 2 +1 3 1 26 0 56.4958 2 +1 3 1 29 0 7.75 3 +0 3 1 28 0 8.05 2 +1 1 1 36 0 26.2875 2 +1 1 0 54 1 59.4 1 +0 3 1 24 0 7.4958 2 +0 1 1 47 0 34.0208 2 +1 2 0 34 0 10.5 2 +0 3 1 28 0 24.15 3 +1 2 0 36 1 26 2 +0 3 1 32 0 7.8958 2 +1 1 0 30 0 93.5 2 +0 3 1 22 0 7.8958 2 +0 3 1 28 0 7.225 1 +1 1 0 44 1 57.9792 1 +0 3 1 28 0 7.2292 1 +0 3 1 40.5 0 7.75 3 +1 2 0 50 0 10.5 2 +0 1 1 28 0 221.7792 2 +0 3 1 39 0 7.925 2 +0 2 1 23 3 11.5 2 +1 2 0 2 2 26 2 +0 3 1 28 0 7.2292 1 +0 3 1 17 2 7.2292 1 +1 3 0 28 2 22.3583 1 +0 3 0 30 0 8.6625 2 +1 2 0 7 2 26.25 2 +0 1 1 45 0 26.55 2 +1 1 0 30 0 106.425 1 +0 3 1 28 0 14.5 2 +1 1 0 22 2 49.5 1 +1 1 0 36 2 71 2 +0 3 0 9 6 31.275 2 +0 3 0 11 6 31.275 2 +1 2 1 32 1 26 2 +0 1 1 50 1 106.425 1 +0 1 1 64 0 26 2 +1 2 0 19 1 26 2 +1 2 1 28 0 13.8625 1 +0 3 1 33 2 20.525 2 +1 2 1 8 2 36.75 2 +1 1 1 17 2 110.8833 1 +0 2 1 27 0 26 2 +0 3 1 28 0 7.8292 3 +1 3 1 22 0 7.225 1 +1 3 0 22 0 7.775 2 +0 1 1 62 0 26.55 2 +1 1 0 48 1 39.6 1 +0 1 1 28 0 227.525 1 +1 1 0 39 2 79.65 2 +1 3 0 36 1 17.4 2 +0 3 1 28 0 7.75 3 +0 3 1 40 0 7.8958 2 +0 2 1 28 0 13.5 2 +0 3 1 28 0 8.05 2 +0 3 0 28 0 8.05 2 +0 3 1 24 2 24.15 2 +0 3 1 19 0 7.8958 2 +0 3 0 29 4 21.075 2 +0 3 1 28 0 7.2292 1 +1 3 1 32 0 7.8542 2 +1 2 1 62 0 10.5 2 +1 1 0 53 2 51.4792 2 +1 1 1 36 0 26.3875 2 +1 3 0 28 0 7.75 3 +0 3 1 16 0 8.05 2 +0 3 1 19 0 14.5 2 +1 2 0 34 0 13 2 +1 1 0 39 1 55.9 2 +0 3 0 28 1 14.4583 1 +1 3 1 32 0 7.925 2 +1 2 0 25 2 30 2 +1 1 0 39 2 110.8833 1 +0 2 1 54 0 26 2 +0 1 1 36 0 40.125 1 +0 3 1 28 0 8.7125 1 +1 1 0 18 2 79.65 2 +0 2 1 47 0 15 2 +1 1 1 60 2 79.2 1 +0 3 1 22 0 8.05 2 +0 3 1 28 0 8.05 2 +0 3 1 35 0 7.125 2 +1 1 0 52 1 78.2667 1 +0 3 1 47 0 7.25 2 +0 3 0 28 2 7.75 3 +0 2 1 37 1 26 2 +0 3 1 36 2 24.15 2 +1 2 0 28 0 33 2 +0 3 1 49 0 0 2 +0 3 1 28 0 7.225 1 +1 1 1 49 1 56.9292 1 +1 2 0 24 3 27 2 +0 3 1 28 0 7.8958 2 +0 1 1 28 0 42.4 2 +0 3 1 44 0 8.05 2 +1 1 1 35 0 26.55 1 +0 3 1 36 1 15.55 2 +0 3 1 30 0 7.8958 2 +1 1 1 27 0 30.5 2 +1 2 0 22 3 41.5792 1 +1 1 0 40 0 153.4625 2 +0 3 0 39 6 31.275 2 +0 3 1 28 0 7.05 2 +1 3 0 28 1 15.5 3 +0 3 1 28 0 7.75 3 +0 3 1 35 0 8.05 2 +1 2 0 24 3 65 2 +0 3 1 34 2 14.4 2 +0 3 0 26 1 16.1 2 +1 2 0 4 3 39 2 +0 2 1 26 0 10.5 2 +0 3 1 27 1 14.4542 1 +1 1 1 42 1 52.5542 2 +1 3 1 20 2 15.7417 1 +0 3 1 21 0 7.8542 2 +0 3 1 21 0 16.1 2 +0 1 1 61 0 32.3208 2 +0 2 1 57 0 12.35 3 +1 1 0 21 0 77.9583 2 +0 3 1 26 0 7.8958 2 +0 3 1 28 0 7.7333 3 +1 1 1 80 0 30 2 +0 3 1 51 0 7.0542 2 +1 1 1 32 0 30.5 1 +0 1 1 28 0 0 2 +0 3 0 9 5 27.9 2 +1 2 0 28 0 13 2 +0 3 1 32 0 7.925 2 +0 2 1 31 2 26.25 2 +0 3 0 41 5 39.6875 2 +0 3 1 28 1 16.1 2 +0 3 1 20 0 7.8542 2 +1 1 0 24 0 69.3 1 +0 3 0 2 5 27.9 2 +1 3 1 28 0 56.4958 2 +1 3 0 0.75 3 19.2583 1 +1 1 1 48 1 76.7292 1 +0 3 1 19 0 7.8958 2 +1 1 1 56 0 35.5 1 +0 3 1 28 0 7.55 2 +1 3 0 23 0 7.55 2 +0 3 1 28 0 7.8958 2 +1 2 0 18 1 23 2 +0 3 1 21 0 8.4333 2 +1 3 0 28 0 7.8292 3 +0 3 0 18 0 6.75 3 +0 2 1 24 2 73.5 2 +0 3 1 28 0 7.8958 2 +0 3 0 32 2 15.5 3 +0 2 1 23 0 13 2 +0 1 1 58 2 113.275 1 +1 1 1 50 2 133.65 2 +0 3 1 40 0 7.225 1 +0 1 1 47 0 25.5875 2 +0 3 1 36 0 7.4958 2 +1 3 1 20 1 7.925 2 +0 2 1 32 2 73.5 2 +0 2 1 25 0 13 2 +0 3 1 28 0 7.775 2 +0 3 1 43 0 8.05 2 +1 1 0 28 1 52 2 +1 2 0 40 2 39 2 +0 1 1 31 1 52 2 +0 2 1 70 0 10.5 2 +1 2 1 31 0 13 2 +0 2 1 28 0 0 2 +0 3 1 18 0 7.775 2 +0 3 1 24.5 0 8.05 2 +1 3 0 18 0 9.8417 2 +0 3 0 43 7 46.9 2 +1 1 1 36 1 512.3292 1 +0 3 0 28 0 8.1375 3 +1 1 1 27 0 76.7292 1 +0 3 1 20 0 9.225 2 +0 3 1 14 7 46.9 2 +0 2 1 60 2 39 2 +0 2 1 25 3 41.5792 1 +0 3 1 14 5 39.6875 2 +0 3 1 19 0 10.1708 2 +0 3 1 18 0 7.7958 2 +1 1 0 15 1 211.3375 2 +1 1 1 31 1 57 2 +1 3 0 4 1 13.4167 1 +1 3 1 28 0 56.4958 2 +0 3 1 25 0 7.225 1 +0 1 1 60 0 26.55 2 +0 2 1 52 0 13.5 2 +0 3 1 44 0 8.05 2 +1 3 0 28 0 7.7333 3 +0 1 1 49 2 110.8833 1 +0 3 1 42 0 7.65 2 +1 1 0 18 1 227.525 1 +1 1 1 35 0 26.2875 2 +0 3 0 18 1 14.4542 1 +0 3 1 25 0 7.7417 3 +0 3 1 26 1 7.8542 2 +0 2 1 39 0 26 2 +1 2 0 45 0 13.5 2 +1 1 1 42 0 26.2875 2 +1 1 0 22 0 151.55 2 +1 3 1 28 2 15.2458 1 +1 1 0 24 0 49.5042 1 +0 1 1 28 0 26.55 2 +1 1 1 48 1 52 2 +0 3 1 29 0 9.4833 2 +0 2 1 52 0 13 2 +0 3 1 19 0 7.65 2 +1 1 0 38 0 227.525 1 +1 2 0 27 0 10.5 2 +0 3 1 28 0 15.5 3 +0 3 1 33 0 7.775 2 +1 2 0 6 1 33 2 +0 3 1 17 1 7.0542 2 +0 2 1 34 0 13 2 +0 2 1 50 0 13 2 +1 1 1 27 1 53.1 2 +0 3 1 20 0 8.6625 2 +1 2 0 30 3 21 2 +1 3 0 28 0 7.7375 3 +0 2 1 25 1 26 2 +0 3 0 25 1 7.925 2 +1 1 0 29 0 211.3375 2 +0 3 1 11 0 18.7875 1 +0 2 1 28 0 0 2 +0 2 1 23 0 13 2 +0 2 1 23 0 13 2 +0 3 1 28.5 0 16.1 2 +0 3 0 48 4 34.375 2 +1 1 1 35 0 512.3292 1 +0 3 1 28 0 7.8958 2 +0 3 1 28 0 7.8958 2 +1 1 1 28 0 30 2 +0 1 1 36 1 78.85 2 +1 1 0 21 4 262.375 1 +0 3 1 24 1 16.1 2 +1 3 1 31 0 7.925 2 +0 1 1 70 2 71 2 +0 3 1 16 2 20.25 2 +1 2 0 30 0 13 2 +0 1 1 19 1 53.1 2 +0 3 1 31 0 7.75 3 +1 2 0 4 2 23 2 +1 3 1 6 1 12.475 2 +0 3 1 33 0 9.5 2 +0 3 1 23 0 7.8958 2 +1 2 0 48 3 65 2 +1 2 1 0.67 2 14.5 2 +0 3 1 28 0 7.7958 2 +0 2 1 18 0 11.5 2 +0 3 1 34 0 8.05 2 +1 1 0 33 0 86.5 2 +0 3 1 28 0 14.5 2 +0 3 1 41 0 7.125 2 +1 3 1 20 0 7.2292 1 +1 1 0 36 3 120 2 +0 3 1 16 0 7.775 2 +1 1 0 51 1 77.9583 2 +0 1 1 28 0 39.6 1 +0 3 0 30.5 0 7.75 3 +0 3 1 28 1 24.15 3 +0 3 1 32 0 8.3625 2 +0 3 1 24 0 9.5 2 +0 3 1 48 0 7.8542 2 +0 2 0 57 0 10.5 2 +0 3 1 28 0 7.225 1 +1 2 0 54 4 23 2 +0 3 1 18 0 7.75 2 +0 3 1 28 0 7.75 3 +1 3 0 5 0 12.475 2 +0 3 1 28 0 7.7375 3 +1 1 0 43 1 211.3375 2 +1 3 0 13 0 7.2292 1 +1 1 0 17 1 57 2 +0 1 1 29 0 30 2 +0 3 1 28 3 23.45 2 +0 3 1 25 0 7.05 2 +0 3 1 25 0 7.25 2 +1 3 0 18 0 7.4958 2 +0 3 1 8 5 29.125 3 +1 3 1 1 3 20.575 2 +0 1 1 46 0 79.2 1 +0 3 1 28 0 7.75 3 +0 2 1 16 0 26 2 +0 3 0 28 10 69.55 2 +0 1 1 28 0 30.6958 1 +0 3 1 25 0 7.8958 2 +0 2 1 39 0 13 2 +1 1 0 49 0 25.9292 2 +1 3 0 31 0 8.6833 2 +0 3 1 30 0 7.2292 1 +0 3 0 30 2 24.15 2 +0 2 1 34 0 13 2 +1 2 0 31 2 26.25 2 +1 1 1 11 3 120 2 +1 3 1 0.42 1 8.5167 1 +1 3 1 27 0 6.975 2 +0 3 1 31 0 7.775 2 +0 1 1 39 0 0 2 +0 3 0 18 0 7.775 2 +0 2 1 39 0 13 2 +1 1 0 33 1 53.1 2 +0 3 1 26 0 7.8875 2 +0 3 1 39 0 24.15 2 +0 2 1 35 0 10.5 2 +0 3 0 6 6 31.275 2 +0 3 1 30.5 0 8.05 2 +0 1 1 28 0 0 2 +0 3 0 23 0 7.925 2 +0 2 1 31 2 37.0042 1 +0 3 1 43 0 6.45 2 +0 3 1 10 5 27.9 2 +1 1 0 52 2 93.5 2 +1 3 1 27 0 8.6625 2 +0 1 1 38 0 0 2 +1 3 0 27 1 12.475 2 +0 3 1 2 5 39.6875 2 +0 3 1 28 0 6.95 3 +0 3 1 28 0 56.4958 2 +1 2 1 1 2 37.0042 1 +1 3 1 28 0 7.75 3 +1 3 0 15 1 14.4542 1 +1 2 1 0.83 2 18.75 2 +0 3 1 28 0 7.2292 1 +0 3 1 23 0 7.8542 2 +0 3 1 18 0 8.3 2 +1 1 0 39 2 83.1583 1 +0 3 1 21 0 8.6625 2 +0 3 1 28 0 8.05 2 +1 3 1 32 0 56.4958 2 +1 1 1 28 0 29.7 1 +0 3 1 20 0 7.925 2 +0 2 1 16 0 10.5 2 +1 1 0 30 0 31 1 +0 3 1 34.5 0 6.4375 1 +0 3 1 17 0 8.6625 2 +0 3 1 42 0 7.55 2 +0 3 1 28 10 69.55 2 +0 3 1 35 0 7.8958 1 +0 2 1 28 1 33 2 +1 1 0 28 1 89.1042 1 +0 3 1 4 6 31.275 2 +0 3 1 74 0 7.775 2 +0 3 0 9 2 15.2458 1 +1 1 0 16 1 39.4 2 +0 2 0 44 1 26 2 +1 3 0 18 1 9.35 2 +1 1 0 45 2 164.8667 2 +1 1 1 51 0 26.55 2 +1 3 0 24 3 19.2583 1 +0 3 1 28 0 7.2292 1 +0 3 1 41 2 14.1083 2 +0 2 1 21 1 11.5 2 +1 1 0 48 0 25.9292 2 +0 3 0 28 10 69.55 2 +0 2 1 24 0 13 2 +1 2 0 42 0 13 2 +1 2 0 27 1 13.8583 1 +0 1 1 31 0 50.4958 2 +0 3 1 28 0 9.5 2 +1 3 1 4 2 11.1333 2 +0 3 1 26 0 7.8958 2 +1 1 0 47 2 52.5542 2 +0 1 1 33 0 5 2 +0 3 1 47 0 9 2 +1 2 0 28 1 24 1 +1 3 0 15 0 7.225 1 +0 3 1 20 0 9.8458 2 +0 3 1 19 0 7.8958 2 +0 3 1 28 0 7.8958 2 +1 1 0 56 1 83.1583 1 +1 2 0 25 1 26 2 +0 3 1 33 0 7.8958 2 +0 3 0 22 0 10.5167 2 +0 2 1 28 0 10.5 2 +0 3 1 25 0 7.05 2 +0 3 0 39 5 29.125 3 +0 2 1 27 0 13 2 +1 1 0 19 0 30 2 +0 3 0 28 3 23.45 2 +1 1 1 26 0 30 1 +0 3 1 32 0 7.75 3 diff --git a/train.xlsx b/train.xlsx new file mode 100644 index 0000000..a001337 Binary files /dev/null and b/train.xlsx differ