ЛАБОРАТОРНАЯ РАБОТА № 6.




ОТЧЕТ

О выполненных лабораторных работах

 

Студент__________________________________________________________

подпись, дата инициалы и фамилия

 

Группа________________________ шифр______________________________

 

Отчет защищен(а) на оценку (зачтено/незачтено)_______________________

 

Преподаватель____________________________________________________

подпись, дата инициалы и фамилия

Москва 2016

Лабораторная работа №1
Знакомство с SWI/PROLOG. Запуск простой программы

Цель: Знакомство с интерпретатором SWI/PROLOG, включая использование меню, создание программных файлов, запуск и трассировку программ на SWI/PROLOG.

Задание 1.1. Ввести текст программы 1. Ввести запросы к программе 1.

 

Исходные данные:

Рис.1.1.1. Текст программы 1.

Рис.1.1.2. Текст запросов к программе 1.

 

Результат:

Рис.1.1.3. Программа 1.

Рис.1.1.4. Запросы и результаты запросов программы 1.

 

Задание 1.2. Использовать встроенные предикаты.

Результат:

Рис.1.2.1. Использование встроенных предикатов.

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

 

Исходные данные:

Рис.1.3.1. Текст программы.

 

Результат:

Рис.1.3.2. Предикатная форма программы.

Рис.1.3.3. Запросы и результаты запросов к программе.

 

 

Задание 1.4. Построить базу знаний на основе текста, задать к этой базе знаний запросы.

 

Исходные данные:

Рис.1.4.1. Исходные данные.

 

Результат:

Рис.1.4.2. Программа в предикатной форме.

Рис.1.4.3. Запрос №1.

Рис.1.4.4. Запрос №2.

Рис.1.4.5. Запрос №3.

 

Лабораторная работа №2
Структуры данных. Сложные утверждения в прологе

Цель: Знакомство со структурами данных и их унификацией. Построение сложных утверждений в Прологе с помощью связок "и", "или", "не".

Задание 2.1. Набить базу и задать к ней запросы.

Исходные данные:

Рис.2.1.1. Исходные данные к программе.

Результат:

Рис.2.1.2. База знаний.

Рис.2.1.3. Запрос №1.

Рис.2.1.4. Добавленное к базе правило.

Рис.2.1.5. Запрос №2.

 

Задание 2.2. Ввести базу и написать к ней запросы.

Исходные данные:

Рис.2.2.1. Исходные данные, текст программы.

Рис.2.2.2. Запросы к базе.

Результат:

Рис.2.2.3. База знаний.

Рис.2.2.4. Запрос №1.

Рис.2.2.5. Запрос №2.

Рис.2.2.6. Запрос №3.

Рис.2.2.7. Запрос №3.

Задание 2.3. Задать к базе из задания 1.4 запросы.

Исходные данные:

Рис.2.3.1. Исходные данные, запросы к базе.

Результат:

Рис.2.3.2. Запрос №1.

Рис.2.3.3. Запрос №2.

Задание 2.4. Описать базу знаний на прологе и задать к ней запросы.

Исходные данные:

Рис.2.4.1. Исходные данные.

Результат:

Рис.2.4.2. База знаний и добавленное правило, что имеет только Иван.

Рис.2.4.3. Запрос №1.

Рис.2.4.4. Запрос №2.

Рис.2.4.5. Запрос №3.

Рис.2.4.6. Запрос №4.

Рис.2.4.7. Добавленные к базе факты.

Рис.2.4.8. Запрос №5.

Рис.2.4.9. Добавленное правило к базе.

Рис.2.4.10. Запросы № 6 и 7.

 

Рис.2.4.11. Добавленные к базе факты.

Рис.2.4.12. Запрос №8.

Рис.2.4.13. Запрос №9.

 

Лабораторная работа №3

Рекурсия в прологе

Цель: Знакомство с основным методом программирования в Прологе - рекурсией. Замена рекурсии итерацией (программирование с накопителями). Арифметические предикаты.

Задание 3.1. Запустить программу с рекурсией и с условием выхода.

Исходные данные:

Рис.3.1.1. Исходные данные.

Результат:

Рис.3.1.2. Программа с рекурсией.

Рис.3.1.3. Запрос к программе с рекурсией.

 

Задание 3.2. Запустить программу с отладчиком для вычисления факториала и ввести к ней запросы.

Исходные данные:

Рис.3.2.1. Исходные данные.

Результат:

Рис.3.2.2. Программа с рекурсивным вычислением факториала.

Рис.3.2.3. Запросы к программе.

