Искусственный интеллект: нейросеть проверки математических заданий

XXII Международный конкурс научно-исследовательских и творческих работ учащихся
Старт в науке

Искусственный интеллект: нейросеть проверки математических заданий

Токарева А.А. 1
1МКОУ "Бисертская средняя школа№1"
Копылова Л.А. 1
1МКОУ "Бисертская средняя школа№1"
Автор работы награжден дипломом победителя I степени
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

Введение

O понятии «нейронные сети» каждый слышал в курсе биoлогии восьмого класса. Нейрон — это клетка, которая является структурной единицей нашей нервной системы. Посредством нейронов, сгруппированных в сети, по нашему телу передаются сигналы: например, от зрительных органов в мозг. Учёных давно интересовала возможность воссоздать работу похожей сети вне человеческого организма, иными словами – повторить искусственную нейронную сеть, которая могла бы повторять процессы, проходящие в головном мозгу и, самое главное, могла бы самостоятельно развиваться и обучаться. Нейронные сети применяются в различных областях: компьютерное зрение, обработка естественного языка, включая перевод с языка на язык, распознавание речи. При распознавании изображений нейронные сетимогут классифицировать различные неизвестные изображения. При обработке естественного языка нейронные сети помогают переводить и обобщать текстовую информацию. Мой же проект направлен на создание такого искусственного интеллекта, который поможет учителям не сталкиваться с монотонной работой. Он будет самостоятельно проверять тестовые работы учеников и показывать количество верных ответов. Такая программа поможет предотвратить человеческий фактор и облегчить работу учителя.

Обоснование значимости проекта:согласно проведенному экспертами "Актион Образование" летом 2023 года опросу российских учителей, почти каждый второй педагог тратит большую часть своего рабочего времени на бумажную работу, мой проект направлен для решения данной проблемы, освободить учителей от проверки работ обучающихся.

Цели проекта:изучить искусственный интеллект и создать нейросеть для проверки математических заданий.

Задачипроекта:

  1. изучить искусственный интеллект, его возможности и потенциал;

  2. разобраться с механизмом работы;

  3. написать программу на языке Python и обучить нейросеть проверки математических заданий.

Гипотеза: современный школьник способен самостоятельно написать искусственный интеллект, который может помочь учителю в работе.

Методы исследования:

  1. обобщение полученной информации о нейросетях;

  2. проведение анализа по найденной информации;

  3. создание своей нейросети.

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

  1. Теоретическая часть

    1. История Искусственного Интеллекта

Одной из первых работ в области принято считать статью ComputingMachineryandIntelligence английского математика Алана Тьюринга, вышедшую в 1950 году. В ней был сформулирован тест Тьюринга для определения наличия у машины интеллекта. В его классическом варианте три игрока: компьютер, женщина и судья, играют в следующую игру. Задача судьи — понять, кто из игроков женщина. Задача компьютера — обмануть судью и убедить его, что он является женщиной. Задача женщины — убедить судью, что женщиной является она. Игроки не видят друг друга и могут общаться только посредством текстовых сообщений. Если машине удаётся обмануть судью, то она считается прошедшей тест. С годами исследователи пришли к выводу, что оценивать только одну составляющую интеллекта машины — его способность коммуницировать с людьми — не совсем корректно. Поэтому сейчас тест Тьюринга на практике не используется.

В 1957 году американский психолог Фрэнк Розенблатт разработал самообучающуюся модель, которая является прародителем современных методов глубокого обучения — «перцептрон Розенблатта». Структура модели была вдохновлена структурой реального нейрона.

Нейрон — это клетка, которая является структурной единицей нашей нервной системы. Посредством нейронов, сгруппированных в сети, по нашему телу передаются сигналы: например, от зрительных органов в мозг.

Перцептрон — это «искусственный нейрон», то есть некоторая математическая модель, которая является сильным упрощением строения реального нейрона. Передаваемые нейрону и от нейрона сигналы представляются в виде чисел.

Несмотря на все совершённые в области искусственного интеллекта открытия, в 1970-е она погрузилась в состояние застоя. Этот период называется «зимой искусственного интеллекта».

С самого начала планы исследователей в области искусственного интеллекта были очень оптимистичными. Так, в 1970 году Марвин Ли Минский в интервью сказал: «В период от 3 до 8 лет мы создадим машину, равную по своим интеллектуальным способностям обычному человеку». Исследователи искренне верили в то, что говорили. Они понимали, что стоят на пороге грандиозного прорыва для всего человечества, и рано или поздно он произойдёт. Но точных сроков никто дать так и не смог. Подобные обещания создавали завышенные ожидания от области. И в момент, когда эти ожидания переставали оправдываться, был опубликован отчет о почти полном прекращении финансирования исследований в области, который в итоге привел к заморозке активных исследований искусственного интеллекта на многие годы.

