简历阅读- - -我是如何教电脑自己写音乐的

接近

你已经阅读了每月两篇免费文章中的一篇。了解更多。

接近

我是如何教电脑自己写音乐的

我想建立一个理想的合作者。我感到非常惊讶。

2013年4月,一个温暖的日子,我坐在巴黎一个朋友的厨房里,试图制造意外惊喜。我想拿我的…约翰·苏普克著

O2013年4月,一个温暖的日子里,我坐在巴黎一个朋友的厨房里,试图制造意外惊喜。我试着让我的电脑自己写音乐。我希望能够打开它,让它发出的不是任何愚蠢的算法曲调,而是美丽的、引人入胜的、神秘的音乐;如果是我自己写的,我会很自豪。厨房的窗户是开着的,我听着楼下院子里孩子们玩耍的声音,想着他们声音的旋律是如何与附近鸟儿的歌唱和'Alésia街上断断续续的车辆嗡嗡声意外地形成对位的。

为了回应这些白日梦,我对我的软件做了一些调整——这是一件混乱的、凭直觉的事情,暴露了我对编程的直觉和自学的方法比尔·希曼刚刚上传了一批新的音频文件到我们的共享Dropbox文件夹。在过去的几年里,我一直在与媒体艺术家比尔在计算创造力的各个方面进行合作。我把比尔的声音文件文件夹和我自己的一些文件加载到软件中,然后开始播放。我想起来的是:

我既激动又惊讶。这正是我所希望的:电脑创造了我想听的诱人的音乐-从一个完全出乎意料的操纵声信息我给它。音乐既有未来主义又怀旧,略带忧郁,而且相当微妙:甚至它使用的数字噪音样本基本上都是声音碎片,似乎敏感地融合在一起。它给了我一种明显的,有点迷失方向的感觉,那就是电脑向我展示了一种重要而深刻的艺术形式,我已经练习了20多年。这种脆弱、优美的音乐对我来说是全新的,我想知道我还能从电脑上学到什么关于音乐的可能性。

当我回到美国时,我在杜克大学校园的一个重新设计的烟草仓库的工作室里遇见了比尔,我们都是这里的教员。我向他展示了产生让我兴奋的音乐的软件流程。我们立即开始头脑风暴工作流程,将计算机想象成一个成熟的合作者。我们想发明一种基于硅的生命形式来帮助制作碳基生命形式无法独自想象的音乐。我们的理由是,计算机可以快速导航大量的声波信息,并返回我们从未想到的结果。如果我们能够增加计算机产生引人注目和不同寻常的结果的可能性,我们就基本上建立了理想的艺术合作者:奇迹般的创造力、不知疲倦和无私。

Sapolsky_TH-F1

节奏的

维杰·耶尔(Vijay Iyer)不喜欢“天才”这个词,而这位爵士钢琴家正在滔滔不绝地解释为什么。“‘G’这个词经常被用来关闭对某个艺术家、他或她的社区和联系的对话或询问……阅读更多

比尔和我还有另一个,你可以说是崇高的目标。我们想要突出人类和计算机的创造过程。我们想要展示它的相似之处和不同之处,以及这两个过程如何结合在一起扩展艺术表达的范围。

作为比尔和我看到它,人类的创造力可以被定义为使得通过不可预测的主观力量 - 看似无关的信息之间的联系。音乐特别适合作为创造性过程的模型。人类作曲家有多个信息旋律,和谐,节奏 - 在他们的指尖的组件。但作曲家通常不会顺序地写作旋转旋律,和平和节奏。这些元素倾向于互相涉及并从作曲家的想象中突出。账单和我想模拟计算机中相互关联的元素的有机效果。

贝多芬:展期作者软件系统的屏幕截图,它产生了异常美丽的、由内而外的、颠倒的音乐。 Kyle Yamakawa拍摄

