Если Вы безоговорочный поклонник искусственного интеллекта (Ai) в нынешней его трактовке и не приемлете другие решения, то я бы не рекомендовал читать и комментировать эту статью. Если Вы занимаетесь приложениями для банковской сферы, или для торговли, или создаёте чат-боты общего назначения, то эта статья, скорее всего, будет Вам не интересна. Разработчики игр, так же не найдут в этой статье ничего полезного.
Но, возможно, вы участвуете в проектах связанных с автоматизацией проектирования в машиностроении или создаёте экспертные системы медицинского назначения и тесно взаимодействуете с предметными специалистами (инженерами, технологами, врачами). В таком случае идеи и решения из этой статьи могут пригодиться в Вашей работе. Если же вдруг Вы связаны с преподаванием прикладных дисциплин не связанных с информационными технологиями, то подходы к формализации знаний и созданию прикладных приложений с минимальным привлечением ИТ-специалистов могут Вас заинтересовать и оказаться ещё одним инструментом закрепления знаний наряду с курсовым и дипломным проектированием.
В других ранее опубликованных статьях достаточно подробно обсуждались аспекты технологии поиска решений управляемого данными. Был предложен понятийный аппарат и дано определение информационного блока, как единицы формализации знаний предметной области.
Однако остались в тени некоторые важные детали. Полагаю, что данной публикацией удастся убедить читателя, что решение достаточно широкого класса задач возможно, простыми и не требовательными к вычислительным ресурсам средствами.
Когда-то давно в журнале «Знание — сила» я прочел статью «Несущая в себе свою размерность». Точное содержание статьи давно забылось. Помню только, что высказывалась идея о том, что цепь, состоящая из отдельных одинаковых звеньев, собственно и является носителем своей размерности (шага цепи).
Если продолжать аналогию, то структура, состоящая из последовательности информационных блоков, тоже в каком-то смысле несёт в себе свою размерность – путь к решению задачи.
Каждому решению, полученному в процессе поиска на множестве информационных блоков, соответствует, совершенно определенная последовательность выполнения последних. Логично предположить, что последовательность может от раза к разу повторяться. Другими словами можно не сразу начинать подбор подходящих к случаю информационных блоков, а сперва пытаться повторить наиболее подходящую последовательность информационных блоков, использовавшуюся для ранее решавшихся подобных задач.
Каждому выполненному информационному блоку предшествует конечное множество соседних информационных блоков непосредственно приводящих к этому блоку. Аналогично, выполненному информационному блоку соответствует конечное множество блоков, которые могут быть выполнены сразу после него. И именно в этом смысле каждый информационный блок представляется объектом, несущим в себе свою «размерность» – известны ближайшие связи.
Неотъемлемой частью информационного блока, является таблица применимости. Если для определения одного и того же параметра доступны блоки с различными таблицами применимости (наборами входных параметров), это может быть свидетельством неполной или недостоверной информации базы знаний. В такой ситуации логично предположить, что чем больше входных параметров учитывается, тем более обоснованным будет результат и таким информационным блокам должно отдаваться предпочтение в процессе поиска. А блоки с меньшим количеством входных параметров должны быть переданы предметным специалистам для уточнения.
Формализация предметных знаний предполагает использование ограниченного естественного языка содержащегося в терминологическом словаре предметной области. Понятия собранные в терминологическом словаре, по своей сути, параметры решаемой задачи. Какие-то параметры чаще встречаются в информационных блоках, а какие-то реже. Очевидно, что чем чаще предметное понятие встречается в информационных блоках, тем большее влияние оно оказывает на направление процесса поиска решений. Соответственно, терминологический словарь логично и можно автоматически упорядочить по частоте встречаемости понятий в информационных блоках. Ранжированный таким образом словарь может позволить упорядочить последовательности запроса недостающих параметров.
Ограничения на допустимость возможных входных параметров информационных блоков позволяет сделать запросы входных параметров достаточно разумными. В частности, параметры, допускающие любые значения, должны запрашиваться последними, а для параметров с заданными ограничениями, могут динамически определяться области реальных допустимых значений, в контексте накопленной в процессе поиска решений информации.
В процессе поиска решений задаются значения входных параметров. Последовательность запросов параметров определяется последовательностью поиска решений и весовыми характеристиками параметра в терминологическом словаре. Тем не менее, в начале поиска перечень и последовательность запросов параметров может повторяться. Если запомнить эти последовательности можно попыться использовать сохраненную информацию для рационального управления диалоговым вводом.
Если графически представить взаимодействие информационных блоков в процессе поиска решений получится достаточно простая структура. Но, если попытаться изобразить всё многообразие связей информационных блоков, накопленное в процессе решения нескольких задач, то схема усложнится. Не имеет смысла пытаться построить полную структуру взаимодействия информационных блоков. Каждый информационный блок это отдельный объект для которого только известно что и как непосредственно связано с ним до и после в общей структуре информационного наполнения. Этого вполне достаточно, чтобы динамически подбирать подходящие к случаю информационные блоки.
Тем не менее, накапливать информацию о проторенных путях поиска весьма полезно. Получается что-то наподобие самообучения в процессе построения связей между информационными блоками. Это может значительно повысить эффективность поиска решений.
Детальный анализ (сопоставление) информационных блоков может позволить обнаружить и указать на неполные и недостоверные сведения в информационном наполнении.
Предвосхищая комментарии на тему идей вчерашнего дня и светлого будущего искусственного интеллекта, отмечу, что нейросетевые технологии прекрасно совмещаются с концепцией формализации знаний информационными блоками.
И последнее. Большие языковые модели представляют собой статичные структуры данных – собственно в этом и смысл модели. Подкорректировать модель: добавить, удалить или изменить связи данных внутри модели затратная и ресурсоёмкая процедура. Информационные блоки в структуре поиска решений управляемого данным могут быть изменены, удалены или добавлены в любой момент без необходимости корректировки других информационных блоков и базовых механизмов поиска решений.
Нейрон — электрически возбудимая клетка, которая предназначена для приёма извне, обработки, хранения, передачи и вывода вовне информации с помощью электрических и химических сигналов. Типичный нейрон состоит из тела клетки, дендритов и одного аксона. Нейроны могут соединяться один с другим, формируя нервные сети.
Структура из информационных блоков чем-то напоминает структуру из нейронов. Типичный информационный блок имеет несколько входов и один выход. Информационные блоки для решения однотипных задач могут образовывать достаточно устойчивые структуры.
Предыдущий вариант статьи содержал ссылку на видеоролик, наглядно иллюстрирующий приведённые выше тезисы. К сожалению, модераторы расценили ссылку на видеоролик, как рекламу. Соответственно, в этом варианте статьи ссылка отсутствует.
ссылка на оригинал статьи https://habr.com/ru/articles/1051928/