目前我能想到的办法是这样的:

1,提取照片中的实体特征,借用某个pre-trained model进行tag标记。

2,将特征组合起来,形成一个bag-of-word model,然后将这个向量作为输入。进入CNN。

3,手动对照片贴标签,主要是对情感进行分类(如:安静、快乐,这样可以直观调节旋律)

4,将图片本身的这个特征向量,与情感标签一起作为旋律的生成参数。

首先要做的是提取照片中的实体特征。这是一个非常庞大的工程,需要很多的预训练。但是幸运地是,我手上的Azure付费订阅,可以支撑微软的Cognitive Service平台。

https://azure.microsoft.com/zh-cn/services/cognitive-services

不得不承认今年微软的Cognitive Service在功能上又有了一些强化,增加了QnA Maker、说话人识别等一系列很实用的API,为我之后的很多idea提供了方便,而且更重要的是,微软恰巧也强化了原来的计算机视觉API,现在的计算机视觉API相比之前的已经进化了很多。以前如果我放一个面包的照片,它最多返回一个“Food”标签。而现在,它不仅返回了Result分类结果,还返回了一大堆tag,请看下面两张图片:

尽管最近微软缩减了各个俱乐部的经费,我还是要在这里大喊三声:

微软大法好!

微软大法好!

微软大法好!

好了,那么这个tag就处理完毕。接下来我们要处理的是bag-of-word model。这个思想很简单,想象一个向量空间,我们把所有的词汇都映射成一个向量,那么这个向量的特征和这个词的特征是挂钩的,相似的词语会很近,而相反的词语会几乎线性相关。目前将词转换为向量的成熟方案是word2vec,英文上最出名、实用的应该是C&W 2008模型,中文方面没有业界知名的模型,但是我推荐这个:

http://spaces.ac.cn/archives/4304/

我个人觉得非常地好用。

那么我以C&W 2008模型举例,取词向量dimension = 50,那么我们将所有的向量相加(反正没有相互联系),得到一个综合向量,再作为卷积网络的输出即可。

卷积神经网络的结构我之后再继续讲述,最后讲一下怎么对图片手动贴标签。在我的设想中,这个标签应该是直观的情感标签,是一个人类看到这张图片所有的直觉反应。

所以我设想,将标签设为:生、老、病、死、爱别离、怨憎会、求不得、五阴炽盛

平静、快乐、悲伤、惊奇、厌恶、愤怒……

之后通过神经网络进行multi-labeled classification。

【Python图像特征的音乐序列生成】如何标记照片的特征的更多相关文章

  1. 【Python图像特征的音乐序列生成】使用Python生成简单的MIDI文件

    这个全新的Python音乐创作系列,将会不定期更新.写作这个系列的初衷,是为了做一个项目<基于图像特征的音乐序列生成模型>,实时地提取照片特征,进行神经网络处理,生成一段音乐. 千里之行, ...

  2. 【Python图像特征的音乐序列生成】关于数据集的分享和样例数据

    数据集还在制作中,样例数据如下: 我将一条数据作为一行,X是ID,O代表了情感向量,S是速度,是一个很关键的参数,K是调式,M是节拍,L是基本拍.后面是ABC格式的序列,通过embedding化这些音 ...

  3. 【Python图像特征的音乐序列生成】图像特征在旋律生成中有什么用

    jishude 首先援引一个资料网页:http://www.cosmosshadow.com/ml/%E5%BA%94%E7%94%A8/2016/03/01/%E9%9F%B3%E4%B9%90%E ...

  4. 【Python图像特征的音乐序列生成】关于mingus一个bug的修复,兼改进情感模型

    mingus在输出midi文件的时候,使用这样的函数: from mingus.containers import NoteContainer from mingus.midi import midi ...

  5. 【Python图像特征的音乐序列生成】关于音乐生成的思路转变

    在前几天的讨论会上,有师兄指出原来的方法实在是很难训练,所以我改进了音乐生成的思路. 首先,我用LSTM生成的一定是一段音乐的序列化表达,那么我就可以用成型的一些数据集去训练LSTM.为了避免生成的音 ...

  6. 【Python图像特征的音乐序列生成】第一阶段的任务分配

    从即日起到7月20号,项目成员进行了第一次任务分配. 赵同学A.岳同学.周同学,负责了图像数据的情感数据集制作,他们根据自己的经验,对图像进行了情绪提取. 赵同学B全权负责向量映射这一块的网络搭建. ...

  7. 【Python图像特征的音乐序列生成】关于小样本的一些思考

    我之前就注意到,深度学习和音乐结合,尤其是从乐理出发进行结合(而不是纯粹的进行音乐生成),是一个尚未被深度挖掘的全新领域.可想而知,这个方向符合我要求的数据肯定是要自己搜集了. 自己搜集的数据,在量上 ...

  8. 【Python图像特征的音乐序列生成】思路的转变

    关于生成网络这边,可能会做一个深度的受限玻尔兹曼机,这样可以保证生成的音乐不会太相似. 情绪识别网络和生成网络的耦合,中间变量可能直接就是一个one-hot向量,用来标注指定的情绪,不做成坐标那种难以 ...

  9. 【Python图像特征的音乐序列生成】如何生成旋律(大纲),以及整个项目的全部流程

    今天连看三篇论文,不是很细致地看,也没有具体去实现,只是大概明白了一些新思路.这三篇论文,一篇概述了Decoder-Encoder模型,一篇延伸这个模型,首次提出了Attention机制,最后一篇详细 ...

