读天才与算法:人脑与AI的数学思维笔记16_音乐图灵测试

1. 艾米

1.1. 人工智能作曲家

1.1.1. 分析机可能会生成任意复杂程度、精细程度的科学的音乐作品

1.1.1.1. 阿达·洛夫莱斯

1.1.2. 巴赫的作品是大多数作曲家开始学习创作的起点,也是大多数计算机开始学习作曲的起点

1.1.3. 让我震惊的不是这首作品让我为以为它是巴赫创作的,而是在短短一首乐曲的时间内我被所听到的打动了

1.1.3.1. 背后的算法是如何让我认为所听到的是伟大的巴赫创作的乐曲

1.2. 大卫·柯普(David Cope)

1.2.1. 决定在乐思枯竭的状况下求助于算法,探索阿达的预言

1.2.2. 如果有一种算法可以准确地理解、把握他的创作风格,那么每当他的创作陷入困境并无法继续的时候,这个算法就能给他提供与他创作风格相兼容的建议

1.2.3. 至少算法会帮助他理解并找到可能会是更好的选择

1.2.3.1. 这个算法将成为激发创造力的催化剂

1.2.4. 为他的这一套试验命名为"音乐智能试验"(experiments in musical intelligence),简称EMI

1.2.5. 从算法试验中诞生的"作曲家"被命名为艾米(Emmy),起这个名字一方面是避免与英国百代唱片公司(EMI)重名,另一方面是柯普想让艾米更人性化

1.2.6. 柯普相信每一段音乐都内含了编码和指令,用以创造出其他相似但微妙不同的音乐片段

1.2.6.1. 面临的问题是如何将这些指令具体化成代码

1.2.7. 在艾米的帮助下,他开始为每位作曲家建立一个与他们的风格相对应的数据库

1.2.7.1. 他们具有专属特性的音乐语言语汇和技法
1.2.7.2. 音符就是字母
1.2.7.3. 这些特征可能会以不同的速度、节奏和音高出现,但对于发现潜在的模式,数学是很拿手的

1.2.8. 当许多不同的片段适合组合时,就需要做出选择了

1.2.8.1. 柯普不喜欢使用随机性去选择,而更喜欢使用数学公式去选择

1.3. 歌剧《摇篮坠落》(Cradle Falling)

1.3.1. 柯普在创作歌剧上下了7年的功夫,在艾米的帮助下,他用两周时间就完成了这部歌剧的创作

1.3.2. 歌剧《摇篮坠落》(Cradle Falling)发表时,他决定不让外界知道这部作品是在艾米的帮助下创作的,以免使乐评人产生偏见

1.3.3. 发表两年后的1987年,歌剧首次公演时,柯普很高兴地发现这部作品获得了他职业生涯中最好的一些评论

1.3.3.1. 这作品太感人了!无疑是一部现代的经典名作!

1.4. 柯普的分析揭示了作曲家的作品带有强烈的富有个人特色的模式性

1.4.1. 从巴赫到莫扎特,从肖邦到勃拉姆斯,从格什温到斯科特·乔普林,每个人似乎都有自己偏爱的特定的动机

1.4.2. 在音乐中,这些指标就是音符的模式,它们就像画家标志性的笔触一样

1.4.3. 有些作曲家,如巴赫,甚至在乐谱上用音符来签名

1.4.3.1. 巴赫在其最后的巨作------《赋格的艺术》中最后一首未完成的赋格里,以"音乐签名"的方式把自己的姓名"BACH"留于其中
1.4.3.2. 在德国乐理体系里,与B对应的唱名是降si,与A对应的唱名是la,与C对应的唱名是do,与H对应的唱名是si

1.4.4. 在将作品分割成一个个单元和标志性动机,即形成每个作曲家的数据库之后,柯普的算法转向了他所说的"重构"

1.4.4.1. 识别、拆解、分析一个复杂结构是一回事,找到一种方法将经过拆解的构件重新组合构造成一个全新的结构是另一回事
1.4.4.2. 为每一部分都创建了热图

1.4.5. 在着手识别作曲家的标志性乐句时发现,这种方法的难点在于确定音符的数量

