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

关闭

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

关闭

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

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

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

ON 2013年4月的温暖的一天,我坐在巴黎的朋友的厨房里,试图工程师判断。我试图让我的电脑自己写音乐。我想能够打开它,并且不仅仅是任何愚蠢的小算法曲调,而且美丽,引人注目,神秘的音乐;我很自豪地写自己。The kitchen window was open, and as I listened to the sounds of children playing in the courtyard below, I thought about how the melodies of their voices made serendipitous counterpoint with the songs of nearby birds and the intermittent drone of traffic on the rue d’Alésia.

为了回应这些白日梦,我对我的软件做了一些调整——这是一件混乱的、凭直觉的事情,暴露了我对编程的直觉和自学的方法比尔水手已将新批次的音频文件上传到我们的共享Dropbox文件夹。我在过去几年中,我一直与媒体艺术家的媒体艺术家合作。我加载了账单的声音文件夹以及我的一些自己进入软件并将其设置为滚动。这是回到我的:

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

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

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

正如比尔和我所看到的,人类的创造力可以被定义为在看似不相关的信息片段之间建立联系——由不可预知的主观力量控制。音乐尤其适合作为创作过程的模型。人类作曲家拥有信息的多个组成部分——旋律、和声、节奏——触手可及。但作曲家通常不会按顺序写出乐曲的旋律、和声和节奏。这些元素往往相互牵连,并从作曲家的想象中共同出现。比尔和我想模仿计算机中相互关联的元素的有机出现。

贝多芬:展期作者软件系统的屏幕截图,它产生了异常美丽的、由内而外的、颠倒的音乐。 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提供

也许其中一个机器的最基本示例是简单地确定声音文件持续时间的基本示例。在eAlrings_traits之前可以用样品做任何引人注目的事情,它必须知道它有多长。一些机器仅在给定样本的一部分上操作,随机选择它将播放的部分的开始和端点。例如,如果声音文件只有22秒,例如,我们不会希望系统尝试播放过去22秒的任何东西,因为没有什么可以播放。一旦eAlrings_traits了解它处理的文件的大小,它可以将该信息传递给其他有趣的东西的机器,例如基于精确计算的持续时间从所选文件中创建奇怪的节奏循环。

在bearings_traits的开发阶段,我通常会使用流行的可视化编程语言Max/MSP编写系统的某些方面的代码,并将其展示给Bill。例如,也许我们正在研究一种方法,使系统平稳地从一种节奏模式过渡到另一种。我们会加载一些声音文件,然后听电脑在用它们做什么。然后,我们会试图找出如何改进它——可能是过渡功能太快或太慢,或者是进一步细化它。为了让你们对这些头脑风暴会议有个大概的了解,我将把刚才给你们看的那些声音文件输入到这个系统的早期版本中。让我们看看会发生什么。

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


W母鸡软件开始终于吐出我们似乎像“初稿”compositions-meaning我们感知音乐的结构完整性和进一步发展的潜力开始干预计算机的合作者为了把“草稿”来完成。我们的方法是保持计算机惊人的创造力,但以只有人类(至少目前)能做到的方式来完善它。例如,如果我听到一些东西——旋律,和弦进行——对我有情感上的吸引力,我会在混音中引起它的注意,重复它,必要时进一步发展它。如果游戏中有可能出现戏剧性的攻击或高潮,我便会尝试着将其呈现出来。比尔也做了类似的干预。全部26条轨道s_traits是这个三角合作过程的结果。这是其中一条,标题是“被抛下的诗意的正义”:

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

生成较多的几个副本可以捆绑到我们呼叫发动机的较大装置中。在一个这样的发动机中,可以叠加在五个不同样本上同时操作的最多五个循环仪的输出,即时产生复杂的复音纹理。

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

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

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

另一种方法相当于bearings_traits实时重新混合它所创作的音乐。比尔想让系统能够录制自己的音乐,然后用各种方法修改录音,将修改后的版本添加到它正在制作的音乐中。bearings_traits可以修改它的录音的一种方法是改变播放速度。这不仅会改变录音材料的音高,如果播放速度非常慢,它还可能产生一种静态的嗡嗡声效果,或者如果录音速度显著加快,会产生一种狂躁的声波能量。Bearings_traits还可以在有规律或不规则的时间间隔内播放它自己录制的部分,在音乐纹理中创造独特的感叹词。在任何时刻,每个插入的速度都可以修改。通过将这两个简单的功能(播放时间间隔和播放速度)联系起来,就会产生一个更加动态的结果。音乐不是简单地重复;它的模式具有奇怪的小异常,如碎片和音调变化,这创造了兴趣。

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

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

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

Bearings_traits在它所产生的音乐中发挥了重复和变化的比例,但是以古怪的、即兴的方式来做的。也许最重要的是,这个系统的细节表明,比尔和我所做的工作,使艺术成果凌驾于任何一种科学或技术标准之上。在试图利用计算创造力的过程中,我们从未抱过有朝一日取代自己成为作曲家的希望。一旦我们开始对系统的输出感到高兴和惊讶,我们就可以不再假装是计算机科学家,而专注于制作奇怪的音乐。

Tenax, Dorazio Piero著,20世纪,1964年。 Mondadori投资组合/贡献者


B我和我爱的成分,承载的特点是能够捏造。这种由内而外、上下颠倒的音乐,往往会激发我们为自己的设计贡献令人惊讶的细节。系统的创造力使我们能够以不同的方式使用自己的创造力。当我们不喜欢bearings_traits的时候,我们就直接把它扔了,并要求更多,没有任何怨恨。

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

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

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

最终,音乐账单和我用eAlrings_traits写道,向我们展示了计算,确实可以让人类的创造力与惊险效果相得益彰。在未来,人类将继续成为他们艺术品的仲裁员,而是可以选择从原始信息衍生的计算机生成的材料 - 一系列和弦,图像,编舞运动 - 只能为丰富的艺术实践提供丰富。此外,技术将增加其可能在看似不同的信息领域之间发现意外的通信连接。并且远离除去艺术,技术过程的发展扩大人类表达范围遵循深刻的人类轨迹。反过来,借助这些技术开发的艺术品将依次更加密切地反映创造它们的狂热,混杂,贪婪的人类思想。


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

29条评论-加入讨论