Материал: Проверка на рерайт. Отчет

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Коваленко Л.А. ВКР на тему «Разработка конструктора нейронных сетей». Глубокая проверка на плагиат.

Создание и редактирование набора данных

спомощью кода

спомощью кода в таблице

Интерактивная визуализация работы сети

спомощью кода

+

+

Экспорт модели в ONNX формат с помощью кода

+

Разработка сценариев/программ с графическим отображением только для поддерживаемых

только в полном пакете MATLAB

+

Пользовательские шаблоны кода

+

+

Разделение и объединение проектов по средам исполнения

Операционная система

Windows, Linux

Windows, Linux Windows Windows Windows

Лицензия

Бесплатно 30 дней условно-бесплатно Бесплатно Бесплатно Бесплатно

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

6

Коваленко Л.А. ВКР на тему «Разработка конструктора нейронных сетей». Глубокая проверка на плагиат.

возможности, функционал, а также тонкости реализации и использованные библиотеки.

2 ОПРЕДЕЛЕНИЕ ТРЕБОВАНИЙ К РАЗРАБАТЫВАЕМОМУ ПРИЛОЖЕНИЮ

2.1 Требования к функциям 2.1.1 Функциональная структура приложения

Обобщенная функциональная структура приложения представлена на рисунке 2.1.

Рисунок 2.1 — Функциональная структура приложения

Приложение имеет функции для работы со списком проектов, инструменты без привязки к проектам, настройки приложения, которые влияют на настройки всех проектов, а также сам список проектов.

Файл проекта имеет расширение «nnc».

Каждый проект позволяет выполнять операции над списком блоков кода и блоков текста.

Так как в один момент времени просматривается только один проект, то операции проводятся над этим проектом.

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

Блок текста хранит весь текст в формате HTML, при необходимости преобразуя HTML и Markdown между собой.

Для каждой вкладки этапа («Наборы данных», «Архитектуры» и пр.) свой список разделов. Под логгером далее понимается текстовое поле, в которое добавляется информация о результатах совершенных операций. Каждая запись имеет дату.

2.1.2 Функции списка проектов Основные функции списка проектов приведены в таблице 2.1.

Таблица 2.1 — Основные функции списка проектов Функция Описание «Новый проект»

1. Открывается диалоговое окно сохранения файла нового проекта.

2.Если в диалоговом окне выбран файл уже открытого проекта и нажата кнопка «Сохранить», то в поле со статусом, в логгер и во всплывающем сообщении об ошибке выводится: «Проект по пути [путь] уже открыт» с кнопкой «Ок».

3.Если в диалоговом окне было введено корректное имя файла (либо выбран файл на перезапись) и нажата кнопка «Сохранить», то создается новый проект:

1) В поле со статусом выводится «Подождите, пока проект создается...»; 2) Проект сохраняется на диск; 3) Загружаются разделы с шаблонами из директории приложения;

4) Устанавливаются настройки графических элементов в соответствии с настройками приложения; 5) В рабочую область добавляется пустой список блоков; 6) Статус проекта: «Сохранен»;

7) В поле со статусом и в логгер выводится «Проект создан».

4.Если в диалоговом окне была нажата кнопка «Отмена», то отмена действия; в поле со статусом выводится «Отмена создания проекта».

5.В случае ошибки выводится сообщение об ошибке «Не удалось создать проект: [описание ошибки]».

«Открыть проект»

1.Открывается диалоговое окно открытия файла существующего проекта.

2.Если в диалоговом окне выбран файл уже открытого проекта и нажата кнопка «Открыть», то в поле со статусом, в логгер и во всплывающем сообщении об ошибке выводится: «Проект по пути [путь] уже открыт» с кнопкой «Ок».

3.Если в диалоговом окне был выбран существующий файл проекта и нажата кнопка «Открыть»,

7

Коваленко Л.А. ВКР на тему «Разработка конструктора нейронных сетей». Глубокая проверка на плагиат.

то файл проекта открывается:

1)В поле со статусом выводится «Подождите, пока проект открывается...»;

2)Данные считываются из файла проекта;

3)Загружаются разделы с шаблонами из директории приложения;

4)Устанавливаются настройки элементов в соответствии с настройками приложения;

5)В рабочую область добавляется список блоков, считанных из файла проекта;

6)Статус проекта: «Сохранен».

7)В поле со статусом и в логгер выводится «Проект открыт».

4.Если в диалоговом окне была нажата кнопка «Отмена», то отмена действия; в поле со статусом выводится «Отмена открытия проекта».

5.В случае ошибки выводится сообщение об ошибке «Не удалось открыть проект: [описание ошибки]».

«Сохранить проект»

1.Если открытых проектов нет, то в поле со статусом, в логгер и во всплывающем сообщении об ошибке выводится: «Список проектов пуст» с кнопкой «Ок».

2.Если хотя бы один открытый проект есть, то файл текущего проекта сохраняется: 1) В поле со статусом выводится «Подождите, пока проект сохраняется...»; 2) Проект сохраняется на диск; 3) Статус проекта: «Сохранен».

4) В поле со статусом и в логгер выводится «Проект [название] сохранен».

3.В случае ошибки выводится сообщение об ошибке «Не удалось сохранить проект: [описание ошибки]».

«Дублировать текущий проект»

1.Если открытых проектов нет, то в поле со статусом, в логгер и во всплывающем сообщении об ошибке выводится: «Список проектов пуст» с кнопкой «Ок».

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

3.Если в диалоговом окне выбран файл уже открытого проекта и нажата кнопка «Сохранить», то в поле со статусом, в логгер и во всплывающем сообщении об ошибке выводится: «Проект по пути [путь] уже открыт».

4.Если в диалоговом окне было введено корректное имя файла (либо выбран файл на перезапись) и нажата кнопка «Сохранить», то создается новый проект:

1) В поле со статусом выводится «Подождите, пока проект дублируется...»; 2) Проект сохраняется на диск; 3) Загружаются разделы с шаблонами из директории приложения;

4) Устанавливаются настройки графических элементов в соответствии с настройками приложения; 5) В рабочую область добавляется список блоков из исходного дублируемого проекта; 6) Статус проекта: «Сохранен»;

7) В поле со статусом и в логгер выводится «Проект [название] создан как дубликат [название]».

5.Если в диалоговом окне была нажата кнопка «Отмена», то отмена действия; в поле со статусом выводится «Отмена дублирования проекта».

6.В случае ошибки выводится сообщение об ошибке «Не удалось дублировать проект: [описание ошибки]».

«Закрыть проект»

1.Если открытых проектов нет, то в поле со статусом, в логгер и во всплывающем сообщении об ошибке выводится: «Список проектов пуст» с кнопкой «Ок».

2.Если хотя бы один открытый проект есть, то отображение окна подтверждения «Вы уверены, что хотите закрыть проект?» с кнопками «Да» и «Нет».

3.Если «Да», то:

1) В поле со статусом выводится «Подождите, пока проект закрывается...»; 2) Отображение окна подтверждения «Сохранить проект перед закрытием?» с кнопками «Да» и «Нет» в случае, если статус проекта «Не сохранен»;

o Если «Да», то проект сохраняется;

8

Коваленко Л.А. ВКР на тему «Разработка конструктора нейронных сетей». Глубокая проверка на плагиат.

o Если «Нет», то проект не сохраняется.

3)Проект закрывается; графические элементы проекта удаляются из рабочей области.

4)В поле со статусом и в логгер выводится «Проект закрыт».

4.Если в диалоговом окне была нажата кнопка «Отмена», то отмена действия; в поле со статусом выводится «Отмена закрытия проекта».

5.В случае ошибки выводится сообщение об ошибке «Не удалось закрыть проект: [описание ошибки]».

«Выход из программы»

1.Отображение окна подтверждения «Вы уверены, что хотите выйти?» с кнопками «Да» и «Нет».

2.Если «Да», то:

1) Для каждого открытого проекта проверяется его статус. Если статус какого-либо из проектов «Не сохранен», то отображается окно подтверждения «Сохранить все проекты перед выходом?» с кнопками «Да», «Нет» и «Отмена».

o Если «Да», то все проекты сохраняются и закрываются, настройки программы записываются в файл настроек, а затем происходит выход из программы.

o Если «Нет», то все проекты закрываются без сохранения, настройки программы записываются в файл настроек, а затем происходит выход из программы.

o Если «Отмена», то отмена выхода.

2) Если нет открытых проектов или статус всех проектов «Сохранен», то все проекты закрываются, настройки программы записываются в файл настроек, а затем происходит выход из программы.

3.Если «Нет», то отмена действия.

4.В случае ошибки отображается окно подтверждения «Проигнорировать ошибку? [описание ошибки]» с кнопками «Да» и «Нет». Если «Да», то ошибка игнорируется. Если «Нет», то выход из программы не производится.

Необходимость в предварительном сохранении файла проекта связана с определением среды выполнения кода.

2.1.3 Функции проекта Основные функции проекта приведены в таблице 2.2.

Таблица 2.2 — Основные функции проекта Функция Описание

«Добавить блок кода»

1.Если открытых проектов нет, то в поле со статусом, в логгер и во всплывающем сообщении об ошибке выводится: «Список проектов пуст» с кнопкой «Ок».

2.Если хотя бы один открытый проект есть, то:

1)В поле со статусом выводится «Подождите, пока блок кода добавляется...»;

2)В список блоков текущего проекта добавляется новый блок кода в любую позицию;

3)Статус проекта: «Не сохранен»;

4)В поле со статусом и в логгер выводится «В проект [название] добавлен блок кода».

3. В случае ошибки выводится сообщение об ошибке «Не удалось добавить блок кода: [описание ошибки]».

«Добавить текстовый блок»

1.Если открытых проектов нет, то в поле со статусом, в логгер и во всплывающем сообщении об ошибке выводится: «Список проектов пуст» с кнопкой «Ок».

2.Если хотя бы один открытый проект есть, то:

1)В поле со статусом выводится «Подождите, пока блок текста добавляется...»;

2)В список блоков текущего проекта добавляется новый блок текста в любую позицию;

3)Статус проекта: «Не сохранен»;

4)В поле со статусом и в логгер выводится «В проект [название] добавлен блок текста».

3. В случае ошибки выводится сообщение об ошибке «Не удалось добавить блок текста: [описание ошибки]».

«Запустить выбранные блоки»

9

Коваленко Л.А. ВКР на тему «Разработка конструктора нейронных сетей». Глубокая проверка на плагиат.

1.Если открытых проектов нет, то в поле со статусом, в логгер и во всплывающем сообщении об ошибке выводится: «Список проектов пуст» с кнопкой «Ок».

2.Если хотя бы один открытый проект есть, но блоки кода не выбраны, то во всплывающем сообщении об ошибке выводится: «Ни один блок кода не выбран для выполнения» с кнопкой

«Ок».

3.Если хотя бы один открытый проект есть и хотя бы один блок кода выбран, то

1)В поле со статусом выводится «Подождите, пока выбранные блоки отправляются на выполнение...»;

2)Все выбранные блоки в списке блоков текущего проекта отправляются на выполнение.

3)В поле со статусом и в логгер выводится «В проекте [название] началось выполнение выбранных блоков».

4. В случае ошибки выводится сообщение об ошибке «Не удалось отправить выбранные блоки на выполнение: [описание ошибки]».

«Остановить выполнение блоков» 1. Если открытых проектов нет, то в поле со статусом, в логгер и во всплывающем сообщении об

ошибке выводится: «Список проектов пуст» с кнопкой «Ок».

2. Если хотя бы один открытый проект есть, но в текущем проекте ядро еще не было запущено, то во всплывающем сообщении об ошибке выводится: «Ядро не запущено» с кнопкой «Ок».

3. Если хотя бы один открытый проект есть и в текущем проекте ядро запущено, то отображается окно подтверждения «Подтвердить остановку всех блоков кода выбранного проекта?» с кнопками «Да» и «Нет».

4. Если «Да», то:

1)В поле со статусом выводится «Подождите, пока останавливается выполнение блоков...»;

2)Из очереди выполнения удаляются все блоки кода.

3)Выполняющей среде посылается сигнал о прерывании выполнения текущего блока, если он есть.

4)В поле со статусом и в логгер выводится «В проекте [название] остановлено выполнение блоков».

5. Если «Нет», то отмена действия.

6. В случае ошибки выводится сообщение об ошибке «Не удалось остановить выполнение блоков: [описание ошибки]».

«Перезапустить ядро» 1. Если открытых проектов нет, то в поле со статусом, в логгер и во всплывающем сообщении об

ошибке выводится: «Список проектов пуст» с кнопкой «Ок».

2. Если хотя бы один открытый проект есть, но в текущем проекте ядро еще не было запущено, то во всплывающем сообщении об ошибке выводится: «Ядро не запущено» с кнопкой «Ок».

3. Если хотя бы один открытый проект есть и в текущем проекте ядро запущено, то отображается окно подтверждения «Подтвердить перезапуск ядра выбранного проекта?» с кнопками «Да» и «Нет».

4. Если «Да», то:

1)В поле со статусом выводится «Подождите, пока ядро перезапускается...»;

2)Из очереди выполнения удаляются все блоки кода.

3)Выполняющей среде посылается сигнал о прерывании выполнения текущего блока, если он есть.

4)Ядро перезапускается.

5)В поле со статусом и в логгер выводится «В проекте [название] перезапущено ядро».

5.Если «Нет», то отмена действия.

6.В случае ошибки выводится сообщение об ошибке «Не удалось перезапустить ядро: [описание ошибки]».

«Очистить вывод выбранных блоков»

1.Если открытых проектов нет, то в поле со статусом, в логгер и во всплывающем сообщении об ошибке выводится: «Список проектов пуст» с кнопкой «Ок».

2.Если хотя бы один открытый проект есть, но блоки кода не выбраны, то во всплывающем

10