Поскольку ранее уже были опубликованы коды методов для нормирования входных данных, а также классы для ядерных преобразований, то теперь самое время опубликовать код метода, с помощью которого будут выводиться результаты обученного бинарного классификатора при предъявлении ему какого нибудь паттерна.
Код на Java:
private KernelTrick trick = null; /** * Весовые коэффициенты нейронной сети */ private double[] weights = null; /** * Получение результатов обученного искусственного нейрона * @param pattern ненормированные входные значения для предъявления нейрону
* @return результат */ public double getDecision(double[] pattern) { double[] sample = new double[this.maxs.length]; for (int i = 0; i < sample.length; i++) { sample[i] = this.convertToRange(pattern[i], this.maxs[i], this.mins[i]); if (sample[i] > 1d) { sample[i] = 1d; } if (sample[i] < -1d) { sample[i] = -1d; } } sample = this.trick.getTransformData(sample); double result = 0d; for (int i = 0; i < sample.length; i++) { result = result + sample[i] * this.weights[i]; } return result; }
Комментариев нет:
Отправить комментарий