Бакалавриат
2020/2021
Технологии анализа данных в сети интернет
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Статус:
Курс по выбору (Программная инженерия)
Направление:
09.03.04. Программная инженерия
Где читается:
Факультет экономики, менеджмента и бизнес-информатики
Когда читается:
4-й курс, 2, 3 модуль
Формат изучения:
с онлайн-курсом
Преподаватели:
Ланин Вячеслав Владимирович
Язык:
русский
Кредиты:
7
Контактные часы:
40
Программа дисциплины
Аннотация
Учебный курс "Технологии анализа данных в сети Интернет" ориентирован на изучение методов и технологий, используемых при сборе и анализе данных в сети Интернет, а также на получение практических навыков разработки программных решений для автоматизации данных задач. В рамках курса изучаются подходы к извлечению данных из неструктурированных источников (корпуса текстов, web-страницы, социальные сети), вопросы обработки мультимедийной информации и естественного языка, тенденции развития Web-технологий.
Цель освоения дисциплины
- Развитие у студентов компетенций проектирования и конструирования программного обеспечения с использованием современных языков, технологий и инструментальных средств разработки программного обеспечения
Планируемые результаты обучения
- Студент способен применять технологию регулярных выражений для обработки текстов
- Студент способен использовать форматы XML и JSON для хранения и обработки данных
- Студент способен из извлекать информацию из веб-сайтов
- Студент способен из извлекать информацию с использованием Web API
- Студент способен из извлекать информацию из социальных сетей
- Студент способен использовать информационно-поисковые тезаурусы и онтологии при обработке информации
- Студент способен использовать технологии семантической аннотации при обработке текста
- Студент знает и способен использовать технологии обработки естественного языка
- Студент знает и способен использовать т векторная модель слов для обработки естественного языка
- Студент имеет представление об основных тенденциях развития интернет-технологий
- Студент знает и способен использовать технологии Semantic Web
Содержание учебной дисциплины
- Тема 1. Регулярные выраженияОсновы синтаксиса. Классы символов. Диапазоны. Наборы. Кванторы повторений. Скобочные группы. Именованные группы. Ссылки.
- Тема 2. Обработка данных в формате XML и JSON.XML расширяемый язык разметки. Синтаксис и семантика языка. Структура XML документа. Корректно сформированных (well formed) и валидные XML документы. Пространства имен. Объектная модель документа (DOM). Язык XPath. Синтаксис и функции XPath. Поиск и извлечения блоков с помощью XPath. Технологии DTD и XSD. Использование XSD для проверки корректности (валидации) XML-документов. Чтение и создание XSD-схемы. Описания типов, элементов и атрибутов. Описание сложных типов данных. Средства создания и работы со схемами. XSLT как средство преобразований XML. Программные средства преобразований XSLT. Шаблоны и шаблонные правила. Создание узлов различных типов. Управляющие конструкции. Сортировка значений.
- Тема 3. Скрапинг веб-сайтовБиблиотека BeautifulSoup. Краулинг Краулинг с помощью Scrapy. Библиотека requests. Отправка формы. Работа с элементами управления: радиокнопки, флажки и другие элементы ввода данных. Отправка файлов и изображений. Работа с логинами и cookies. Базовая HTTP-аутентификация. Скрапинг JavaScript-кода. Ajax и динамический HTML. Выполнение JavaScript в Python с помощью библиотеки Selenium. Извлечение CAPTCHA и отправка результатов распознавания.
- Тема 4. Работа с Web APIКак работают API. Общепринятые соглашения. Методы. Аутентификация. Ответы. Вызовы API. Echo Nest. Google API.
- Тема 5. Извлечение данных из социальных сетейКак работают API. Общепринятые соглашения. Методы. Аутентификация. Ответы. Вызовы API. Echo Nest. Google API.
- Тема 6. Информационно-поисковые тезаурусы и онтологииОсновные принципы разработки, создания и использования традиционных информационно-поисковых тезаурусов. Примеры тезаурусов. Основные принципы разработки, создания и использования традиционных информационно-поисковых тезаурусов. Примеры тезаурусов. Типы онтологий: верхнего уровня, предметных областей, прикладных онтологий. Лексические онтологии. Примеры онтологий. Онтологии верхнего уровня: отличительные черты, решаемые задачи. Онтологии и классификация. Пример онтологии ассортимента товаров интернет магазина.
- Тема 7. Семантическая аннотацияПонятие семантического (концептуального) аннотирования (разметки). Виды аннотаций. Методы семантического аннотирования документов. Аннотации в системе GATE. Lancaster USAS Semantic Tagger Framework. Тезаурус для автоматического концептуального индексирования как особый вид тезауруса. Тезаурус для автоматического концептуального индексирования как ресурс для решения информационно-поисковых задач. Технология автоматической рубрикации текстов с использованием тезауруса для автоматического концептуального индексирования.
- Тема 8. Основные понятия обработки ЕЯМорфологический анализ (МА). Синтаксический анализ (СИА): основные понятия. Обобщенный алгоритм синтаксического анализа. Семантический анализ (СЕА).
- Тема 9. Библиотеки обработки ЕЯМорфологический анализатор pymorphy2. Морфологический анализ. Работа с тегами. Склонение слов. Постановка слов в начальную форму. Согласование слов с числительными.
- Тема 10. Векторная модель словМодели представления текста. Частотные характеристики текста. Векторно-пространственная модель документа. Библиотеки Python для обработки естественного языка: NLTK, Gensim, word2vec. Модели CBOW и Skip-gram в word2vec - Вычисление семантической близости в word2vec - Использование библиотеки word2vec для кластеризации
- Тема 11. Основные тенденции развития интернет-технологийWeb 1.0, Web 2.0, Web 3.0, Web 4.0. Новые объекты передачи. Киберугрозы, кибероружие и кибервойны. Изменения рынка труда и сферы образования. Новый статус человека в Интернете. Роботизация общества.
- Тема 12. Технологии Semantic WebОписание ресурсов на языке RDF. Язык описания онтологий OWL. Стандартны представления метаданных. Технология FOAF. Интеллектуальные агенты и мультиагентные технологии. Алгоритмы обработки данных в Semantic Web
Элементы контроля
- Лабораторная работа 1
- Лабораторная работа 2
- Лабораторная работа 3
- Лабораторная работа 4 (самостоятельная работа)
- Защита проектаЭкзамен проводится в форме выполнения группового проекта. Проектная группа реализует и представляет на публичную защиту программный продукт, реализующий сбор, обработку или анализ данных. Тематика проекта выбирается группой самостоятельно и согласуется с преподавателем.
Промежуточная аттестация
- Промежуточная аттестация (3 модуль)0.15 * Лабораторная работа 1 + 0.15 * Лабораторная работа 2 + 0.15 * Лабораторная работа 3 + 0.15 * Лабораторная работа 4 (самостоятельная работа) + 0.1 * Прохождение online-курсов + 0.3 * Экзаменационный тест
Список литературы
Рекомендуемая основная литература
- Федоров Д. Ю. - ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ PYTHON 2-е изд., пер. и доп. Учебное пособие для прикладного бакалавриата - М.:Издательство Юрайт - 2019 - 161с. - ISBN: 978-5-534-10971-9 - Текст электронный // ЭБС ЮРАЙТ - URL: https://urait.ru/book/programmirovanie-na-yazyke-vysokogo-urovnya-python-437489
Рекомендуемая дополнительная литература
- Антамошкин, О. А. Программная инженерия. Теория и практика [Электронный ресурс] : учебник / О. А. Антамошкин. - Красноярск: Сиб. Федер. ун-т, 2012. - 247 с. - ISBN 978-5-7638-2511-4.
- Сысолетин Е. Г., Ростунцев С. Д. ; под науч. ред. Доросинского Л.Г. - РАЗРАБОТКА ИНТЕРНЕТ-ПРИЛОЖЕНИЙ. Учебное пособие для вузов - М.:Издательство Юрайт - 2019 - 90с. - ISBN: 978-5-9916-9975-4 - Текст электронный // ЭБС ЮРАЙТ - URL: https://urait.ru/book/razrabotka-internet-prilozheniy-438148