Source code for gui.core.regressionMethods.SVR
from PyQt5 import QtWidgets
from sklearn.svm import SVR
from gui.ui.SVR import Ui_Form
from gui.util.Modules import Modules
[docs]
class Ui_Form(Ui_Form, Modules):
[docs]
def connectWidgets(self):
svr = SVR()
svr.kernel = 'rbf'
svr.degree = 3
svr.gamma = 'auto'
svr.coef0 = 0.0
svr.tol = 1e-3
svr.C = 1.0
svr.epsilon = 0.1
svr.shrinking = True
svr.cache_size = 200
svr.verbose = False
svr.max_iter = -1
self.cDoubleSpinBox.setValue(svr.C)
self.epsilonDoubleSpinBox.setValue(svr.epsilon)
self.defaultComboItem(self.kernelComboBox, svr.kernel)
self.degreeSpinBox.setValue(svr.degree)
self.defaultComboItem(self.gammaComboBox, svr.gamma)
self.coeff0DoubleSpinBox.setValue(svr.coef0)
self.shrinkingCheckBox.setChecked(svr.shrinking)
self.toleranceDoubleSpinBox.setValue(svr.tol)
self.cacheSizeSpinBox.setValue(svr.cache_size)
self.verboseCheckBox.setChecked(svr.verbose)
self.maxIterationsSpinBox.setValue(svr.max_iter)
[docs]
def run(self):
kernel_lookup = {
'Radial Basis Function': 'rbf',
'Linear': 'linear',
'Polynomial': 'poly',
'Sigmoid': 'sigmoid',
'Precomputed': 'precomputed'
}
kernel = kernel_lookup[self.kernelComboBox.currentText()]
params = {
'C': self.cDoubleSpinBox.value(),
'epsilon': self.epsilonDoubleSpinBox.value(),
'kernel': kernel,
'degree': self.degreeSpinBox.value(),
'gamma': self.gammaComboBox.currentText(),
'coef0': self.coeff0DoubleSpinBox.value(),
'shrinking': self.shrinkingCheckBox.isChecked(),
'tol': self.toleranceDoubleSpinBox.value(),
'cache_size': self.cacheSizeSpinBox.value(),
'verbose': self.verboseCheckBox.isChecked(),
'max_iter': int(self.maxIterationsSpinBox.value())
}
return params, self.getChangedValues(params, SVR())
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
Form = QtWidgets.QWidget()
ui = Ui_Form()
ui.setupUi(Form)
Form.show()
sys.exit(app.exec_())