Машинное творчество.

advertisement
Машинное творчество.
Автоматическое сочинение музыки.
Александр Жиров,
гр. 12222, ФИТ НГУ.
Несколько слов о машинном
творчестве
Что такое машинное творчество?
●
●
●
Машинное творчество — ИИ ∩ когнитивная психология ∩
искусство ∩ философия.
Изучаемые вопросы:
–
Изучение человеческого творчества с точки зрения
алгоритмизации.
–
Разработка программ, способных улучшать творчество
человека.
–
Разработка программ, способных к творчестве на уровне
человека.
Основные области: литература, музыка, изобразительное
искусство.
Почему до сих пор нет творящих машин?
●
●
●
●
Основная проблема — мы не знаем, как
формализовать творчество.
Как формально отличить творчество от
«нетворчества»?
Как определить, какая работа более творческая?
Работы, порожденные машиной — это результат
творчества машины или инженера, её создавшего?
Проблема: творчество — понятие субъективное.
Критерии творческой работы
●
●
●
●
Результат работы нов и полезен (человеку или
обществу в целом).
Результат требует отказаться от идей или концепций,
принятых ранее.
Результат получен благодаря сильной мотивации и
упорства.
Результат получен благодаря прояснению и решению
задачи, ранее казавшейся запутанной и не имевшей
известных путей решения.
Классификация творческих процессов
●
●
Категории творчества:
–
P-creativity (psychological)
–
H-creativity (historical)
–
V-creativity (Visceral)
Модели творчества:
–
Исследовательское и трансформационное
творчество
–
Генерация и оценка
–
Комбинаторное творчество
Области применения МТ
●
Литература: сюжеты, метафоры и сравнения,
аналогии, шутки, новые термины и слова, стихи.
●
Музыка: композиция, аранжировка, исполнение.
●
Изобразительное искусство: картины, коллажи.
●
Творческое решение проблем.
Музыка машин
Основные этапы сочинения музыки
●
Генерация «сырых» мелодий.
–
●
●
Генерация случайных мелодий по правилам.
Построение основной мелодии на основе «сырых» отрывков:
–
конструирование длинных мелодий,
–
устранение диссонансов,
–
аранжировка.
Гармонизация:
–
построение аккомпанемента,
–
дополнительные голоса.
Подходы к построению мелодий
●
●
●
●
Лингвистически-структурный — описание строгих
грамматик допустимой структуры.
Интерактивно-поведенческий — псевдослучайная
генерация с обучением.
Генеративно-процедурный — алгоритмическая
генерация, алгоритм пишется человеком.
Биологически-эмержентный — трансляция процессов
в природных или биологических системах в
последовательности нот.
Генерация «сырых» мелодий
Генерация «сырых» мелодий
●
Выбор набора нот:
–
●
●
минорная/мажорная гамма, хроматический,
пентатоника и т. д.
Выбор источника нот:
–
цепи Маркова,
–
генераторы случайных чисел.
Семплирование высоты и длительности нот из
источника.
Цепи Маркова
●
●
●
Стохастический процесс, каждое следующее состояние которого
зависит от нескольких предыдущих.
Порядок цепи Маркова — количество предыдущих состояний, от
которых зависит следующее.
Инициализация:
–
Задание таблицы вероятностей P(a1, …, an → an+1).
–
Статистический анализ существующих композиций.
●
+: хорошая локальная структура мелодии.
●
+: подражание стилю композитора или жанру.
●
–: при маленьких n отсутствует глобальная структура.
●
–: при больших n существенные повторения оригинала.
Цепи Маркова: пример
Источник: The Markov Process as a Compositional Model: A Survey and Tutorial
ГСЧ: Белый шум
●
Равномерное распределение по высоте нот.
●
Результат получается совершенно хаотичный.
ГСЧ: Красный (броуновский) шум
●
Распределение 1/f2, где f — высота ноты.
●
Алгоритм:
–
Первая нота a1 выбирается случайно.
–
Генерируется смещение Δi из диапазона (-n, n).
–
ai+1 = ai + Δi.
●
+: результат более музыкальный.
●
–: последовательность слишком предсказуема.
ГСЧ: Красный (броуновский) шум
ГСЧ: Розовый шум
●
●
●
Плотность 1/fα, α ≈ 1
Очень распространен в природе: шум в электронных лампах,
нервные мембраны, солнечная активность, уровень разлива реки
Нил.
Ритм, высота мелодии, громкость в классической музыке
подчиняются этому распределению.
●
+: имеет как локальную, так и глобальную структуру, самоподобен.
●
+: менее предсказуем
●
●
–: не позволяет имитировать определенные жанры/стили
композиторов (по ср. с цепями Маркова).
Voss R. F., Clarke J. ’’1/f noise’’in music: Music from 1/f noise //The
Journal of the Acoustical Society of America. – 1978. – Т. 63. – С. 258.
ГСЧ: Розовый шум (пример)
Построение мелодии из «сырых»
материалов
Построение мелодии из «сырых» материалов
●
●
Задача: из сырых материалов построить
мелодию, приятную для слуха человека.
Основные подходы:
–
–
–
Эволюционный подход.
Нейронные сети.
«Контурный» подход.
Мелодия: эволюционный подход
●
●
●
●
Применение: развитие «сырых» фрагментов мелодий.
Операторы скрещивания: смешивание фрагментов,
склеивание, инверсия части фрагмента, обмен частями и
т. д.
Операторы мутации: изменение высоты ноты, дробление
ноты, слияние нот, дублирование фрагмента и т. д.
Оценка качества фрагмента: соответствие требованиям
жанра/стиля, гармонии, длительности, разнообразия,
структурированности, повторяемости, благозвучность
для человека и т.д.
Мелодия: эволюционный подход
●
●
●
●
+: возможны очень интересные результаты.
–: сложность задания функции оценки качества,
неудачная функция приводит к плохому результату.
Пример: GenJam — генератор джазовых
импровизаций.
http://igm.rit.edu/~jabics/GenJam.html
(http://bit.ly/GenJam)
Мелодия: нейронные сети
●
Применение: построение мелодий с нуля, видоизменение
мелодий.
●
+: возможность подражания стилю композитора или жанру.
●
+: не требует человеческого вмешательства.
●
+: музыка может быть структурированной.
●
–: требуется материал для обучения, обучение происходит
медленно.
●
–: сложность выбора параметров сети.
●
Вариация на Requiem for a Dream: http://bit.ly/requiem_neural
Оригинал: http://bit.ly/requiem_original
Мелодия: контурный подход
●
●
Adam Alpern: Techniques for Algorithmic Composition of
Music, 1995.
Применение: развитие, аранжировка простых
мелодий.
●
+: мелодия имеет локальную и глобальную структуру.
●
–: требуется изначальная мелодия.
Контурный подход: подготовка
●
Вход: композиция-прототип.
●
Построение контура:
●
–
Рассматриваются переходы между нотами.
–
S — та же нота, D — переход вниз, U — переход
вверх.
Построение общего и мета-контура.
Контурный подход: генерация
●
●
●
Каждая нота оригинальной мелодии берется как
начальная нота фрагмента.
Общий контур фрагмента должен совпадать с
контуром исходной ноты.
Новые фрагменты склеиваются воедино.
Бонус:
Как компьютеры слышат музыку?
A Singular Christmas
●
●
Эксперимент Брайана Уитмана:
–
Что делает песню рождественской?
–
Может ли компьютер отличить рождественскую
песню от обычной?
Методика:
–
Анализ звуковых характеристик большого массива
рождественских песен.
–
Исключение статистически незначительных
особенностей.
A Singular Christmas
●
Результат: альбом «A Singular Christmas», 2004.
●
Страничка проекта: http://bit.ly/singular_christmas
●
Послушайте, как звучат рождественские песни по
мнению компьютера ;-)
На закуску:
Машины-литераторы и художники.
Машины и литература.
Литература: генерация текстов
●
Лев Толстой, «Война и мир», т. 1.
●
Цепи Маркова 1-го порядка:
Так же, оживленные, разговор о действии чем
по-русски, которым она растрепанная, ногами,
зазнобил. Я сейчас пришлю, без руководителей. сказал Балашев. История и повторял весь в ту ж нет
которую редкими наслаждение, плакала казалось,
ужасно.
●
И еще: http://referats.yandex.ru/
Литература: генерация шуток
●
JAPE (Joke Analysis and Production Engine):
–
●
●
Q: What is the difference between leaves and a car?
A: One you brush and rake, the other you rush and brake.
HAHAcronym:
–
ACM (Association for Computing Machinery) — Association for
Confusing Machinery
–
FBI (Federal Bureau of Investigation) — Fantastic Bureau of
Intimidation
–
PDA (Personal Digital Assistant) — Penitential Demoniacal
Assistant
Зачем компьютеру шутить?
Компьютер-художник
AARON by Harold Cohen
Meeting On
Gauguin's Beach
(1988)
1976
2003
AARON by Harold Cohen
●
●
Имеет несколько стилей, способен полностью
придумать объекты, композицию, сцену.
История:
–
1973: абстрактные рисунки.
–
1980-е: камни, растения, люди.
–
1990-е: сцены, цвета.
–
2000-е: цветные абстрактные рисунки.
●
Язык программирования: до 1990-х С, после — Lisp.
●
http://www.kurzweilcyberart.com/ (http://bit.ly/aaron_art)
Спасибо за внимание!
Ваши вопросы?
A tree
Afghanistan collage
The Painting Fool by Simon Colton
The Dancing
Salesman
Problem
The Painting Fool by Simon Colton
●
Начало разработки — 2001.
●
Появление The Painting Fool — 2006.
●
Возможности:
–
Обработка цифровых изображений.
–
Симуляция физических аспектов рисования разными материалами.
–
Определение эмоций на лицах, создание определенного
эмоционального фона.
–
Создание иллюстраций к тексту, поиск исходных материалов на
Fickr.
–
Самостоятельное построение сцен с учетом ограничений.
–
...
Download