随机推荐

  1. JDK5特性

    静态导入(了解) JDK 1.5 增加的静态导入语法用于导入类的某个静态属性或方法.使用静态导入可以简化程序对类静态属性和方法的调用. 语法: import static 包名.类名.静态属性|静态方 ...

  2. asn编译常见报错

    TypeError: unsupported operand type(s) for -: 'str' and 'int' 可能是该用列表的地方没用列表. 1. ’-‘不支持,需改为'_' asn1t ...

  3. 【机器学习】k近邻算法(kNN)

    一.写在前面 本系列是对之前机器学习笔记的一个总结,这里只针对最基础的经典机器学习算法,对其本身的要点进行笔记总结,具体到算法的详细过程可以参见其他参考资料和书籍,这里顺便推荐一下Machine Le ...

  4. (I/O完成端口中的)995错误

    在windows下,可能会出现995的错误,msdn对该错误的解释为: The I/O operation has been aborted because of either a thread ex ...

  5. Widows下Faster R-CNN的MATALB配置(CPU)

    目录 1. 准备工作 2. VS2013编译Caffe 3. Faster R-CNN的MATLAB源码测试 说实话,费了很大的劲,在调试的过程中,遇到了很多的问题: 幸运的是,最终还是解决了问题: ...

  6. 《深入理解Java虚拟机》笔记04 -- 并发锁

    Java虚拟机在操作系统层面会先尽一切可能在虚拟机层面上解决竞争关系,尽可能避免真实的竞争发生.同时,在竞争不激烈的场合,也会试图消除不必要的竞争.实现这些手段的方法包括:偏向锁.轻量级锁.自旋锁.锁 ...

  7. uoj#402. 【CTSC2018】混合果汁(主席树+二分)

    传送门 我们先把果汁按照美味度排序,枚举\(d\),那么肯定是贪心的选择美味程度不小于\(d\)的且最便宜的果汁 发现\(d\)可以二分,那么在主席树上二分就可以了 据说还有整体二分的大佬然而我并不会 ...

  8. (转载)Oracle配置监听服务

    原文地址: http://www.cnblogs.com/1016882435AIDA/p/6378337.html 一,在服务端配置oracle端口 在命令行中输入netca命令,打开相关配置默认端 ...

  9. 第一个Three.js程序——动手写一个简单的场景

    三维场景基本要素: 步骤: 代码: 源码: <!DOCTYPE html> <html lang="en"> <head> <meta c ...

  10. Codeforces Round #432 (Div. 2, based on IndiaHacks Final Round 2017) B

    Arpa is taking a geometry exam. Here is the last problem of the exam. You are given three points a,  ...