1.4.5.1. 如果太少了,那么满篇都是
1.4.5.2. 如果太多了,乐句就会被过度确定,以致输出变成了复制原作品
1.4.5.3. 除了音高,你还需要考虑节奏模式

1.5. 1993年,柯普和艾米准备发行他们的第一张专辑《设计的巴赫》(Bach

By Design),这张专辑收录了艾米创作的巴赫风格的乐曲

1.5.1. 专辑中的曲目因为难度太高,人类演奏员难以胜任,所以他们不得不求助于一台既能作曲又能演奏作品的电脑

1.5.2. 并没有受到乐评人的好评

1.6. 在1997年推出了第二张专辑

1.6.1. 这张专辑里收录的作品的风格包括他分析过的其他作曲家,如贝多芬、肖邦、乔普林、莫扎特、拉赫曼尼诺夫和斯特拉文斯基等

1.6.2. 不一样的是,这次专辑中的曲目全是由人类音乐家演奏的

1.6.2.1. 乐评人的反应要积极得多

1.7. 把艾米输出的音乐称为人工智能创作的音乐是个骗局

1.7.1. 艾米的创作依赖于作曲家数据库

1.7.2. 作为作曲家,柯普拥有职业的敏感性和专业的分析工具,可用于选出与作曲家风格相对应的元素,并重组这些元素

1.7.3. 艾米的大部分创意来自柯普和历史上伟大的音乐大师的作品

1.7.4. 柯普使用自上而下的编码过程构建了艾米,是柯普编写了所有的代码用来输出音乐

1.7.4.1. 可以将更具自适应性的新算法应用到作曲家的原始数据里,而无须经过人类音乐分析的烦琐过程,并且我们可以训练这些算法从零开始学习音乐理论

1.8. 打破传统规则是创造性思维的标志

1.8.1. 早在13世纪,在作曲的规范里就禁止使用平行五度,直至今日这还是作曲界的共识

1.8.2. 平行五度(parallel fifths)指的是乐曲的两个声部隔开纯五度平行进行

1.8.3. 在分部写作中,两声部同向进入纯五度,叫作隐伏五度,这种进行中隐含着平行五度

1.8.4. 巴赫有时也会打破规则,使用平行五度

1.8.4.1. 创作的乐趣之一就是打破规则,这是实现创意的最佳机会

1.8.5. 和声有一种二维的特性:和声必须在垂直方向上有意义,而旋律本身在水平方向上也必须有逻辑并且和

1.8.5.1. 创作和声作品并将这两个维度结合起来是一个考验

2. SPEAC

2.1. 如果数据库是字典,那么"SPEAC"就是作曲家使用字典中的单词编写乐句的方式

2.2. 确定了乐句的五个基本组成要素

2.2.1. Statement(声明):"简单存在"的乐句,只能做重复

2.2.2. Preparation(准备):以出现在S或其他要素前为前提,修改其含义的要素

2.2.3. Extension(扩展):一种扩充、延展S的方法

2.2.4. Antecedent(先导):有重大暗示、引导作用并要解决问题的乐句

2.2.5. Consequent(解决):将A未解决的问题解决的乐句

2.2.5.1. C通常与S具有相同的和弦或旋律片段,但是它们具有不同的含义

2.3. 许多古典主义时期的作曲家都会使用这种套路来作曲,有时他们是在不知不觉的状况下使用,但通常他们在学习作曲的时候就学会了这种作曲技法

3. 测量音程的和谐度

3.1. 音程指两个音级在音高上的相互关系,即两个音在音高上的距离,其单位是"度"

3.2. 若纯八度音程和纯五度音程是和谐的,不会造成很大的紧张感

3.2.1. 这在数学中也得到了证实:两音之间的振动频率比是小整数比:纯八度是1:2;纯五度是2:3

3.3. 钢琴上两个相邻键之间的音程(小二度或半音)就会造成很强的紧张感

3.3.1. 在数学中也反映了这一点:它们的振动频率比是更大的数字之间的比(15:16)

4. 音乐图灵测试

4.1. 柯普与道格拉斯·霍夫斯塔特(Douglas

Hofstadter)合作,在俄勒冈大学举办了一场音乐会

4.1.1. 第一首是巴赫所作但并不广为人知的作品