Следующий подъём искусственного интеллекта пришёлся на первую половину 80-х. Импульс для подъёма дал успех экспертных систем, которые начали активно разрабатываться в конце 60-х и начале 70-х годов. Экспертная система — программа, которая отвечает на конкретный вопрос или решает поставленную задачу, основываясь на правилах, полученных от экспертов. Преимуществом экспертных систем являлось то, что они фокусировались на решениях очень специфичных задач. Кроме того, ранние экспертные системы были просты с точки зрения разработки и добавления новых правил.

Однако с ростом интереса к искусственному интеллекту стали непропорционально расти ожидания от области, порождавшиеся ранними успехами экспертных систем. Но их развитие просто не успевало за волной энтузиазма, поднявшейся вокруг области. В 1987 году в США произошёл коллапс индустрии Lisp-машин. Индустрия занималась производством компьютеров для запуска программ на языке программирования Lisp, который активно применялся для создания экспертных систем. Крах индустрии, созданной для развития технологий искусственного интеллекта, серьёзно подорвал её позиции с точки зрения инвесторов. Параллельно в 1992 году в Японии стало окончательно понятно, что инициатива создания «Компьютера пятого поколения», который должен был стать основной платформой для развития приложений на базе искусственного интеллекта, тоже потерпела неудачу. На фоне нараставшего пессимизма по отношению к области искусственного интеллекта к концу 1993 года более 300 компаний, занимавшихся разработками в сфере, закрылись, обанкротились или были приобретены другими компаниями. Этот ряд факторов в итоге привели ко второй зиме искусственного интеллекта.

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

Можно выделить несколько основных причин этого успеха. Во-первых, в 90-е годы вычислительная мощность компьютеров неуклонно росла. В 1997 году алгоритм, разработанный DeepBlue, обыграл действующего чемпиона мира по шахматам Гарри Каспарова. Это был прорыв в области искусственного интеллекта. Во-вторых, увеличивался объём данных, доступных для построения моделей искусственного интеллекта, которые с наступлением эпохи интернета становились всё более доступными. Так, в 90-е расцветают методы машинного обучения, основанные на теории вероятностей и математической статистике.

В России 30 мая 2019 года на совещании по развитию цифровой экономики под председательством В.В. Путина было принято решение о подготовке национальной стратегии по искусственному интеллекту. В её рамках готовится федеральная программа с выделением 90 млрд рублей.

    1. Что такое искусственный интеллект и нейросеть?

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

Есть 3 основных метода обучения искусственного разума. Они отличаются количеством ресурсов, которые необходимо выделить для тренировки, а также предсказуемостью результатов.

Модели машинного обучения:

  1. С учителем. Данный метод тренировки искусственного разума предполагает то, что ИИ обучается по размеченным данным и только правильным ответам

  2. Без учителя. Эта методика отличается от первой тем, что компьютер не получает верные ответы. Интеллект должен сам найти скрытые закономерности

  3. С подкреплением. Это популярный метод тренировки ИИ, который чем-то похож на дрессировку животных. Человек дает задачу компьютеру и оценивает результат. Алгоритмы автоматически настраиваются в зависимости от ответов пользователя

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

Для разных задач применяются различные виды и типы нейронных сетей, среди которых можно выделить:

  1. Сверточные сети. Являются одними из самых популярных типов искусственных нейронных сетей. Они используются в распознавании визуальных образов (видео и изображения), рекомендательных системах и обработке языка.

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

  3. Нейронная сеть Хoпфилда. Это полносвязная нейронная сеть с симметричной матрицей связей. В процессе работы динамика таких сетей сходится к одному из положений равновесия.

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

    1. Зачем нужны нейронные сети?

Для выполнения задач, с которыми могут справиться люди, но не может справиться алгоритм. При этом нейронная сеть работает быстрее человека, она беспристрастна и у неё отсутствует фактор человеческих ошибок. Это может быть аналитическое предсказание, например, рост или падение курса валют. Анализирование и отбор объектов, подходящих под определённые параметры. К примеру, нейронная сеть получает доступ к электронному журналу школы и предлагает подходящие каждому ученику направления дальнейшего обучения. Распознавание – сейчас это наиболее активное использование нейронных сетей. Большое количество различных приложений работают именно так. Это и графические редакторы, определяющие положение лица на фотографии, глаз, и умеющие проводить корректировку формы лица, цвета глаз, без дополнительного вмешательства пользователя, по одному указанию. Но могут ли нейросети облегчить работу учителю? Удержать внимание учеников – тонкое искусство, особенно в случае с младшими школьниками и дошкольниками. Им трудно заниматься, не отвлекаясь, когда хочется поиграть или пообщаться с друзьями. При правильном использовании искусственный интеллект поможет включить учеников в процесс.

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

    1. Какие бывают Нейросети?

    1. G amma — нейросеть, которая сама разрабатывает дизайн, придумывает текст и фото для будущей презентации. Также вы можете что-то поменять или добавитьв готовой презентации

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

    3. Fusion Brain – нейросеть для создания изображений. Этот искусственный интеллект способен создавать хорошие изображения в различных стилях.

    4. Synthesia. Эта нейросеть за минуты формирует видео из текстового описания, сценария, инструкции. В ней есть несколько десятков моделей, которые будут произносить текст.

    5. M athGPT — нейросеть, предназначенная для решения математических задач. Она использует глубокое обучение для того, чтобы понять математические формулы, и способна решать сложные задачи быстро и эффективно.

  1. Практическая часть

    1. Язык программирования и среда разработки

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