事实上,我们想要展示的是,计算机可以具有极大的创造力,可以做人类做不到的事情。在人类历史的大部分时间里,我们的创造性直觉都与记忆密不可分:我们所谓的灵感通常是我们过去在别人的作品中遇到的想法的混合。计算过程产生的结果不依赖于雷·库兹韦尔(Ray Kurzweil)所称的人类大脑的3亿个“模式处理器”,从而使记忆从创造性冲动中分离出来成为可能。库兹韦尔认为,人类所有的知识都可简化为通过学习和经验储存在新大脑皮层中的信息模式。

想象一下,让一个人类作曲家只用钢琴上的白色音符来写一个旋律;然后给电脑同样的指令。电脑不会一辈子都在自愿或非自愿的音乐消费中度过,也不会拥有作曲家多年钢琴课所产生的那种肌肉记忆。此外,计算机不受品味和风格问题的困扰,也不倾向于做出可能绕过创新的错误假设。当然,创造性的混音模式本身并没有错。观察一个艺术家对另一个艺术家的影响肯定了艺术表达的公共方面,艺术家不是在真空中工作的事实。但也没有理由认为人类的创造力应该受到人类生理的限制。

经过三年的讨论和实验,账单和我制作了一张名为电子音乐的专辑s_traits..它是去年11月出版的,我们很激动纽约时报将其命名为“2014年度最佳音乐唱片”之一,称之为“情绪化、奇异美丽”。我们当然很高兴获得这一荣誉,但它并不完全属于我们。尽管我们创造了制作这张专辑的计算机系统,但我们始终对它似乎拥有的音乐智能感到震惊。


W一开始,我们收集了一个超过110小时的音频的巨大数据库,这些信息最终被我们的软件系统用来组成它自己的作品。数据库源包括被丢弃的碎片;现场录音;我们各自早期作品的录音;声学乐器样本,包括比尔和我在杜克大学的一架漂亮的施坦威钢琴上录制的录音;电子无人机;鲜为人知的老纪录片的配乐;以及在声音编辑器中将pdf文件作为原始数据打开时产生的数字噪声。其中一个被丢弃的片段是我的打击乐二人组的早期电子版本困境(2010),这部作品的灵感来自肯尼思·科赫(Kenneth Koch)同名的诗歌,这首诗现在只作为一首声学作品存在。我把电子轨道从箱子里放了出来困境交给比尔,他把它切成细碎的声音。

首先,我们将任何我们想要的东西放入数据库中。然而,经过一段时间,我们发现我们正在不言而喻的是留下的内容标准以及所处的事情。我们会定期调查数据库内容并删除任何将我们击中的内容。以下是一些幸存下来的声音文件的示例:

这些声音文件之所以被选中,是因为它们有一种神秘的吸引力。它们包含旋律或节奏信息的核心,空间足够大,可以与其他样本集成。我还应该提到,这些示例本身可能是由数据库中的其他声音文件生成的。通过从现有样本生成新的样本,我们向数据库添加了一定程度的自引用。

我们知道我们投入到数据库中的任何信息都会对从中生成的音乐有一个真实但不可预测的影响。每个样本可能会在任何时刻选择系统选择,但可能在可能发生时不可能知道。通过将样品组织成大致相同的大小无人机,旋律,和弦,节奏,噪声等的类别 - 我们将能够最大化系统的输出各种各样。经过大约三年的囤积音频,我们终于满足了数据库包含了适当的数量和样品混合。我们可以认真对待从我们广泛的声音世界中提取完整,疯狂的潜力所需的一种软件进程。

那么,我们是如何得到我们现在称为bearings_traits的系统来作曲而不是简单地输出随机声音的呢?对我来说,描述bearings_traits背后的设计思考的最简单的方法就是绕道进入青蛙的世界。

我们想发明一种基于硅的生命形式来帮助制作碳基生命形式无法独自想象的音乐。

