Проект по квантовому машинному обучению
Выполните самостоятельный проект: выберите заинтересовавшую вас область курса и исследуйте её. Итог может быть любым — от статьи в блоге с описанием исследования до улучшения самого Qiskit.
Шаг 1. Присоединитесь к сообществу. В исходном руководстве автор предлагает Slack Qiskit, где разработчики Qiskit и учебника, студенты и энтузиасты отвечают на вопросы. Представиться можно в канале #textbook-projects.
Шаг 2. Начните работу с GitHub. Он позволяет показывать написанный код, создать страницу проекта через GitHub Pages или сделать копию Qiskit для работы над задачей проекта. Автор рекомендует вводное руководство GitHub. Git — система хранения истории изменений; GitHub — сервис совместной работы с такими проектами.
Шаг 3. Выберите проект. Можно предложить идею в #textbook-projects, попросить совета наставников и найти соавторов. Идеи ниже в каждой группе приблизительно упорядочены от простых к сложным; можно взять любую, изменить её или выбрать совсем другую.
Лёгкие проекты:
- Напишите в блоге, чему вы научились и как проходило обучение.
- Объясните предполагаемые преимущества квантового машинного обучения над классическим. Адресат может быть неспециалистом, классическим программистом или специалистом по квантовым вычислениям. Какие направления наиболее перспективны? Где нынешние трудности?
Реализации:
- В исходном примере квантовой генеративной состязательной сети (QGAN) сеть приближает несколько заданных распределений; полные определения и программы находятся по этой постоянной ссылке. Создайте общую функцию Python, принимающую любое целевое распределение и возвращающую схему, которая его приближает.
- На известных классических наборах Iris, Wine, MNIST или CIFAR 10 обсудите преимущества и недостатки разных способов кодирования и оптимизации.
- Реализуйте классификатор с повторной загрузкой данных для любого набора. Для идей автор предлагает первую статью и вторую статью.
Исследования:
- Сравните семейства схем, например ZZFeatureMap и TwoLocal, и предложите схему с наименьшими затратами для каждой задачи.
- Разберите классические методы машинного обучения и найдите места, где могут пригодиться квантовые схемы.
- Прочтите статью о вариационных квантовых генераторах. Попробуйте расширить QGAN для изучения непрерывного распределения, например непрерывного четырёхкубитного гауссовского распределения.
- Прочтите статью о выразительности схем, величинах градиентов и бесплодных плато. Опишите или экспериментально оцените связь между выразительностью и бесплодными плато.
- Исследуйте другие способы кодирования данных и их влияние на схему по статье автора.
- Исследуйте применение методов курса к квантовым данным, например первому и второму наборам. Каковы преимущества и ограничения?
Шаг 4. Работайте с интересом. Если проект слишком труден, вы застряли или потеряли интерес, исходный автор предлагает попросить помощи в #textbook-projects. Наставники могут подсказать направление или помочь изменить цель.
Шаг 5. Поделитесь работой в #textbook-projects. GitHub и GitHub Pages могут служить подтверждением знаний и опыта, например при поступлении или на собеседовании.
Это один открытый проект автора, а не требование выполнить каждую из предложенных тем.
Решения пока нет.