4.1.2. 第二首是艾米以巴赫风格创作的作品

4.1.3. 第三首是音乐理论教授史蒂夫·拉尔森(Steve Larson)以巴赫风格创作的作品

4.1.4. 这三首曲目由拉尔森的妻子,钢琴家威妮弗雷德·科纳(Winifred

Kerner)按随机顺序演奏

4.1.5. 算法艾米所做的作品被大家投票表决为"巴赫本人的作品"

4.1.6. 巴赫本人的作品居然被大家投票表决为"拙劣的伪造品"

4.2. 霍夫斯塔特

4.2.1. 霍夫斯塔特是一位计算机科学家,著有经典著作《哥德尔、艾舍尔、巴赫:集异璧之大成》(Gödel,Escher,Bach:an

Eternal Golden Braid)

4.2.2. 作曲是规则、模式、算法以及其他诸多因素的融合,这就是霍夫斯塔特所说的"环游世界,行万里路"所得到的东西

4.2.3. 还有一次,霍夫斯塔特演奏了两首曲子,一首是肖邦的,另一首是艾米创作的肖邦风格的曲子

4.2.3.1. 观众中有许多作曲家和音乐理论家,但他们都认为电脑生成的曲子是肖邦所作

4.3. 同一部作品,却让听众的态度发生180度大转变,而其中唯一的改变是,他是否知道作品是由计算机代码生成的

4.4. 算法触及到了人们创作音乐的核心

4.4.1. 音乐在很大程度上是由'即兴重复乐段'组成的

4.4.2. 没有哪首富有表现力的音乐是不使用算法的规则来创作的

4.4.2.1. 柯普

4.4.3. 只有那些真正的门外汉才不敢承认他们的情绪状态可以被代码左右

4.4.4. 音乐变成一种纯粹客观、冷酷的东西

4.5. 与其说音乐像数学,不如说数学像音乐

4.5.1. 尽管音乐可能比我们通常理解的更加数学化和编码化,但这并不会影响、剥夺音乐情感的本质

4.5.2. 所喜爱的数学包含着巨大的情感内容,这让我们被其深深吸引

4.5.3. 那些有能力欣赏数学语言的人会随着一个曲折的证明而心潮澎湃,就像我们很多人会被一段动人心弦、饱含深情的音乐所激励、感动一般

4.6. 在我们大脑中运行的"人类代码",已经进化到对构成自然界的混乱的抽象结构具有高度的敏感性

4.6.1. 当我们听音乐或探索具有创造性的数学问题时,我们被暴露在最纯粹的结构形式中,我们的身体会在情感上做出反应,用以表明对这种结构的认识

4.7. 非随机序列在底层基础上可以用某种算法压缩数据,而随机序列并不能

4.7.1. 音乐与噪声的区别在于其内含的算法不同

4.7.2. 音乐在某种程度上是对生活经历的情感反应

4.7.2.1. 其实是听众把他们自己的情感经历带入到他们所听到的音乐中
4.7.2.2. 听众、观众或读者,在一件艺术作品的创作过程中所起的作用常常被低估
4.7.2.3. 许多作曲家认为这种情感反应来自于音乐的结构,但是,你无法为情绪编程

4.7.3. 而算法都是在隔音的录音棚里完成作品的,没有与周围的世界产生联系、互动

4.7.3.1. 没有体验,就不要指望它能真的模仿做出大师之作

4.8. 音乐和情感之间的关系一直是作曲家们"魔力"的源泉

4.8.1. 情感不属于音乐,而属于听众

4.8.2. 音乐本质上是无法表达任何东西的,无论是一种感觉,一种心态,一种心理情绪,一种自然现象

4.9. 我们经过长期的默许或根深蒂固的思维定式作为标签和惯例,给音乐增添、强加了这种属性

4.9.1. 我们已经无意识或习惯性地混淆了音乐的本质

4.10. 作曲家可能会选择一个小调来捕捉一种情绪,这意味着一种直接的编码,但音乐理论还没有发展到我们能充分理解这种编码如何运作的阶段

4.10.1. 也许作曲家已经成功地识别了大脑编码某些情绪的方式

4.10.2. 巴赫喜欢写谜题一样的赋格曲

4.10.3. 勋伯格开创了十二音体系

