今天我们先从马可夫模型 (Markov Model) 开始聊聊他是如何用在音乐作曲上的。
在第十三天时我们有聊到Hiller 跟 Isaacson在1957年利用马可夫链 (Markov Chain) 来产生随机音符,之後再利用和声与复调的规则去测试这些结果并选择符合规则的材料,再将这些材料修改并组合成弦乐四重奏Illiac。
那麽首先我们先来介绍什麽是马可夫模型。
由马可夫开头的术语很多,首先我们先来介绍几个重点:
马可夫性质:
马可夫性质是机率论中的一个概念,如果一个随机过程在给定当下的状态以及所有过去的状态情况下,他的未来状态的条件机率分布只依赖於当前的状态;也就是说,过去的状态 (该过程的历史轨迹) 与当下状态为独立事件,这样的随机过程就具有马可夫性质。
看不懂的话没关系,後面有范例说明。
马可夫过程:
具备有马可夫性质的过程就称为马可夫过程。
马可夫链:
具备离散状态的马可夫过程,即为一个马可夫链。
马可夫模型:
透过马可夫过程生成序列算法模型。
至於马可夫相关公式的部份我就不贴了,相信上面这些应该有些人已经看不太下去了,我们直接给例子来做说明。
如果今天把我每次去盐酥鸡摊点的东西的机率给设定好,种类有盐酥鸡、鱿鱼、豆腐这三种,每一次只能点一样。
如果我们把机率设定为:
这次点的是盐酥鸡的话,
下次点盐酥鸡的机率为25%; 鱿鱼的机率为40%; 豆腐的机率为35%、
如果这次点了鱿鱼的话,
下次点盐酥鸡的机率为40%; 鱿鱼的机率为25%; 豆腐的机率为35%、
如果这次点了豆腐的话,
下次点盐酥鸡的机率为35%; 鱿鱼的机率为45%; 豆腐的机率为20%。
如果我每天都照三餐去光顾的话,假设我第一天的第一餐点了鱿鱼,请问一个月後的第一餐,我吃到以上三种食物的概率是什麽?
我们可以把我每次吃完下一次会吃的状态画出来如下
所以在我第一餐吃完鱿鱼後,下一餐我有40%的机率会改吃盐酥鸡,25%的机率继续吃鱿鱼,35%的机率改吃豆腐。
而再根据我第二餐选到了什麽,又可以得出我第三餐吃什麽的机率,以此类推,在我吃了一个月後的第一餐,我最大的概率应该是
.
.
.
.
.
.
送医院
那我们再回到前面说的马可夫性质:
如果一个随机过程在给定当下的状态以及所有过去的状态情况下,他的未来状态的条件机率分布只依赖於当前的状态;也就是说,过去的状态 (该过程的历史轨迹) 与当下状态为独立事件。
也就是说如果我今天中餐吃了盐酥鸡了,那麽我晚餐要吃什麽,跟我今天早餐、昨天晚餐午餐早餐还有再之前的每一餐都没有任何关系,唯一有关系的就是我现在要做决定当下(晚餐)的前一餐(午餐)吃的鱿鱼。
以上就是一个马可夫链的简单范例,那麽明天我们再继续马可夫链的部份来聊聊怎麽用它来实做音乐。
>>: 卡夫卡的藏书阁【Book16】- Kafka - KafkaJS 生产者 - 4
Virtual Judge ZeroJudge 题意 将输入的多行字串改变顺序後输出 需要注意的点...
前言 前面我们完成了注册相关的api 今天我们接续完成登入吧!! 今天的目标除了是使用laravel...
孩子玩滑板时,不要干扰他们 Do not bother children when they ar...
前言 JS 30 是由加拿大的全端工程师 Wes Bos 免费提供的 JavaScript 简单应用...
辞职前,最犹豫的一件事是「没请产假会不会太亏」,哈哈。几乎公司所有前辈都会劝你辞职前先做的事:买房跟...