BSc: InformationTheory
Теория информации
- Квалификация выпускника: бакалавр
- Направление подготовки: 09.03.01 - “Информатика и вычислительная техника”
- Направленность (профиль) образовательной программы: Математические основы ИИ
- Программу разработал(а): А.А. Фролов
1. Краткая характеристика дисциплины
Данный курс является вводным курсом по теории информации. В первой части рассматриваются измерение информации, взаимная информация, энтропия, оценка пропускной способности одно- и многопользовательских каналов. Во второй части рассматриваются основы теории кодирования, такие как блочные коды, линейные коды, ограничения на параметры кодов и наиболее популярные алгебраические методы кодирования (коды Хэмминга, Рида-Маллера, БЧХ и Рида-Соломона). Затем рассматриваются современные методы кодирования, т.е. итеративные алгоритмы декодирования и графические модели их представления.
2. Перечень планируемых результатов обучения
- Цель освоения дисциплины состоит в том, чтобы объяснить основные идеи и результаты теории информации, некоторые из которых в течение довольно длительного времени используются в науках о данных, в частности, различные энтропийные неравенства, а некоторые появились лишь совсем недавно, например, использование кодов с исправлением ошибок в целях улучшения использования метода k-средних для задач кластеризации.
- Задачами дисциплины является изучение основ теории информации для применения полученных знаний в различных задачах машинного обучения.
Общая характеристика результата обучения по дисциплине
- Знания:
- Основы теории информации и измерения информации.
- Классические алгебраические коды коррекции ошибок и ограничения на параметры кодов.
- Умения:
- Представлять итеративные системы декодирования в виде графических моделей, реализовать эффективные алгоритмы декодирования.
- Анализировать эффективность изученных схем коррекции ошибок.
- Навыки (владения):
- Владеть навыками работы с научно-исследовательской литературой по теории информации.
3. Структура и содержание дисциплины
№ п/п |
Наименование раздела дисциплины |
Содержание дисциплины по темам |
1. | Элементы теории информации. | Измерение информации, взаимная информация и энтропия. |
2. | Кодирование для дискретных источников. | Теорема о кодировании источника, префиксные коды, неравенство Крафта, кодирование Хаффмана. Метод типов, универсальное кодирование источника, алгоритм Лемпеля-Зива. |
3. | Дискретные каналы без памяти. | Каналы передачи с шумом, пропускная способность канала, прямая и обратная теоремы Шеннона. |
4. | Каналы множественного доступа. | Канал множественного доступа, широковещательный канал и их пропускные способности. |
5. | Блочные коды. | Блочные коды коррекции ошибок. Минимальное кодовое расстояние (расстояние Хэмминга), декодирование по критерию максимального правдоподобия, декодирование до половины минимального расстояния. |
6. | Алгебраические блочные коды. | Коды Рида-Маллера, полиномы Жегалкина, алгоритмы кодирования и декодирования. Циклические коды, БЧХ коды, алгоритмы декодирования (Берлекемпа-Мэсси, Евклида). |
7. | Каскадные коды. | Каскадные, обобщенные каскадные коды. Многоуровневое кодирование. |
8. | Коды на графах. | МПП-Коды. Граф Таннера. |
9. | Фактор-графы и алгоритм «сумма-произведение». | Фактор-граф. Алгоритмы декодирования «сумма-произведение» и «минимум-сумма». |
10. | Построение МПП-кодов. | Метод эволюции плотностей. EXIT диаграммы. |
11. | Элементы сверточных кодов. | Решетка (треллис). Алгоритмы декодирования Витерби и BCJR. |
12. | Сверточные МПП-коды. | Построение анализ порога декодирования. |
13. | Кодирование для распределенных и облачных систем хранения данных. | Восстанавливающие коды. Коды с локальным восстановлением. |
4. Методические и оценочные материалы
Задания для практических занятий:
Текущий контроль успеваемости обучающихся по дисциплине:
№ п/п |
Наименование раздела дисциплины |
Форма текущего контроля |
Материалы текущего контроля |
1. | Элементы теории информации Кодирование для дискретных источников |
Домашняя работа, Коллоквиум | В домашние работы включаются задачи, нерешенные во время семинарских занятий. |
2. | Блочные коды Алгебраические блочные коды |
Домашняя работа, Коллоквиум | В домашние работы включаются задачи, нерешенные во время семинарских занятий. |
3. | Коды на графах Фактор-графы и алгоритм «сумма-произведение» |
Домашняя работа, Коллоквиум | В домашние работы включаются задачи, нерешенные во время семинарских занятий. |
Контрольные вопросы для подготовки к промежуточной аттестации:
№ п/п |
Наименование раздела дисциплины |
Вопросы |
1. | Элементы теории информации. | Энтропия, совместная энтропия, условная энтропия, относительная энтропия (или дивергенция Кульбака-Лейблера). Взаимная информация, связь с энтропией. Неравенства Йенсена, обработки данных, Фано. |
2. | Кодирование для дискретных источников. | Уникально декодируемые и префиксные коды. Неравенство Крафта. |
3. | Дискретные каналы без памяти. | Каналы передачи с шумом, пропускная способность канала. Прямая и обратная теоремы Шеннона.
|
4. | Каналы множественного доступа. | Канал множественного доступа, широковещательный канал и их пропускные способности. |
5. | Блочные коды. | Минимальное кодовое расстояние (расстояние Хэмминга), декодирование по критерию максимального правдоподобия, декодирование до половины минимального расстояния. Линейный код, порождающая и проверочная матрицы, синдромное декодирование. Дуальный код, тождества Мак-Вильямс. |
6. | Алгебраические блочные коды. | Коды Рида-Маллера, полиномы Жегалкина, алгоритмы кодирования и декодирования. Циклические коды, БЧХ коды, алгоритмы декодирования (Берлекемпа-Мэсси, Евклида). |
7. | Каскадные коды. | Каскадные коды и их параметры. Граница Зяблова. |
8. | Коды на графах. | Коды LDPC, граф Таннера. Алгоритмы декодирования с исправлением стираний, алгоритм инвертирования бита и алгоритм Сумма-Произведение. |
9. | Фактор-графы и алгоритм «сумма-произведение». | Фактор-граф. Алгоритмы декодирования «сумма-произведение» и «минимум-сумма». |
10. | Построение МПП-кодов. | Метод эволюции плотностей. EXIT диаграммы. |
11. | Элементы сверточных кодов. | Представление в виде дерева, конечного автомата и решетки. Принцип динамического программирования и алгоритм декодирования Витерби. |
12. | Сверточные МПП-коды. | Построение анализ порога декодирования. |
13. | Кодирование для распределенных и облачных систем хранения данных. | Восстанавливающие коды. Коды с локальным восстановлением. |
Вопросы/Задания к промежуточной аттестации в устной/письменной форме:
1.Меры информации. Энтропия, совместная энтропия, условная энтропия, относительная энтропия (или дивергенция Кульбака-Лейблера). Взаимная информация, связь с энтропией. Неравенства Йенсена, обработки данных, Фано.
2.Сжатие данных. Уникально декодируемые и префиксные коды. Неравенство Крафта. Теорема кодирования источника. Кодирование Хаффмана. Универсальное кодирование источника.
3.Зашумленные каналы передачи. Дискретный канал без памяти, симметричный канал. Пропускная способность канала. Теорема Шеннона.
4.Дифференциальная энтропия. Гауссовский канал и его пропускная способность. Параллельные гауссовские каналы.
5.Многопользовательские каналы. Канал множественного доступа.
6.Блочные коды. Булев куб как метрическое пространство: расстояние Хэмминга, шар, сфера, слой. Код, минимальное кодовое расстояние. Декодирование по максимуму правдоподобия и декодирование с ограниченным минимальным расстоянием. Обнаружение и исправление ошибок, геометрическая интерпретация.
7.Границы параметров кода. Определение A(n,d). Границы Хэмминга, Гилберта, Синглтона и Плоткина. Асимптотический режим.
8.Линейные коды. Определение и основные параметры. Порождающая и проверочная матрицы. Теорема о проверочной матрице линейного кода и ее минимальном расстоянии. Граница Варшамова-Гилберта. Синдром и синдромное декодирования.
9.Дуальный код, нумератор весов и тождества МакВильяма.
10.Двоичные коды Хэмминга. Совершенные коды. Вычисление синдрома и декодирование кодов Хэмминга.
11.Коды Рида-Маллера и их параметры. Конструкция Плоткина.
12.Элементы конечных полей. Группы, кольца, поля. Расширение поля. Поле многочленов. Минимальные полиномы.
13.Коды МДР и их свойства. Коды Рида-Соломона и дискретное преобразование Фурье. Алгоритм декодирования Петерсона-Горенштейна-Цирлера. Схемы разделения секретов. Схема Шамира.
14.Полиномиальные коды. Циклические коды. Эквивалентность полиномиальных и циклических кодов. Порождающие и проверочные многочлены. Несистематическое и систематическое кодирование. Определение циклического кода с использованием корней порождающего полинома.
15.Коды БЧХ и их параметры. Коды Рида--Соломона как подкоды кодов БЧХ, алгоритм декодирования Петерсона-Горенштейна-Цирлера.
16.Каскадные коды и их параметры. Граница Зяблова. Алгоритм декодирования. Декодирование по обобщенному минимальному расстоянию.
17.Сверточные коды. Представление в виде дерева, конечного автомата и решетки. Принцип динамического программирования и алгоритм декодирования Витерби. Определение и основные свойства. Мягкое декодирование. Свободное расстояние.
18.Коды LDPC, граф Таннера. Алгоритмы декодирования с исправлением стираний, алгоритм инвертирования бита и алгоритм Сумма-Произведение. Графы-расширители, лемма о перемешивании. Коды Сипсера-Спилмана и Земора. Коды на графах.
19.Фактор-граф. Маргинализация посредством передачи сообщений для деревьев (алгоритм суммы-произведения). Декодирование кодов LDPC посредством передачи сообщений.
20.Построение кодов LDPC. Нерегулярные коды LDPC. Эволюция плотностей, порог. Множества останова.
Перечень учебно-методического обеспечения дисциплины
Список основной литературы:
1. T. M. Cover and J. A. Thomas, Elements of Information Theory. New York: Wiley, 1991
2. T. Richardson and R. Urbanke, Modern Coding Theory, Cambridge 2008 (http://ipg.epfl.ch/lib/exe/fetch.php?media=en:publications:mct-new.pdf).
3. Сагалович Ю.Л. Введение в алгебраические коды. М.: ИППИ РАН, 2010. – 302 с.
4. Габидулин Э. М. Лекции по алгебраическому кодированию М. : МФТИ, 2015. – 107 с.
Список дополнительной литературы:
1. R. G. Gallager, Information Theory and Reliable Communication. New York: Wiley, 1968.
2. J. H. van Lint, Introduction to Coding Theory. Springer-Verlag, Berlin, 1999.
3. D. J.C. MacKay, Information Theory, Inference, and Learning Algorithms, Cambridge University Press 2003 (http://www.inference.phy.cam.ac.uk/itprnn/book.pdf).
Методические указания для обучающихся по освоению дисциплины
Вид учебных занятий/деятельности |
Деятельность обучающегося |
Лекция | Написание конспекта лекций: кратко, схематично, последовательно фиксировать основные положения лекции, выводы, формулировки, обобщения; помечать важные мысли, выделять ключевые слова, термины. Обозначить вопросы, термины или другой материал, который вызывает трудности, пометить и попытаться найти ответ в рекомендуемой литературе. Если самостоятельно не удается разобраться в материале, необходимо сформулировать вопрос и задать преподавателю на консультации, во время семинарского (практического) занятия. |
Практическое (семинарское) занятие | При подготовке к семинарскому (практическому) занятию необходимо проработать материалы лекций, основной и дополнительной литературы по заданной теме. На основании обработанной информации постараться сформировать собственное мнение по выносимой на обсуждение тематике. Обосновать его аргументами, сформировать список источников, подкрепляющих его. Во время семинарского (практического) занятия активно участвовать в обсуждении вопросов, высказывать аргументированную точку зрения на проблемные вопросы. Приводить примеры из источниковой базы и научной и/или исследовательской литературы. |
Устный/письменный опрос | Отвечать, максимально полно, логично и структурировано, на поставленный вопрос. Основная цель – показать всю глубину знаний по конкретной теме или ее части. |
Реферат | Поиск источников и литературы, составление библиографии. При написании реферата рекомендуется использовать разнообразные источники, монографии и статьи из научных журналов, позволяющие глубже разобраться в различных точках зрения на заданную тему. Изучение литературы следует начинать с наиболее общих трудов, затем следует переходить к освоению специализированных исследований по выбранной теме. Могут быть использованы ресурсы сети «Интернет» с соответствующими ссылками на использованные сайты. Если тема содержит проблемный вопрос, следует сформулировать разные точки зрения на него. Рекомендуется в выводах указать свое собственное аргументированное мнение по данной проблеме. Подготовить презентацию для защиты реферата. |
Эссе | Написание прозаического сочинения небольшого объема и свободной композиции, выражающего индивидуальные впечатления и соображения по конкретному поводу или вопросу и заведомо не претендующего на определяющую или исчерпывающую трактовку предмета. При работе над эссе следует четко и грамотно формулировать мысли, структурировать информацию, использовать основные понятия, выделять причинно-следственные связи. Как правило эссе имеет следующую структуру: вступление, тезис и аргументация его, заключение. В качестве аргументов могут выступать исторические факты, явления общественной жизни, события, жизненные ситуации и жизненный опыт, научные доказательства, ссылки на мнение ученых и др. |
Подготовка к промежуточной аттестации | При подготовке к промежуточной аттестации необходимо проработать вопросы по темам, которые рекомендуются для самостоятельной подготовки. При возникновении затруднений с ответами следует ориентироваться на конспекты лекций, семинаров, рекомендуемую литературу, материалы электронных и информационных справочных ресурсов, статей. Если тема вызывает затруднение, четко сформулировать проблемный вопрос и задать его преподавателю. |
Практические (лабораторные) занятия | Практические занятия предназначены прежде всего для разбора отдельных сложных положений, тренировки аналитических навыков, а также для развития коммуникационных навыков. Поэтому на практических занятиях необходимо участвовать в тех формах обсуждения материала, которые предлагает преподаватель: отвечать на вопросы преподавателя, дополнять ответы других студентов, приводить примеры, задавать вопросы другим выступающим, обсуждать вопросы и выполнять задания в группах. Работа на практических занятиях подразумевает домашнюю подготовку и активную умственную работу на самом занятии. Работа на практических занятиях в форме устного опроса заключается прежде всего в тренировке навыков применять теоретические положения к самому разнообразному материалу. В ходе практических занятий студенты работают в группах для обсуждения предлагаемых вопросов. |
Самостоятельная работа | Самостоятельная работа состоит из следующих частей: 1) чтение учебной, справочной, научной литературы; 2) повторение материала лекций; 3) составление планов устных выступлений; 4) подготовка видеопрезентации. При чтении учебной литературы нужно разграничивать для себя материал на отдельные проблемы, концепции, идеи. Учебную литературу можно найти в электронных библиотечных системах, на которые подписан АНО Университет Иннополис. |
Видеопрезентация | Подготовка видеопрезентаций по курсу. Видеопрезентации могут быть сделаны на любую тему, затронутую в ходе курса. Темы должны быть заранее согласованы с преподавателем. Видеопрезентации продолжительностью около 5 минут (300 секунд) должны быть подготовлены в группах, определяемых преподавателем. Несмотря на то, что это групповая работа, должен явно присутствовать вклад каждого члена группы. |
Доклад | Публичное, развернутое сообщение по определенной теме или вопросу, основанное на документальных данных. При подготовке доклада рекомендуется использовать разнообразные источники, позволяющие глубже разобраться в теме. Учебную литературу можно найти в электронных библиотечных системах, на которые подписан АНО Университет Иннополис. |
Дискуссия | Публичное обсуждение спорного вопроса, проблемы. Каждая сторона должна оппонировать мнение собеседника, аргументируя свою позицию. |
Контрольная работа | При подготовке к контрольной работе необходимо проработать материалы лекций, семинаров, основной и дополнительной литературы по заданной теме. |
Тестирование (устное/письменное) | При подготовке к тестированию необходимо проработать материалы лекций, семинаров, основной и дополнительной литературы по заданной теме. Основная цель тестирования – показать уровень сформированности знаний по конкретной теме или ее части. |
Индивидуальная работа | При выполнение индивидуальной работы необходимо взять задание у преподавателя, ознакомиться с требованиями к выполнению работы, изучить поставленную проблему, найти решение проблемы. Если самостоятельно не удается разобраться в материале, необходимо сформулировать вопрос и задать преподавателю на консультации, во время семинарского (практического) занятия. Оформить результаты работы. |
Разработка отдельных частей кода | Разработать часть кода, исходя из поставленной задачи и рекомендаций преподавателя. При выполнении работы рекомендуется обращаться к материалам лекций и семинарских (практических) занятий. Если возникают затруднения, необходимо проконсультироваться с преподавателем. |
Выполнение домашних заданий и групповых проектов | Для выполнения домашних заданий и групповых проектов необходимо получить формулировку задания от преподавателя и убедиться в понимании задания. При выполнение домашних заданий и групповых проектов необходимо проработать материалы лекций, основной и дополнительной литературы по заданной теме. |
Методы и технологии обучения, способствующие формированию компетенции
Методы и технологии обучения, способствующие формированию компетенции |
В курсе планируется использовать несколько технологий обучения. Таких как: интерактивные лекции , поощряющие участие студентов посредством сессий вопросов и ответов, живых демонстраций концепций квантовых вычислений или групповых дискуссий.
Проблемно-ориентированное обучение – мероприятия по решению проблем, которые побуждают студентов применять концепции квантовых вычислений в практических ситуациях. Этот метод может улучшить навыки критического мышления и закрепления знаний. Будут применяться программные библиотеки для аналитических и численных методов: SymPy, NumPy, и SciPy , что позволит использовать компьютер как инструмент для изучения свойств аналитических функции, изучать теорию аппроксимаций и получить опыт использования компьютерных вычислений в задачах математического анализа. Планируется предложить совместные проекты , которые требуют применения концепций квантовых вычислений в реальных сценариях или создания новых квантовых алгоритмов. Такой подход может способствовать командной работе, навыкам общения и креативности, одновременно углубляя понимание студентами концепций квантовых вычислений. Важный элемент курса – смешанное обучение : сочетание традиционного очного обучения с онлайн-учебными ресурсами, такими как видео, симуляторы или интерактивные викторины. Такой подход может учитывать различные стили обучения и предпочтения, одновременно улучшая понимание учащимися концепций квантовых вычислений. |