4.10.4. 巴托克使用斐波纳契数列作曲

4.10.5. 梅西安在《时间结束四重奏》中用质数变值作为四重奏的框架

4.10.6. 菲利普·格拉斯师从布朗热学习作曲期间感觉学业异常艰难,但他最终脱颖而出,开创了简约主义音乐

5. 斯特拉文斯基

5.1. 认为约束是他产生创造力的关键

5.2. 我越是限制自己的领域,越是给自己设定障碍,我的自由越将变得伟大和有意义

5.2.1. 我将会走得更远

6. 电梯音乐

6.1. 又被称为"衬托音乐"

6.2. 即安静柔和的背景音乐

6.3. 这样的音乐在过去被称作"电梯音乐",因为我们经常在电梯里听到它

6.4. 这种音乐是专门设计出来让人放松心情或增加活力的

6.5. 有时候,你甚至没有意识到正在播放这种音乐,但其总是会让你有所反应

7. 深度巴赫

7.1. DeepBach

7.1.1. 音乐专业学生盖坦·哈德耶勒斯(Gaëtan Hadjeres)为他的博士论文开发的一种算法

7.2. 该算法旨在透过现象看本质,将巴赫的作品二维化,并进行分析

7.2.1. 不是在时间轴上向前组合,而是向后查看

7.3. 基于这种多维度的分析导致,"深度巴赫"创作出了比以前的算法所做的在结构上更加连贯的圣咏

7.4. "深度巴赫"的这种分析仍然是局部层面的分析

7.4.1. 其以每个音符为中心向四周扩散,一组一组地观察并进行分析,但是"音群"的大小是受限制的

7.4.2. 在"深度巴赫"的算法中,"音群"的范围是以某音符为中心的前后各四拍

7.5. "深度巴赫"的作品有50%被认为是巴赫的

7.5.1. 学习过作曲的志愿者成绩稍好,但仍然有45%的"深度巴赫"作品被认为是巴赫所作

7.5.2. 巴赫在他的作品中没有犯任何错误,然而他25%的作品被判定为机器生成的

7.6. 任何试图向大师学习的项目的关键难点在于缺乏良好的数据

7.6.1. 在计算机图像识别的领域,算法会有数百万张图像训练自己

7.6.2. 在"深度巴赫"这个算法中,只有区区389个数据采集点,而大多数作曲家远没有巴赫这样多产

7.6.3. 测试巴赫的圣咏是很有实践意义的,因为其提供了一组非常相似的单一现象的例子

7.7. 人类创造的艺术不受机器进步影响的终极安全锁

好作品的数量太少,机器无法学习如何复制

相关推荐
古希腊掌管学习的神26 分钟前
[搜广推]王树森推荐系统笔记——曝光过滤 & Bloom Filter
算法·推荐算法
qystca27 分钟前
洛谷 P1706 全排列问题 C语言
算法
浊酒南街33 分钟前
决策树(理论知识1)
算法·决策树·机器学习
就爱学编程40 分钟前
重生之我在异世界学编程之C语言小项目:通讯录
c语言·开发语言·数据结构·算法
oneouto41 分钟前
selenium学习笔记(二)
笔记·学习·selenium
B站计算机毕业设计超人41 分钟前
计算机毕业设计PySpark+Hadoop中国城市交通分析与预测 Python交通预测 Python交通可视化 客流量预测 交通大数据 机器学习 深度学习
大数据·人工智能·爬虫·python·机器学习·课程设计·数据可视化
学术头条1 小时前
清华、智谱团队:探索 RLHF 的 scaling laws
人工智能·深度学习·算法·机器学习·语言模型·计算语言学
sealaugh321 小时前
aws(学习笔记第十九课) 使用ECS和Fargate进行容器开发
笔记·学习·aws
18号房客1 小时前
一个简单的机器学习实战例程,使用Scikit-Learn库来完成一个常见的分类任务——**鸢尾花数据集(Iris Dataset)**的分类
人工智能·深度学习·神经网络·机器学习·语言模型·自然语言处理·sklearn
feifeikon1 小时前
机器学习DAY3 : 线性回归与最小二乘法与sklearn实现 (线性回归完)
人工智能·机器学习·线性回归