有一天,当比尔和我讨论我们项目的某些方面时,他提到了一篇1959年的论文,该论文由美国认知科学家杰罗姆·莱特文和智利生物学家、控制论专家亨伯托·马图拉纳合著,题目是“青蛙的眼睛告诉青蛙的大脑”这篇文章中我最感兴趣的部分描述了复杂的视觉现象是如何产生于四个简单操作的同时,即青蛙的视神经纤维,它们检测物体在其视野中的对比度、凸度、运动和变暗。孤立地说,每束纤维传递给青蛙大脑的信息并不十分令人兴奋。但它们协同开火,生成了青蛙周围环境的合成图像,让它可以跳跃、游泳和捕猎。

这让我产生了一个想法,将bearings_traits构建成一个由许多微小软件功能组成的网络,就像我读到的一捆捆两栖类光纤一样。让我着迷的是,像视觉这样神奇的东西可以从连接简单的二元过程中产生,比如光/暗探测。当然,汽车引擎也是这样工作的,如果不那么神秘的话:火花塞着火,活塞运动,然后你就能到达你要去的地方。受这一生物学上的曲折启发,我对轴承特性的思考转向了机械类比。我认为,每个单独的软件过程组成bearings_traits作为小机器,每个执行一个简单的任务,贡献更大,更复杂的目标,创造计算机生成的音乐。

精神机器音乐:“我渴望创作出在我死后很长一段时间内仍能不断进化和自我重塑的作品,”作家约翰·苏普科(John Supko,见上图)写道。 John Supko提供

也许这些机器中最基本的一个例子就是那种简单地决定声音文件持续时间的机器。在bearings_traits可以对一个样本做任何引人注目的事情之前,它必须知道它有多长。有些机器只对给定样本的一部分进行操作,随机选择将要播放的部分的开始和结束点。例如,如果一个声音文件只有22秒长,我们就不希望系统尝试播放任何超过22秒的内容,因为没有什么可播放的。一旦bearings_traits知道它正在处理的文件的大小,它就可以将该信息传递给其他机器,这些机器可以做更有趣的事情,比如根据精确计算的持续时间,从选定的文件创建奇怪的有节奏的循环。

在eAlrings_trait的开发阶段,我通常使用流行的视觉编程语言MAX / MSP编写系统的某些方面,并将其显示到账单。例如,也许我们正在为系统从一个节奏模式平稳地转变为另一个方法。我们将加载一些声音文件,并收听计算机与他们在一起的事。然后我们试图弄清楚如何改进它 - 也许过渡功能太快或太慢 - 或者更慢。为了让您了解这些头脑风暴会话是什么样的,我会输入我将瞬间向您展示的声音文件中的系统。让我们看看发生了什么。

在这个时候,比尔会想出一百万个新主意,他会飞快地说出来,而我则趴在笔记本电脑上,试图关掉这该死的东西:也许这个系统可以检测到它所写的音高信息,然后调出一组和声雄蜂,或者创作新的对位旋律?也许系统可以记录自己然后把这些记录传回系统,自动化生成过程?我会感到困惑和不堪重负和疯狂的眼睛。然后我回家,拼命地将一些法案的辉煌建议融入系统中。之后我们再次见面并重复整个练习。


When the software began at long last to spit out what seemed to us like “first draft” compositions—meaning that we perceived both a structural integrity to the music as well as the potential for further development—we started to intervene as the computer’s collaborators in order to bring the “drafts” to completion. Our approach was to keep the computer’s staggering inventiveness but to refine it in ways only a human (at least for the moment) can. For instance, if I heard something—a melody, a chord progression—that had an emotional attraction for me, I would draw attention to it in the mix, repeating it and developing it further if necessary. If there was potential for a dramatic moment of attack or climax, I’d try to bring it out. Bill made similar interventions. All 26 tracks ofs_traits.是这个三角合作过程的结果。这是其中一条,标题是“被抛下的诗意的正义”:

