Делимся последними новостями о СУБД SoQoL

Как количество переходит в качество

Как количество переходит в качество Постепенно реализуем JDBC-интерфейс. На одном из шагов возникло желание проверить сделанную работу в деле. Вспомнили, что мы когда-то разработали прототип приложения на Java, которое обучает нейросеть для классификации обращений граждан (например, поступающие в органы государственной власти и местного самоуправления). Это приложение хранит исходный набор данных и обученную нейросеть в БД и соответственно довольно активно взаимодействует с ней в процессе обучения.

Попытка — не пытка, решено — сделано. Но не давал покоя вопрос "а что если результаты будут другими?". Конечно, приготовились искать ошибки и править код код.

И вот наконец настал долгожданный момент. Почему долгожданный — да потому что на протяжении работ по адаптации приложения выявили несколько ошибок как в драйвере, так и в ядре, которые успешно поправили.

Запустили в итоге приложение. Результаты оказались и вправду другими…  Прямо как и ожидали, но более точными, чем на другой СУБД. 

Объяснение оказалось очень простым: при обучении нейросети было выставлено ограничение на время и на число итераций. Другая СУБД остановилась по ограничению времени, Сокол остановился по ограничению числа итераций. Понимаете, да? Число итераций обучения в заданное время у Сокола оказалось большим за счет более быстрой работы СУБД. Больше итераций — точнее результат, выдаваемый затем нейросетью.