Научная статья на тему 'РЕАЛИЗАЦИЯ АЛГОРИТМА МЕТОДА ИЗВЛЕЧЕНИЯ ЗНАНИЙ "ДИАЛОГ"'

РЕАЛИЗАЦИЯ АЛГОРИТМА МЕТОДА ИЗВЛЕЧЕНИЯ ЗНАНИЙ "ДИАЛОГ" Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
23
10
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МЕТОД ИЗВЛЕЧЕНИЯ ЗНАНИЙ / ДИАЛОГ / БАЗА ЗНАНИЙ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Карпенко Т. А., Игрунова С. В.

В данной статье описана программная реализация алгоритма метода извлечения знаний «диалог», выбор средств программирования.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

REALIZATION OF THE ALGORITHM OF METHOD OF EXTRACTION OF KNOWLEDGE "DIALOG"

This article describes the software implementation of the algorithm for extracting knowledge "dialogue", the choice of programming tools.

Текст научной работы на тему «РЕАЛИЗАЦИЯ АЛГОРИТМА МЕТОДА ИЗВЛЕЧЕНИЯ ЗНАНИЙ "ДИАЛОГ"»

будет возможно подключение к сети одного миллиона гаджетов.

Использованные источники:

1. Росляков, А.В. Сети связи: учеб. пособие по дисциплине «Сети связи и системы коммутации». - Самара: ФГБОУ ВО ПГУТИ, 2017., с. 9-10

2. https://setphone.ru/stati/standarty-sotovyx-setei-ot- 1g-do-5g

УДК 004.9

Карпенко Т.А. студент Игрунова С. В., к.т.н.

доцент НИУ «БелГУ» РФ, г. Белгород

РЕАЛИЗАЦИЯ АЛГОРИТМА МЕТОДА ИЗВЛЕЧЕНИЯ ЗНАНИЙ

«ДИАЛОГ»

Аннотация: в данной статье описана программная реализация алгоритма метода извлечения знаний «диалог», выбор средств программирования.

Ключевые слова: метод извлечения знаний, диалог, чат-бот, база знаний.

Karpenko T.A. student Igrunova S.V., Ph.D., Associate Professor National University of BelSU Russian Federation, Belgorod REALIZATION OF THE ALGORITHM OF METHOD OF EXTRACTION OF KNOWLEDGE "DIALOG"

Abstract: This article describes the software implementation of the algorithm for extracting knowledge "dialogue", the choice of programming tools.

Keywords: method of knowledge extraction, dialogue, chatterbot, knowledge base.

Необходимо написать программный код, реализующий блок-схему работы программы в режиме диалога. Сам диалог будет реализован в виде чат-бота.

Чат-бот (англ. chatterbot) - это компьютерная программа-собеседник, которая создана для имитации речевого поведения человека при общении с одним или несколькими собеседниками. Чат-бот может обладать своего рода искусственным интеллектом и способностью к обучению. А может быть простым эмулятором, способным адекватно реагировать на определённые слова и фразы.

Данный чат-бот реализован с среде разработки IntelliJ IDEA на языке программирования Java.

IntelliJ IDEA - интегрированная среда разработки программного

обеспечения на многих языках программирования, в частности Java, JavaScript, Python, разработанная компанией JetBrains[19].

Java представляет собой объектно-ориентированный язык программирования и платформу вычислений, которая была впервые выпущена Sun Microsystems в 1995 г. Существует множество приложений и веб-сайтов, которые не работают при отсутствии установленной Java, и с каждым днем число таких веб-сайтов и приложений увеличивается[19].

Первым шагом необходимо реализовать интерфейсную оболочку. Для этого импортируем три библиотеки: java.awt, java.awt.event, javax.swing, они необходимы для того чтобы работала графика.

На языке Java все программы являются классами. В каждом классе Java может существовать метод main, который объявляется следующим образом:

public static void main(String[] args) { new SimpleChatBot(); }

Этот метод срабатывает тогда, когда программа запускается.

Для отображения формы используем константы, каждая из которых начинается со слова final, то есть это объявление переменной которая не будет изменяться. Final string - объявление неизменяемой строки, final int -объявление неизменяемой целочисленной переменной.

final String TITLE OF PROGRAM = ' =r: simple chatbot"; — - WWWWWW»

final int 5 TART_ L C-CAll ON = 200;

final int WIN DOWJilDIH = 350;

final int WIN DOW_HEIGHT = 450;

final String СЕБА1 = "AI";

final String 3:::_ENIER = "Enter";

Рисунок 3 - Объявление констант

Для того что бы работала кнопка отправки сообщения на форме, необходимо реализовать следующий программный код.

public void acticniPerformed(ActicnEvent event) { if (message . getlext () . trim() . lengthf) > 0) { try {

S t yledDocume nt dc c = di a1c gue.ge t S t y 1edDocument();

doc. insert String (doc. getLengthf) , str: message . getlext (| +■ "\n",

new SimpleAttributeSet()); doc.insertString(doc.getLength(),

str IIILE_OF_FROGRAM. substring (0, 9) +■

sbct.saylnfieturn(message.getlext(), ai.isSelectedf)) +■ "\n", botStyle); } catch(Exception e) { }

}

message.setlext("");

me33age. reguestFocusInWindowO;

}

Рисунок 4 - Программный код для работы кнопки

Далее для работы самого диалога необходимо прописать следующий программный код (рис. 3.5)