Python — это язык программирования, который широко используется в интернет-приложениях, разработке программного обеспечения, науке о данных и машинном обучении. Разработчики используют Python, потому что он эффективен, прост в изучении и работает на разных платформах. Программы на языке Python можно скачать бесплатно, они совместимы со всеми типами систем и повышают скорость разработки.

Python разработан Гвидо Ван Россумом (Guido Van Rossum), программистом из Нидерландов. Он начал работу над языком в 1989 году в центре Centrum Wiskunde & Informatica. Изначально язык был полностью любительским проектом: Ван Россум просто хотел чем-то занять себя на рождественских каникулах. Название языка было взято из телешоу BBC «Летающий цирк Монти Пайтона», большим поклонником которого являлся программист. 

Среда разработки, в которой выполнена работа PyCharm — это кроссплатформенная интегрированная среда разработки для языка программирования Python, разработанная компанией JetBrains на основе IntelliJ IDEA. Предоставляет пользователю комплекс средств для написания кода и визуальный отладчик.

При работе я также использовала библиотеки.

Библиотека — это набор часто используемых кодов, которые разработчики могут включать в свои программы, чтобы не писать код с нуля. По умолчанию в Python доступна стандартная библиотека, которая содержит большое количество многократно используемых функций.

Данный искусственный интеллект использует две библиотеки: OpenCV и Tesseract.

OpenCV — это открытая библиотека для работы с алгоритмами компьютерного зрения, машинным обучением и обработкой изображений. Написана на C++, но существует также для Python, JavaScript, Ruby и других языков программирования. Работает на Windows, Linux и MacOS, iOS и Android. OpenCV может использоваться везде, где нужно компьютерное зрение. Эта отрасль IT работает с технологиями, которые позволяют устройству «увидеть», распознать и описать изображение. Компьютерное зрение дает точную информацию о том, что изображено на картинке, с описанием, характеристиками и размерами. Также библиотека работает с машинным обучением — отраслью, которая обучает алгоритмы действовать тем или иным образом.

Tesseract - это механизм оптического распознавания символов для различных операционных систем. Это свободное программное обеспечение, выпущенное по лицензии Apache. Первоначально разработанное Hewlett-Packard в 1980-х годах, оно было выпущено с открытым исходным кодом в 2005 году, а разработка спонсировалась Google в 2006 году.

    1. Создание нейросети

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

А теперь давайте поближе познакомимся с моей программой. Для начала я взяла фото возможной работы ученика и загрузила его в свою программу. [Приложение 1]

Так как правильные ответы совпадали с ответами, данными учеником, программа вывела такой результат.

Теперь попробуем допустить ошибку в работе ученика. Представим, что правильными ответами является данная последовательность чисел: «2, 5, 5, 7, 8, 9, 3»

Программа выводит:

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

 

 

 

 

 

 

 

 

 

 

 

Заключение

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

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

Список литературы и интернет - ресурсов:

  • https://neuronus.com/history/5-istoriya-nejronnykh-setej.html 

  • https://stevsky.ru/kompiuteri/iskusstvennie-neyronnie-seti-ins-chto-takoe-neyroseti-kak-oni-rabotaiut-preimuschestva-i-nedostatki-iskusstvennich-neyronov-gde-ispolzuiutsya-neyroseti

  • https://ucvt.org/blog/nejronnye-seti-dlya-shkolnika-prosto-o-slozhnom

  • https://aws.amazon.com/ru/what-is/python/

  • https://ru.wikipedia.org/wiki/PyCharm

  • https://blog.skillfactory.ru/glossary/opencv/

  • https://www.python.org/

  • https://pythontutor.ru/

  • Алгоритмы построение и анализ третье издание - Томас Кормен, Чарльз Лейзерсон, Рональд Ревест, Клиффорд Штайн.

Приложение 1

Просмотров работы: 21