Задание 3.3. Выполнить программу с накопителем и задать к ней запросы.

Исходные данные:

Рис.3.3.1. Исходные данные.

Результат:

Рис.3.3.2. Программа с накопителем.

Рис.3.3.3. Запросы к программе с накопителем.

 

 

Задание 3.4. Выполнить программу для итеративного определения факториала и задать к ней запрос.

Исходные данные:

Рис.3.4.1. Исходные данные.

Результат:

Рис.3.4.2. Программа с итеративным определением.

Рис.3.4.2. Запрос к программе.

 

Задание 3.5. Запустить программу с рекурсией по данным и задать к ней запросы.

Исходные данные:

Рис.3.5.1. Исходные данные.

Результат:

Рис.3.5.2. Программа с рекурсией по данным.

Рис.3.5.3. Запросы к программе с рекурсией по данным.

 

Задание 3.6. Написать программу для вычисления n-ого числа Фибоначчи, для вычисления суммы чисел Фибоначчи.

Результат:

Рис.3.6.1. Программа для вычисления чисел Фибоначчи.

Рис.3.6.2. Запрос на вычисление n-ого числа Фибоначчи.

Рис.3.6.3. Запрос на вычисление суммы чисел Фибоначчи.

Вывод: итак, мы ознакомились с интерпретатором SWI/PROLOG, включая использование меню, создание программных файлов, запуск программ в этой среде. Познакомились со структурами данных и их унификацией, построили сложные утверждения в Прологе с помощью связок "и", "или", "не". А также изучили основной метод программирования в Прологе - рекурсией. Заменили рекурсии итерацией (программирование с накопителями) и изучили арифметические предикаты.

ЛАБОРАТОРНАЯ РАБОТА № 5.
СОЗДАНИЕ И ОБУЧЕНИЕ ПРОСТЕЙШЕЙ НЕЙРОННОЙ СЕТИ

Цель – освоение основных приемов работы с демонстрационной версией программного продукта TRAJAN в ходе создания и обучения простейшей нейронной сети.

Задание.

1. Создать и обучить нейронную сеть, которая будет способна решать логическую задачу исключающего «ИЛИ». Таблица истинности для весьма полезной логической функции приведена в табл. 1.

2. Проверить работоспособность нейронной сети.

3. Ответить на вопросы для самопроверки № 1 – 4.

 

Таблица 1. Таблица истинности для логической функции исключающего «ИЛИ»

Вход 1 Вход 2 Истина?
     
     
     
     

 

Решение.

Рис. 1 Нейронная сеть 2-2-1

 

Рис. 2 Паттерн для XOR

 

Рис. 3 График обучения

 

Рис. 4 Статистика (после обучения)

 

1. На каких направлениях и для решения каких типовых задач применяются искусственные нейронные сети?

 

Ответ. Направления, в которых применяются ИНС: распознавание образов и классификация, принятие решений и управление, кластеризация, прогнозирование, анализ данных, оптимизация и т.д. Типовые задачи, для решения которых применяются ИНС: предсказания финансовых временных рядов, нейроуправление, экономика и многие другие.

 

2. Дайте определение искусственного нейрона и перечислите его основные свойства.

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

- математическая модель нейрона

– выходной сигнал нейрона

Где wi – вес синапса (связи), i=1..n, b – значение смещения, s – результат суммирования, xi – компонент входной вектора (входной сигнал); f – функция активации. Синаптические связи с положительными весами называют возбуждающими, с отрицательными весами - тормозящими.

3. Перечислите и поясните применяемые виды активационных функций.

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

Сигмоидальная логистическая функция:

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

Гиперболический тангенс:

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

 

4. Какое основное отличие искусственных нейронов, которые используются для построения нейронных сетей, получивших название персептронов?

 

Ответ. Персептроны – это нейронный сети с одним скрытым слоем, с пороговой передаточной функцией и с прямым распространением сигнала (персептрон – частный случай ИНС). Элементарный персептрон состоит из элементов трёх типов: S-элементов, A-элементов и одного R-элемента. S-элементы - это слой сенсоров, или рецепторов. A-элементы называются ассоциативными, потому что каждому такому элементу, как правило, соответствует целый набор (ассоциация) S-элементов. A-элемент активизируется, как только количество сигналов от S-элементов на его входе превысило некоторую величину. Сигналы от возбудившихся A-элементов, в свою очередь, передаются в сумматор R, причём сигнал от i-го ассоциативного элемента передаётся с коэффициентом wi. Этот коэффициент называется весом A—R связи.

 

ЛАБОРАТОРНАЯ РАБОТА № 6.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-07-29 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: