Друзья! Пару слов о том, почему всетаки нейронная сеть была использована для решения задачи. Изначально задача была решена простой if-then-else логикой. Но так как не всегда результаты были корректными, эта логика разрасталась, и становилась все сложнее и сложнее. Заказчик постоянно присылал примеры запросов, на которые алгоритм не давал правильных результатов. И мы вынуждены были нагромождать нашу логику дополнительными проверками. Получалось, что чинили одно, ламалось другое. В итоге было принято решение, что нужно использовать искуственный интелект, и переложить на него эту задачу. По поводу сложности применения нейронных сетей — я бы не сказал что это самое сложное в этой задаче. Пожалуй, собрать и организовать данные куда сложнее. И тут уже не важно, какой инструмент будет использоватся. Питоновский скрипт для TF — это всего около сотни строк кода. О какой сложности идет речь? По поводу ненадобности скрытых слоев. Тут я думаю все зависит от количества и качества входных данных. Так как у нас входных данных было не много, по меркам нейронных сетей, то увеличение количества скрытых слоев не играло роли. Если бы цель стояла обучить нейронную сеть для более сложных запросов, то и данных нужно было бы больше, и параметров, и возможно и скрытых слоев. Мы добились хорошего результата для поставленной задачи. Данное решение является гибким и расширяемым.
Друзья! Пару слов о том, почему всетаки нейронная сеть была использована для решения задачи.
Изначально задача была решена простой if-then-else логикой. Но так как не всегда результаты были корректными, эта логика разрасталась, и становилась все сложнее и сложнее. Заказчик постоянно присылал примеры запросов, на которые алгоритм не давал правильных результатов. И мы вынуждены были нагромождать нашу логику дополнительными проверками. Получалось, что чинили одно, ламалось другое.
В итоге было принято решение, что нужно использовать искуственный интелект, и переложить на него эту задачу.
По поводу сложности применения нейронных сетей — я бы не сказал что это самое сложное в этой задаче. Пожалуй, собрать и организовать данные куда сложнее. И тут уже не важно, какой инструмент будет использоватся. Питоновский скрипт для TF — это всего около сотни строк кода. О какой сложности идет речь?
По поводу ненадобности скрытых слоев. Тут я думаю все зависит от количества и качества входных данных. Так как у нас входных данных было не много, по меркам нейронных сетей, то увеличение количества скрытых слоев не играло роли. Если бы цель стояла обучить нейронную сеть для более сложных запросов, то и данных нужно было бы больше, и параметров, и возможно и скрытых слоев. Мы добились хорошего результата для поставленной задачи. Данное решение является гибким и расширяемым.