final MapiString, String>

= new HaaliHapiString, String;-О {{

putfhello™, "Здравствуйте, рад Вас видеть. ДаЕай пообщаемся? Что Вы предпочитаете пить?™); put("ccffe", "Извиняюсь, но с данной темой н не работаю. Если хотите продолжить общение напишите про чай™); put("who", "Какой Ваш любимей тип чая?"); put("li5t"p "Что чаше всего Вы добавляете в чай?™);

Рисунок 5 - Формирование вопросов

final Map<String, Strings- PATTKRli5_FOE_JkliALY515 = new HaaliMapiString, String>() {{ ff hello

^ut ("призет ", "hello"); put("здорово", "hello"); put("здразотзуй", "hello");

ff who

put (|глга5лю\Лз .*чай "who"); put ("чай", "who") ; ff ccfie

ААНЧАНЧАНЧАЛ

put (,глю5лю\\з , *ко£е ", "coffe"); put("Ko£e". "coffe");

Рисунок 6 - Формирование ответов

Для того, чтобы программа работала необходимо создать базу данных, из которых и будут браться вопросы и возможные варианты ответа. База данных создаваться будет в программной среде Open Server.

База данных называется «dialog» с таблица «question» и «answears». Таблица вопросов представлена на рисунке 7.

w id question

□ J? * X 1 Здравствуйте, рад Вас видеть. Давай пообщаемся? lt..

J? * X 2 Извиняюсь, но с данной темой я не работаю. Если хо...

□ J * X 3 Какой Ваш любимый тип чая?

J? * X 4 Что чаще всего Вы добавляете в чай?

□ J * X 5 Какую фасовку чая Вы чаще всего выбираете?

J? * X 6 Какой вид листового чая Вы предпочитаете?

□ J * X 7 Какая форма пакетиков Вам больше нравится?

J? * X 0 В какой упаковке покупаете чай?

□ J * X 9 Какой страны производителя чая Вы предпочитаете"7

J? * X 10 Какой китайский производитель чая Вам больше всего...

□ J * X 11 Какой российский производитель чая Вам больше всег...

J? * X 12 К какой ценовой категории относится Ваш чай?

□ # 5- X 13 Что ж спасибо за беседу :) Хотите вывести отчет?

# 5- X 14 До свидания. Надеюсь, ещё увидимся.

□ J 5- X 15 Вашим предпочтениям соответствует китайский пакети...

5- X 16 Вашим предпочтениям соответствует листовой чай Gre...

Рисунок 7 - Вид вопросов в таблице

На следующем рисунке представлена таблица возможных вариантов ответа эксперта.

ж id variants id_parent

□ J? X 1 привет, здравствуй 1

X 2 люблю кофе. кофе, люблю воду. вода, воду 2

□ J X 3 чай, люблю чай 3

J? X 4 черный, зеленый 4

□ J? X 5 лимон, мята, мяту, имбирь. 5

□ J? X s заваривать в листьях, завариваю в листьях 6

□ J X 7 завариваю в пакетиках, пакетированный 7

J? X 3 мешочки, пирамидки 3

□ J X 9 крупнолистовой, мелколистовой э

□ J? X 10 картонной, картонная, жестянной 10

□ J X 11 китай 11

s X 12 россия: россию 12

□ J X 13 jfk. липтон. гринфилд 13

J X 14 бюджетная, бюджетной, средней, дорогой 14

□ J X 15 нет 15

s X 16 да 16

□ J X 17 конечно 17

Рисунок 8 - Возможные варианты ответа В конце совершенной работы можно сделать вывод, что цель достигнута и программа реализована языком программирования java, представляющая способ извлечения и анализа данных.

Разработанная система в итоге характеризируется тем, что диалог ведется в терминах проблемной области и на выходе пользователь получает конечный результат, являющийся целью его общения с программным приложением.

Использованные источники:

1. Андерсен В. Базы данных Microsoft Access. Проблемы и решения: Практ. пособ. /Пер. с англ.— М.: Издательство ЭКОМ, 2001.—384 с.: илл.

2. Глухих, И. Н. Интеллектуальные информационные системы : учеб. пособие для студентов учреждений высш. проф. образования / И. Н. Глухих ; М-во образования и науки Рос. Федерации, Тюм. гос. ун-т. - М. : Академия, 2012. - 110 с.

3. Ефимов, Е. Н. Информационные системы и технологии в экономике : учеб. пособие для студентов, обучающихся по специальностям "Мировая экономика", "Бухгалт. учет, анализ и аудит" и "Финансы и кредит" / Е. Н. Ефимов, Е. В. Ефимова, Г. М. Лапицкая ; под ред. Г. М. Лапицкой. - Ростов н/Д : МарТ: Феникс, 2012. - 296 с.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

4. Ясницкий, Л. Н. Введение в искусственный интеллект : учеб. пособие для студентов вузов, обучающихся по мат. направлениям и специальностям / Л. Н. Ясницкий. - 3-е изд., стер. - М. : Академия, 2013. - 175 с.

5. Боженюк, А. В. Интеллектуальные интернет-технологии : учеб. для студентов вузов, обучающихся по специальности "Прикладная информатика (по обл.)" и др. специальностям / А. В. Боженюк, Э. М. Котов, А. А. Целых. -Ростов н/Д : Феникс, 2012. - 382 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.