为了培养涌现和新的联系,我们在bearings_traits中创造了一个最通用的小机器,我们称之为“生殖活套器”。我们称这种机器为生成式,因为它能实时生成自己的节奏轮廓。每次bearings_traits触发环形器时,它都会播放加载到其中的声音文件的不同片段。这确保了活套器永远不会完全重复自己。所选片段的持续时间可以是固定的,也可以是可变的。如果环形器设置为在播放完前一个片段后立即找到一个新的片段,那么故障的节奏可能会无限延长。根据声音文件的性质和长度,以及所选片段的平均长度,产生的效果可能是细微的波动,也可能是相当剧烈的震动。

生成活套的几个副本可以捆绑到一个更大的设备,我们称之为引擎。在一个这样的引擎中,多达5个循环的输出同时在5个不同的样本上运行,可以被叠加,立即创建复杂的复音纹理。

与生成式活套引擎的连续、多层纹理不同,另一个引擎由机器组成,每个机器在数据库中查找少量声音,我们称之为片段引擎。片段引擎可以交替播放多达五个不同的片段,以创建不可预测的节奏模式。用于创建模式的声音文件的数量、从每个文件提取的片段的持续时间、每个片段的播放方向(向后或向前)以及每个片段的播放顺序都取决于系统做出的离散决定。轴承特性也可以决定(或设置)使所有声音片段具有相同持续时间的模式,从而产生或多或少有规律的节奏感,或者随机决定每个片段的长度,从而产生更奇怪、不对称的凹槽。

Bearings_traits有两种基本方法来将不同组件生成的音频集成到“最终”混音中。一种方法相当于由计算机控制一个混合板,决定哪个缓冲器要增强,哪个要衰减。这样,来自一个引擎的独立音频通道就可以被另一个引擎的音频通道所替代。交叉淡出——一个声音同时淡入另一个声音同时淡出——也可能以不同的速度出现,从难以察觉的逐渐到几乎瞬间。一个完整的机器子集专门用于管理这些混合板功能。当声音通过它们控制的通道传出时,这些机器就会检测出来,并决定让声音渐入或渐出。

计算机不仅可以处理比人类更多的信息,而且还不受品味和风格问题的影响。

另一种方法相当于实时混合它所创作的音乐。比尔想让这个系统能够自己录音,然后以各种方式修改录音,将修改后的版本重新添加到它正在制作的音乐中。一种方法可以修改它的录音是通过改变播放速度。这不仅会改变录音中材料的音高,而且如果播放速度非常慢,还可能产生静态的、类似嗡嗡声的效果,如果录音速度明显加快,还会产生狂躁的声能爆发。它还可以以规则或不规则的时间间隔播放自己录制的部分音乐,在音乐结构中创造出独特的感叹词。在任何时刻,每个叹词的速度都可以修改。通过将这两个简单的功能(播放时间间隔和播放速度)联系起来,可以获得更加动态的结果。音乐不仅仅是机械地重复;它的模式以奇怪的小异常为特征,例如片段和音高变化,这会引起人们的兴趣。

当我们听到这些声音材料的操作结果时,比尔和我相信我们已经接近了工程上的意外发现的梦想,或者至少增加了它的频率。为了理解我们的意思,这里有一个新的“草案”组成,特别为鹦鹉螺由bearings_traits的当前版本。我只演示了系统各部分的功能。这段简短的录音将让您了解当所有组件机器连接在一起时bearings_traits可以做什么。你可能还会听到为什么我们认为这些“草稿”适合人类音乐家进一步发展。我们的构图过程总是以这种方式开始,通过开启bearings_traits,并遵循不可预知的结果,到达我们以前无法想象的地方。

你听到的是比尔写的一篇长文的片段s_traits.这是对肯尼斯·科赫(Kenneth Koch)的《海峡》(Straits)的回应,这首诗给了我早期的打击乐二人组灵感。在它生成的每一首新曲子的开头,bearings_traits会选择一个文本片段录音,由Bill朗读,作为一个标题,也作为一个提示,为听者的音乐体验增添色彩。

