2011-8-8
来源:互联网 发布:百合网靠谱吗 知乎 编辑:程序博客网 时间:2024/04/30 04:44
重新做实验:
由于我们得到的test data中一共有1735首歌,其中只有1590首歌曲是有效的。但是最初我们忽略了这个问题 意味如果歌曲是0byte的话,不会计算它的feature。
之后我们得到了testdata_3.mf 进而得到了testdata_3.arff,其中testdata_3.arff一共2036行,剪掉开头的442行head,剩下的数据只有1594行,并且每首歌都有标注行,所以一共有1594/2=797个wav的feature。这个跟我们得到的prediction的结果是一致的,即只有797个wav进行了prediction。
当我们发现了这个减半进行prediction的问题之后,我们以为是因为在提取feature的时候是隔行进行的,于是对testdata_3.mf进行了double,也就是重复每一行。于是我们得到了testdata_3_double.mf,进而得到了testdata_3_double.arff. 这次经过计算,testdata_3_double.arff一共3631行,减去443行head,在/2,还有1594行。貌似符合。但是我们还是需要重新验证。
Processed: 620 - /home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/7/33684.Whoa_(Explicit_Album_Version).wav
Processed: 621 - /home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/7/4787.We_Fly_High-Jim_Jones.wav
Processed: 622 - /home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/6/17145.兩句話.wav
Processed: 623 - /home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/6/5964.魔女遊戲-命運的惡作劇.wav
Processed: 624 - /home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/6/153068.愛情之所以為愛情(美妙鋼琴版).wav
/home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/7/20808.I'm_Illy.wavcl
/home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/7/4787.We_Fly_High-Jim_Jones.wavcl
/home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/6/6529.戀曲1990(羅大佑).wavcl
/home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/6/17145.兩句話.wavcl
/home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/6/218623.因為我太傻_(SS501)_~_F4尹智厚之歌.wavcl
/home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/6/5964.魔女遊戲-命運的惡作劇.wavcl
/home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/6/230181.歲月流逝_(Remake)(宋承憲).wavcl
/home/sudan/Desktop/research/MusicGenreClassification/testdata/first-100_wav_16k_mono/6/153068.愛情之所以為愛情(美妙鋼琴版).wavcl
不知道为什么会这样。也就是说我们当初做training的时候,也有一般的data没有被用到。。。
============
但是经过进一步的检查features_all.arff 发现其实一共有2442行剪掉442行开头,还有2000行,刚好是1000个sample的feature。貌似又是ok的。。。。
============
anyway,我重新double了testdata_4.mf 这个是筛选掉了所有空白音频后的wav list(一共1590) ,得到testdata_4_double.mf 进而生成testdata_4_double.arff 发现这次都ok了。
=======
但是进一步又发现,testdata_4_double.arff 一共有1594个有效行,但是testdata_4_double.mf 只有1590行。经过检查发现,其中testdata_4_double.arff某些行是重复了的(不知道为什么)。并且发现pred的结果中也有1594个结果。。。 于是我们之前的testdata_4_double.mf 是不能用的。于是得从生成的testdata_4_double.arff 重新提取list
grep "%" testdata_4_double.arff > testdata_4_double.list
这样才对应上。。。。
=============
进一步又发现问题, uniq testdata_4_double.list 后发现只有1589行,这个跟原本list里1590不符合。进一步检查发现有个音频文件只有8秒长度,并且在arfffile中没有找到它。于是我们怀疑那少了的一行是这个文件产生的。
后来发现问题在于我们修改testdata_4_double.arff时(因为output的类型要和输入的类型匹配,也就是那10个genre,所以我们临时将所有testdata的类型都标称了cl。此时arff开头的文件标注哪儿有点问题 因为也被replace了)
===============================================================================
重新生成各种文件,一切ok 写了perl脚本,根据pred的结果将文件重新归类: perl afterpredic.pl /home/sudan/Desktop/research/MusicGenreClassification/testdata_4_double.list pred_4_double.out /home/sudan/Desktop/research/MusicGenreClassification/predict/
并且生成所谓的confusion matrix(主要是为了看后来的音频文件如何各自分配到那10个genre)
bl: 0 0 0 1 1 0 2 0 0 0 3 3 4 0 0 0 0 015 5 0 0 3
cl: 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 00 0 0 0 0
co: 0 0 0 1 1 0 0 0 1 0 1 1 4 0 0 0 0 09 0 0 0 0
di: 0 0 2 0 0 0 0 0 0 2 1 0 0 0 0 0 0 30 0 1 0 2
hi: 0 9 17 3 4 8 7 48 3 26 0 0 0 1 0 40 5 0 3 8 0 25
ja: 1 12 17 9 21 9 31 1 23 18 53 53 191 0 3 0 8 56 7 2 0 3
me: 0 1 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 00 0 2 0 17
po: 3 65 37 63 50 39 26 13 44 21 12 536 6 0 3 0 25 9 44 37 0 12
re: 1 10 24 12 17 30 9 30 27 13 3 7 268 0 2 0 19 3 31 26 0 11
ro: 0 3 2 1 4 4 3 3 1 4 1 0 0 0 0 0 0 00 2 1 0 3
不是很乐观。尤其视听了classical。开始的classical在序号为11的文件下,从上面的confusion matrix可以看到(11 column),大部分被归到ja 和po。。。
- 2011-8-8
- 2011-8-8(2)
- 2011-3-8
- 2011 1-8
- april 8,2011
- 2011-8-6
- 2011-8-9
- 2011-8-11
- 2011-8-12
- 2011-8-12
- 2011-8-15
- 2011-8-17总结
- 2011-8-21
- 2011-8-23
- 2011-8-24
- 2011-8-26
- 2011-8-27
- 2011-8-28
- Ubuntu 11.04 安装极点五笔 for ibus
- Dangling meta character '*' near index 0
- poj 1151 && hdu 1542 求矩形面积并(线段树)
- TV将成为开发者的新战场
- 引用母版页或在UpdatePanel下JS获取服务器控件的值以及后台JS弹出框
- 2011-8-8
- 图像…….因其本身有错无法显示
- 沟通漏斗
- 中国名校生源急剧变迁 农村学生难入名牌大学
- Linux下设计一个简单的线程池
- 你中了微软的圈套么?
- 换行符 和 文件结束符EOF
- java中生成32位十六进制的字符串 为什么不能用toString()方法
- ASP.NET MVC框架(第一部分)