Диссертация. Основам искусственного интеллекта и анализа данных в курсе информатики на уровне среднего общего образования Научная
Скачать 4.76 Mb.
|
C – предусматривает вопрос овладении языками программирования С, C# или С. Они были объединены в одну группу, т.к. в лицеях и школах часто используется C для подготовки к КЕГЭ и решению задача С+ применяется при работе с робототехнической платформой Arduino; Python – владение соответствующим языком программирования. В семантическом представлении данных важно, что все отвечающие положительно на последующий вопрос овладении, должны иметь положительный ответ в этом пункте. Figma – владение инструментом прототипирования приложений. Часто данный продукт изучают обучающиеся, которые в большей степени 45 заинтересованы неконкретно программированием или аппаратным обеспечением, а хотят впоследствии связать свою карьеру с UI/UX; Fusion 360 – владение инструментом моделирования от Autodesk. Большинство серьёзных соревнований предусматривает использование данного обеспечения для создания моделей и даже собственных элементов, а также создания моделей для публикации в сопровождающей инженерной документации. Сюда же относится вопрос овладении технологией 3D- печати Arduino – программно-аппаратная платформа, ориентированная на большее погружение в электронику, чем распространённые наборы от LEGO. Поскольку платформа является свободной, она предусматривает создание собственных плати решений, что значительно расширяет возможности ее применения. Обычно программируется на С Raspberry – владение программно-аппаратной робототехнической платформой Raspberry Pi, программируемой обычно на Python. Хотя одноплатные компьютеры Raspberry Pi удобно использовать в связке с Arduino, чаще они применяются самостоятельно для проектов, требующих более сложное программирование Мобильность – не владение технологией, однако очень важный вопрос для любого преподавателя. Не всегда имеется возможность обеспечить инклюзию для особенных детей на должном уровне, если рассматриваются федеральные или иные соревнования, требующие поездок. Таким образом, поставленные вопросы позволят оценить уровень вовлеченности обучающихся в разные сферы инженерной деятельности и сформировать наиболее комфортные команды с высоким уровнем коллаборации (сотрудничества. Таблица для копирования (пример csv), основанная на настоящих данных обучающихся инженерного кружка Лицея г. Реутов: ID;C;Python;Figma;Fusion Мобильность 46 001;1;1;0;0;1;1;1 002;1;0;0;0;1;0;1 003;1;0;0;0;1;0;1 004;1;0;0;1;1;0;1 005;0;0;1;0;0;0;1 006;0;0;1;0;0;0;1 007;0;1;0;1;0;0;1 008;0;0;1;1;0;0;0 009;0;0;1;0;0;0;1 010;1;0;0;0;1;0;1 011;0;1;1;1;0;1;1 012;0;0;1;0;0;0;1 013;0;1;0;0;0;1;1 014;1;1;0;1;1;1;1 015;1;0;1;1;1;0;1 016;0;1;1;1;0;0;1 017;0;0;0;0;0;0;1 018;0;1;1;1;0;1;1 019;1;1;1;0;0;1;1 020;1;1;0;0;0;1;1 Перейдём к написанию скрипта для обработки описанных данных. Заметим, что в нашей выборке всего 20 позиций, но скрипт рассчитан на куда большее количество участников, заполнивших анкеты. Данные с фамилиями участников будут храниться в отдельном файле. Прежде чем начать написание скрипта StudentsGroup.py, потребуется установка модуля Fuzzy C-Means. Для этого в терминале требуется запустить следующую команду для менеджера пакетов pip: pip install fuzzy-c-means 47 Эту команду требуется запускать только один раз. Подключение библиотек производится аналогично предыдущему примеру import numpy as np import pandas as pd Далее подключим инструмент Fuzzy C-Means из установленного ранее на компьютер модуля from fcmeans import FCM Начнём работу непосредственно сданными. Во-первых, импортируем таблицу с результатами опроса. Нам надо помнить, что в качестве разделителя использовалась точка с запятой, а первая строка была занята заголовком. Поскольку в Python строки считаются сто заголовок занял строку 0. Запишем импортированные с помощью модуля pandas данные в переменную trans_set: trans_set=pd.read_csv('students.csv', sep=';',header=0) Следующим шагом сохраним от этих переменных значения, заодно сохранив данные в новую переменную, чтобы всегда была возможность вернуться к исходным записям X=trans_set.values Для обучения столбец с идентификационными номерами анкет не потребуется, его можно отрезать X=X[:,1:] Поскольку среди переменных были строковые, правильным решением будет принудительно привести все переменные к вещественному типу с помощью команды X = X.astype('float32') Определим количество кластеров, те. групп, на которые надо разбить обучающихся. Для этого предложим ввод значения с клавиатуры пользователю 48 clusters = Сколько нужно сделать групп - ")) Для запуска мы используем пример Сколько нужно сделать групп - 3 Удобство работы с готовыми библиотеками и модулями можно оценить последующим двум командам. Вся работа с алгоритмом нечёткой классификации в данном случае сводится к передаче количества кластеров и настройке (фиттингу) модели на конкретном массиве данных fcm = FCM(n_clusters=clusters) fcm.fit(X) Теперь получим результаты. Сохраним центры полученных кластеров fcm_centers = fcm.centers Также получим предполагаемые ярлыки кластеров для нашей выборки fcm_labels = fcm.predict(X) Осталось вывести информацию на экран в виде, понятном ментору. Для этого мы применим небольшую манипуляцию с типами данных fcm_centers = fcm_centers.astype('float32') fcm_centers = np.round_(fcm_centers) Если бы мы ранее воспользовались командой вывода на экран описаний центров именно с процентной вероятностью, мы бы получили показания вероятности ответов в виде вещественных значений с большим количеством знаков после запятой. Поскольку вопросе мы давали только два варианта ответов, здесь мы можем без потери семантической составляющей использовать округление дои. Такой вариант представления даст больше понимания человеку, чем точные ответы, которые бы отвлекали внимание читающего. Выведем результаты работы модели на экран Типичные представители групп владение технологией или мобильность C | Python | Figma | 49 Fusion 360 | Arduino | Raspberry | Мобильность, fcm_centers) В нашем случае вывод выглядел следующим образом Типичные представители групп (владение технологией или мобильность C | Python | Figma | Fusion 360 | Arduino | Raspberry | Мобильность [[0. 0. 1. 0. 0. 0. 1.] [1. 0. 0. 0. 1. 0. 1.] [0. 1. 1. 1. 0. 1. 1.]] Первый типичный представитель это ученик, владеющий Figma и готовый ездить на соревнования. Он может участвовать во всяческих конкурсах с более творческой составляющей, а также в международных соревнованиях. Второй типичный представитель владеет языком Сработает си готов ездить на соревнования. Следовательно, он может быть включен в команду для участия в, например, Hello, Robot. Arduino. Третий типичный представитель готов к сложным соревнованиям – он умеет и прототипировать программные интерфейсы, и создавать 3D- модели, также программирует на Python для Raspberry Pi. Полученные результаты близки к обычному стихийному разбитию команд, когда сами участники выбирают направления, однако в случае самостоятельного выбора он затягивается на несколько занятий. Если использовать скрипт, время распределения значительно сокращается. Чтобы продолжить работу, требуется понять не только, какие соревнования и команды следует выбрать, но и кого в них пригласить. Импортируем информацию о фамилиях обучающихся names=pd.read_csv('names.csv', sep=';',header=0) names=names.values 50 Выведем на экран соответствие между именем и фамилией и меткой команды, полученной с помощью модели for i in range(len(names)): print(i+1,'. ',names[i],' в группе ',fcm_labels[i]+1) Скрипт может быть легко расширен по количеству вопросов – достаточно добавить их в исходную таблицу. В коде потребуется изменить только часть строки вывода, убрав перечисление вопросов. Пример заголовка и первых двух строк в файле names.csv: Фамилия, ИО. Синичкина, В.Ю. Ковалева, А.В. Пример работы над проектом в Jupiter Notebook (см. Рис. 6): Рис. 6. Интерфейс запущенной тетради в Jupiter Notebook 51 Учитывая, что скрипт показал примерно те же результаты, что и работа педагога, очевидно, что его использование позволит избежать конфликтов. Подобные небольшие инструменты для решения частных проблем в значительной мере способны автоматизировать и уменьшить нагрузку на преподавателя дополнительного образования и учителей в целом. Применение готовых модулей показало, что код для проектов довольно краток – его легко повторить даже при минимальном знании языка. Перейдём к рассмотрению основ искусственного интеллекта как элемента содержания образования. Количество научных работ и публикаций, посвящённых данной теме, постоянно растёт. Как упоминалось во введении, можно выделить несколько направлений внедрения темы Основы искусственного интеллекта и анализа данных на уровне основного общего образования и, преимущественно, среднего общего образования (см. рис. 5). Во-первых, чаще всего предлагаются курсы или модули, использующие искусственный интеллект как технологию, слабо затрагивающие или вовсе не затрагивающие искусственный интеллект как науку. Во-вторых, включение темы в урочную или внеурочную деятельность также влияет на выбор конкретных инструментов, программных среди средств реализации. Например, при включении темы во внеурочную деятельность в рамках робототехники искусственный интеллект чаще рассматривается в разрезе компьютерного зрения с применением готовых библиотек на Python или C++ (наиболее распространённый вариант – модуль OpenCV) и решением конкретных задач, напрямую связанных с регламентом соревнований. Искусственный интеллект может рассматриваться через применение математических пакетов на уроках геометрии или алгебры в старшей школе. Наконец, на уроке информатики, в зависимости от уровня подготовки обучающихся и изучаемых ими языков, искусственный интеллект чаще 52 рассматривается в контексте введения в анализ данных и рассматриваются входящие в него статистические методы, реализуемые средствами табличного процессора (например, MS Excel), демонстрационные готовые программы (например, в кейсах Академии искусственного интеллекта от Сбербанк) или реализация на выбранном языке программирования в виде вызова инструментов готовых модулей или написания алгоритма с нуля. Место искусственного интеллекта в содержании образования тесно связано, и соответственно, может быть интегрировано с изучением линий Моделирование и Алгоритмизация и программирование. Так изучаемая алгебра предикатов является продолжением изучения алгебры логики на уровне основного общего образования, а изучение алгоритмов деревьев решений — углубление работы с программами бинарных деревьев решений. Алгоритмы искусственного интеллекта применяются к данным для создания моделей, и чаще всего речь идёт об углублении изучения баз данных и добавления интеллектуальной составляющей в СУБД. Тема органично объединяет и углубляет в себе различные элементы, изученные ранее в основной школе. Подробнее месту искусственного интеллекта в курсе информатики посвящён следующий параграф. Далее рассмотрим варианты использования интеллектуальных алгоритмов в качестве составной части технологии обучения. Интеллектуальные алгоритмы и искусственный интеллект могут использоваться в качестве технологии при подготовке обучающимися индивидуального проекта, это применение алгоритмов искусственного интеллекта и инструментов науки о данных в качестве средства для достижения цели проекта. Если искусственный интеллект рассматривается в индивидуальном исследовательском проекте только как наука, а не технология, это отчасти ограничивает выбор тематики обучающимся. Быстрое развитие фреймворков и языков программирования, специальных инструментов с дружественным для не-программистов интерфейсом 53 позволяет свободно их использовать, имея лишь базовое представление о принципах работы интеллектуальных систем. В описанном случае интеллектуальные алгоритмы (ИА) становятся частью системы управления базами данных (СУБД, отвечающей за подготовку и статистическую обработку данных, прогностический анализ см. рис. 7). Содержание темы Основы искусственного интеллекта и анализа данных в старшей школе является продолжением линии Моделирование и изучения информационных систем (ИС), поэтому интеллектуальные системы рассматриваются как усложнение СУБД в ИС. Интеллектуальные системы позволяют обрабатывать большее количество данных, причём зачастую — разной природы, что удобно для автоматизации обработки и получения выводов на основе больших данных. Дополнительно в инструментарий СУБД могут быть включены статистические методы (необязательно интеллектуальные алгоритмы, например, на шаге подготовки данных при введении нормы на основании характеристик выборки перед переходом на шаг семантического поиска, когда будут важны связи между записями и производится добыча новых знаний. Любой проект, имеющий отношение к науке о данных и интеллектуальным системам, всегда проходит несколько итераций, поэтому возможен спуск на предыдущий шаг для повторной обработки данных после неэффективной работы интеллектуальных алгоритмов для улучшения результатов или выделения новых значимых характеристик, которые влияют на последующий выбор метрики, алгоритма и коэффициентов [32]. В индивидуальном проекте обучающегося база данных (БД) состоит из нескольких компонентов. В качестве основы БД выступают профильные данные и знания — в рамках онтологии той области, которой посвящена работа обучающегося. 54 Рис. 7. Информационная система как часть индивидуального проекта Например, специальные знания могут состоять из информации о многообразии видов и пересечении ареола обитания наблюдаемых животных. Следующим компонентом БД выступают метапредметные данные, необходимые для представления проекта. Кроме того, в БД заносятся необработанные результаты измерений (экспериментальные данные, включая полученные от датчиков автоматизированных систем. Если же в подобной системе осуществлялась обратная связь (с обработкой и возвратом команд после отработки интеллектуальных алгоритмов, то можно говорить о применении интеллектуальных робототехнических систем (ИРС) [5]. Конечно, подобные ИРС непохожи на сложные производственные комплексы, нов них реализуются те же принципы и 55 идеи. Они в целом пригодны для обучающих целей в настоящее время, думается временно до следующего серьезного шага в развитии искусственного интеллекта. Стоит напомнить, что робототехника в целом — это одна из областей прикладного применения искусственного интеллекта [45, Глава 4]. Изучение образовательной робототехники в школе начинается с вопросов автоматизации см. рис применение алгоритмов без обратной связи программы для аниматроники на Lego Education WeDo 2.0), калибровка датчиков программистом с перезаписью программы на устройстве, управление оператором (например, в программах в среде Scratch с клавиатуры. Затем алгоритмы усложняются добавляются перезаписываемые коэффициенты, появляется саморегуляция Обычно такие решения создаются для прохождения заданий для соревновательной робототехники, например, применение П-регулятора при движении по линии. Однако, к этому же уровню относится снятие показаний датчиков при автоматическом поливе растений или для отправки команд при управлении умным домом. В более сложных робототехнических системах, всё ещё включаемых в образовательную робототехнику, при решении требуются алгоритмы, способные к самообучению то есть с применением методов автоматической классификации примеров. В случае, если такие примеры задаются изначально, это относится к обучению с учителем. Если же контрольная и тестовая выборки получаются роботом вовремя его применения, речь идёт об обучении без учителя. 56 Рис. Выход на искусственный интеллект через робототехнику в школе Обе эти ситуации иллюстрируют применения интеллектуальных алгоритмов, что также является областью искусственного интеллекта (см. рис Сюда относятся, например, задачи компьютерного зрения реализуемого физически через камеру робота или датчики цвета. Такие задания встречаются в регламенте соревнований для 8-9 классов, что 57 опережает изучение вопросов искусственного интеллекта в курсе информатики в старшей школе. В соревнованиях для 10-11 класса уже предусматривается выбор роботом оптимального алгоритма (классификатора) действия, исходя изданных, поступающих от датчиков — принятие решений. Для этого могут использовать, например, нейронные сети. Отметим, что автоматизированное принятие решений было одной из ведущих областей кибернетики и информатики, повлиявших на введение данного предмета в школе. Подготовка к соревнованиям с применением компьютерного зрения встраивается в качестве практической части при изучении темы Интеллектуальные алгоритмы в 11 классе [45]. К этому моменту у обучающихся уже сформирована потребность в фундаментализации применяемого знания для создания в будущем собственных, более эффективных решений. Также возникает потребность в объяснении, почему на данный момент не созданы алгоритмы сильного искусственного интеллекта (General Artificial Intelligence, GAI), обладающего способностью к самопреобразованию (самореконструированию). Искусственный интеллект в образовании внедряется в качестве сопровождающей образовательный процесс цифровой технологии во многих странах, как было отмечено ранее. Рассмотрим на примере США, где широко распространены инженерные соревнования с элементами ИИ (в отличие от европейских стран, примерно в равной степени с Россией по количеству участников, а также заметна активная позиция самого сообщества учителей информатики в участии и организации соревнований. Так, например, в Америке изучение ИИ как темы по информатике (прим Computer Science) ранее не предусматривалось и впервые начало фигурировать только в последнем K-12 Computer Science Standard [173]. 58 Рис. Уровни систем управления и искусственный интеллект 59 Согласно докладу Рынок искусственного интеллекта в образовании в США 2018-2022» (Artificial Intelligence Market in the US Education Sector 2018-2022)[169], предоставленном компанией Technavio, прогнозируется рост применения ИИ в этой стране для нужд информатизации образования до 48% процентов к 2022 году. Стоит отметить, что основную роль отводят чат-ботам как помощникам учителя. Исследователи отмечают, что рынок искусственного интеллекта и машинного обучения довольно концентрированный (географически есть лишь несколько центров активности исследований и внедрения, как ив случае с этим сектором в России. Стоит отдельно отметить, что особое внимание уделяется перспективе развития области именно в сегменте цифровой модели ученика, то есть адаптации и персонализации образовательных услуг с помощью искусственного интеллекта. Аналогичная тенденция прослеживается на рынке предложении в России. Вопросы изучения цифрового следа как студентов, таки школьников освещаются на всех крупнейших образовательных мероприятиях 2019-2021 года. В России наиболее известен проект по сбору и анализу цифрового следа в образовании Университет 20.35» ( https://2035.university ). Сегодня данный ресурс также обеспечивает доступ к маркетплейсу решений в сфере AIEd для сопровождения образования. Многие исследователи акцентируют внимание на то, что искусственный интеллект в общеобразовательной школе (K–12) не должен быть только инструментом для обеспечения безопасности и эффективной работы в классе, но и должен изучаться в качестве темы, чтобы познакомить обучающихся с условиями работы в современном мире. В основном речь идёт о навыках использования готовых решений и компетенций, связанных с пониманием выбора сервисов и возможностей ИИ, и этики применения интеллектуальных алгоритмов. Похожий подход используется в начальной школе Китая, где основной задачей курса 60 искусственного интеллекта является знакомство ребенка со сферами его применения в окружающей действительности, формирование здорового и толерантного отношения к интеллектуальным системам. Ассоциация по развитию искусственного интеллекта (AAAI) и Ассоциация учителей информатики США (CSTA) в мае 2018 года сформировали специальную рабочую группу AI4K12 [87], которая подготовила доклад со сформулированными требованиями к подготовке выпускника К. Требования оформлены в виде пяти идей ИИ видит с помощью датчиков и имеет ограничения восприятия, нуждаясь в обучении классификаторов человеком (введение в машинное обучение представление агентов ИИ использует различные онтологии под конкретные области знаний (введение в инженерию знаний и Data Mining); ИИ обучается на больших массивах данных, которые необходимо подготовить особым формальным образом (подготовка данных и обучение нейросетей на них взаимодействие с ИИ на естественном языке крайне важно для правильной интерпретации требований пользователей и правильной работы систем этика применение ИИ может нести как позитивный, таки негативный характер, поэтому для алгоритмов и приложений необходимы этические критерии. В США изучение искусственного интеллекта предполагается также, как ив России, на углублённом уровне в старших классах, что отличает наши страны, например, от Китая, где с 2019 года данная дисциплина включена в программу для начальной и средней школы, однако, в основном, в виде исторических обзоров и описаний областей применения. 61 Американская модель же предусматривает упорна практическую деятельность в свете традиционной для США педагогики Дж. Дьюи [33]. Кроме требований, которые в полном тексте доклада сопровождаются конкретными ожидаемыми образовательными результатами, изучение искусственного интеллекта в американской школе предусматривает участие внешних организаций во внеурочной деятельности обучающихся, включая проведение специализированных образовательных лагерей и иных форм активностей. Инициативу поддержали многие известные вузы и компании, например, MIT и Microsoft. В 2019 году была запущена программа Google AI Experiments для учеников старших классов, предусматривающая участие детей, углублённо изучающих не только естественнонаучное направление, но и гуманитарные науки. Программа призвана показать в проектах, как возможно применять искусственный интеллект для нужд разных научных направлений, и подготовить выпускников школ к поступлению в вузы. Помимо образовательных программ, предусматриваются соревнования, посвящённые искусственному интеллекту и интеллектуальным алгоритмам. Наиболее популярное из них – это Всемирный чемпионат по Искусственному Интеллекту для молодёжи (World Artificial Intelligence Competition for Youth) [190]. Заметим, что в России также проводятся соревнования и иные образовательные мероприятия, связанные с искусственным интеллектом. Например, «AI-Academy» от Сбербанки партнёров представляет собой дистанционный конкурс, краткий курс и очный хакатон для различных возрастных групп обучающихся. Также проводятся акции, посвящённые искусственному интеллекту и машинному обучению, например, Всероссийский Урок Цифры [82]. Министерство просвещения Российской Федерации в 2021 году инициировало отдельно Всероссийскую олимпиаду по искусственному интеллекту для школьников 8-11 классов. 62 Олимпиада имеет ключевые отличия от существующих вузовских олимпиад. Она индивидуальная, проводится дистанционно в три этапа, на заключительном этапе с использованием системы прокторинга Как ив США, в Российской Федерации соревнования и иные мероприятия, посвящённые ИИ и проводимые для детей, можно разделить на две категории для широкого круга участников проводятся с целью популяризации ИИ среди школьников, чаще включают лёгкие демонстрационные кейсы с практически готовыми решениями специализированные соревнования и курсы посвящены решению узкоспециализированных задач, например, связанных с компьютерным зрением или обработкой текста на естественных языках. Победа в подобных соревнованиях в США дают возможность попасть в списки деканов (Dean's List) различных университетов, позволяющие претендовать на возмещение оплаты за обучение и стипендию. Кроме того, олимпиады и соревнования по искусственному интеллекту дают дополнительные баллы в табель достижений в категорию Science (причем, advanced level), что также даёт преимущества при поступлении. В России некоторые вузы проводят собственные конкурсы, предусматривающие зачисление победителей без экзаменов, а также существуют направления олимпиад, посвящённые ИИ (например, Олимпиада НТИ и Университета Иннополис) и входящие в официальный список вузовских олимпиад, победа в которых засчитывается как сданный экзамен по профильному предмету. Таким образом, можно сказать, что ив России, ив США мы наблюдаем обновление подходов к преподаванию искусственного интеллекта в курсе информатики и/или в качестве дополнительного образовательного курса, обусловленное изменениями требований к 63 выпускниками широкому распространению новых технологий, использующих интеллектуальные алгоритмы и большие данные. Причём в Америке больший упор делается на практические умения обучающихся, в то время как в России обучение носит более академический характерно с выходом на практическую реализацию разработанных алгоритмов. В качестве примеров других стран можно также привести Финляндию, где основы искусственного интеллекта изложены в общедоступных онлайн- курсах для всех граждан (аналог курсов про офисные пакеты на сайте «Госуслуги» в России. |