我所描述的大多数生成过程都使用了某种形式的重复。重复的动态处理是bearings_traits设计的一个主要方面。在音乐中,就像在大多数人类表现形式中一样,重复被用来区分什么是重要的,什么是次要的;它是作曲家如何阐述意义,听众如何感知意义。在莫扎特的钢琴奏鸣曲中,音乐的主题构件是可识别的,因为它们通常是乐曲中最显著的重复元素。那不是神秘。这正是你所期待的。什么然而,神秘的是材料的重复与变化的比例,这种思维过程导致作曲家为了引入新的细节而偏离重复的模式。事实上,通过重复,这个新的细节本身可能在音乐结构上变得重要。

音乐中重复和变化的比例是它所产生的音乐的一部分,但它是以奇特的即兴方式进行的。也许最重要的是,这个系统的细节表明,我和《工作法案》所做的工作使艺术成果优于任何一种科学或技术标准。在试图利用计算机创造力的过程中,我们从未想过有一天会取代自己成为作曲家。一旦我们开始对系统的输出感到高兴和惊讶,我们就可以不再假装是计算机科学家,而专注于制作奇怪的音乐。

Tenax, Dorazio Piero著,20世纪,1964年。 蒙达多利投资组合/贡献者


Bill和我都喜欢你能编造的作文。它常常是奇妙的美丽,由内而外,倒置的音乐,激励我们为自己的设计贡献令人惊讶的细节。系统的创造性使我们能够以不同的方式使用自己的创造力。当我们不喜欢你的性格特征时,我们干脆扔掉它,要求更多,没有任何怨恨。

比尔和我一直计划自己改进系统的组成。目前,我们无法观察它在做什么,也无法做出价值判断。它不能一边听一边说:“太棒了!我想用它做更多的事情!”我们把这个角色留给了自己,因为我们的最终目标是为人类创作出引人注目的原创音乐。此外,让人类的创造力适应计算机奇怪的音乐材料本身就是一种教育。

我们对人类干预计算机工作的强烈感受,不应表明我们对继续发展承载特性的能力不感兴趣。相反,还有很多令人兴奋的工作要做。就我个人而言,我渴望创作出在我离开很久之后仍能继续发展和重塑自己的作品。在某种程度上,Bill和我已经实现了这个目标。我们可以在房间里安装bearings_traits,并无限期地开启它,并确信它永远不会重复。但我们可以做得更多,不仅仅是保证不断的、无尽的发明。给系统一种自我意识显然是下一步。

从理论上讲,每一个有特征的决定都可以被编码、记录和分析。这些决策的例子可能包括:所选择的声音文件(以及它们的哪些部分),声音文件所包含的频率或音调,同时播放的机器数量,以及音乐纹理所产生的和声。从这些信息中,我们可以相对容易地赋予bearings_traits发展类似于它自己口味的东西的能力,给它过去的行为赋值,并允许它增加或减少——一开始是任意的,最终,在历史先例的权重下——这些行为在未来的作品中再次出现。

最终,比尔和我用bearings_traits写的音乐告诉我们,计算确实可以用令人激动的结果补充人类的创造力。在未来,人类将继续是他们艺术作品的裁判,但是选择整合从原始信息中获得的计算机生成的材料——一系列的和弦、图像、舞蹈动作——只会丰富艺术实践。此外,技术还将增加发现看似不相干的信息领域之间意想不到的、令人振奋的联系的潜力。技术过程的发展扩大了人类表达的范围,这远远不是非人化的艺术,而是深深遵循了人类的轨迹。反过来,在这种技术的帮助下发展起来的艺术作品将更加密切地反映出创造它们的人类疯狂、滥交、贪婪的头脑。


约翰Supko是杜克大学亨特家庭音乐助理教授,他和比尔·希曼共同指导媒体艺术+科学项目的涌现实验室。Supko的音乐可以在新阿姆斯特丹和棉织品的标签上听到。

本文最初发表于2015年2月的“信息”问题。

加入讨论