Ejemplo n.º 1
0
    def __pb_train_click(self):
        try:
            class_0_point_0_x = int(self.ui.le_class_0_point_0_x.text())
            class_0_point_0_y = int(self.ui.le_class_0_point_0_y.text())
            point_0 = Point(class_0_point_0_x, class_0_point_0_y)

            class_0_point_1_x = int(self.ui.le_class_0_point_1_x.text())
            class_0_point_1_y = int(self.ui.le_class_0_point_1_y.text())
            point_1 = Point(class_0_point_1_x, class_0_point_1_y)

            self.__training_vectors[0] = [point_0, point_1]
        except ValueError:
            self.__training_vectors[0] = [Point(3, 2), Point(-5, 0)]

        try:
            class_1_point_0_x = int(self.ui.le_class_1_point_0_x.text())
            class_1_point_0_y = int(self.ui.le_class_1_point_0_y.text())
            point_0 = Point(class_1_point_0_x, class_1_point_0_y)

            class_1_point_1_x = int(self.ui.le_class_1_point_1_x.text())
            class_1_point_1_y = int(self.ui.le_class_1_point_1_y.text())
            point_1 = Point(class_1_point_1_x, class_1_point_1_y)

            self.__training_vectors[1] = [point_0, point_1]
        except ValueError:
            self.__training_vectors[1] = [Point(4, -7), Point(1, 1)]

        potential = Potential(self.__amount_of_classes)
        self.__func, isSuccess = potential.train(self.__training_vectors)

        if not isSuccess:
            self.__msgbox_message(
                'Error',
                'An error occurred while training. \nEnter another training data.'
            )
        else:
            self.scene.clear()
            self.__draw_axes()
            self.__draw_graphic()
            self.__draw_training_points()

        try:
            self.ui.le_separated_function.setText(str(self.__func))
        except ValueError:
            self.__msgbox_message(
                'Error',
                'An error occurred while training. \nEnter another training data.'
            )