实验部分小结:数据集处理部分
在進(jìn)行實(shí)驗(yàn)部分時(shí),首先要得到文章的源代碼,一般文章中的數(shù)據(jù)集只會(huì)有一個(gè),通過運(yùn)行它,然后結(jié)合一些評(píng)價(jià)指標(biāo),通過與文章中的實(shí)驗(yàn)結(jié)果進(jìn)行對(duì)比,來驗(yàn)證此方法的有效性。那么,我作為一個(gè)讀者,不僅需要把現(xiàn)成的數(shù)據(jù)集跟方法聯(lián)合一起運(yùn)行出來,然后還要學(xué)會(huì)利用別的數(shù)據(jù)集在此方法中進(jìn)行運(yùn)行,以此來驗(yàn)證方法的有效性。并且利用現(xiàn)有的數(shù)據(jù)集在其他方法上運(yùn)行,得到結(jié)果與提出方法進(jìn)行比較。那么在這里,就涉及到了數(shù)據(jù)集處理問題
1.多視圖多標(biāo)簽數(shù)據(jù)集下載問題:
https://mulan.sourceforge.net/datasets-mlc.html
https://archive.ics.uci.edu/ml/datasets.php
http://lear.inrialpes.fr/people/guillaumin/data.php
http://123.57.240.48/forum.php?mod=viewthread&tid=1391
http://lear.inrialpes.fr/data/
通過這些網(wǎng)頁找到相應(yīng)的數(shù)據(jù)集進(jìn)行下載
2.多視圖多標(biāo)簽數(shù)據(jù)集處理問題:
下載后的數(shù)據(jù)集大多是沒有處理過的,里面又許多的多視圖特征,比如顏色特征,全局特征等等,還有標(biāo)簽的訓(xùn)練集和測試集,這時(shí)一般的方法是通過三個(gè)m文件進(jìn)行處理,分別是 vec_read.m,vec_write.m,以及數(shù)據(jù)集的對(duì)應(yīng)的m文件。比如:
比如在load_espgame_data.m中,我們在里面可以根據(jù)自己的需要選擇多視圖的維度特征,需要4維或者5維等
Note:
1.注意這里對(duì)數(shù)據(jù)集處理的時(shí)候一定要先看下原文章中的數(shù)據(jù)集格式是什么樣的,否則處理后的數(shù)據(jù)可能在文中的方法中無法運(yùn)行。
比如下面這個(gè)例子中,因?yàn)樵谔幚頂?shù)據(jù)時(shí)沒有添加Dim這一項(xiàng),導(dǎo)致運(yùn)行的時(shí)候報(bào)錯(cuò)
2.那么在處理數(shù)據(jù)集的時(shí)候,需要按照文章中給出的數(shù)據(jù)集的要素來進(jìn)行處理嗎?比如這張圖?這是不是代表我必須要有25000的樣本數(shù),類別數(shù)也要一樣,其他也要一樣才行呢?如果不一樣,會(huì)不會(huì)影響到數(shù)據(jù)的結(jié)果?
根據(jù)實(shí)踐結(jié)果顯示,在處理數(shù)據(jù)集的時(shí)候并不需要完全按照表格中的各個(gè)元素來進(jìn)行處理,畢竟也許你下載到的數(shù)據(jù)集類別可能本身就不一樣,或者因?yàn)槟汶娔X內(nèi)存的問題導(dǎo)致你根本無法運(yùn)行幾十萬的樣本標(biāo)簽,這時(shí)你只能選擇其中的一部分?jǐn)?shù)據(jù)進(jìn)行運(yùn)行了。由于電腦內(nèi)存的原因,無法得到一個(gè)最優(yōu)結(jié)果的話,這種情況下要么換一個(gè)內(nèi)存更大的電腦,要不就是對(duì)數(shù)據(jù)集進(jìn)行拆分,選擇一部分?jǐn)?shù)據(jù)。然后多次實(shí)驗(yàn),選擇最優(yōu)結(jié)果。
3.在處理數(shù)據(jù)集的時(shí)候,一定要保證標(biāo)簽的數(shù)量和特征的數(shù)量一致,也就是標(biāo)簽維度和特征維度一致,否則就會(huì)報(bào)出下面的錯(cuò)誤來。
4.遇到下面這種情況,可能是因?yàn)閿?shù)據(jù)集文件里含有.txt文件,
錯(cuò)誤提示如下:
錯(cuò)誤使用 fread
文件標(biāo)識(shí)符無效。使用 fopen 生成有效的文件標(biāo)識(shí)符。
出錯(cuò) vec_read (line 56)
出錯(cuò) pascal07 (line 16)
這時(shí)對(duì)于txt文件,直接采用matlab中的load函數(shù)處理數(shù)據(jù)即可,具體語句如下(在命令行出直接輸入即可):
load(‘?dāng)?shù)據(jù)集名稱_train_classes.txt’)
load(‘?dāng)?shù)據(jù)集名稱_test_classes.txt’
5.遇到這種問題時(shí):
在網(wǎng)上搜索到的解決方法,一般是針對(duì)矩陣求逆時(shí)引起的這種錯(cuò)誤,然后又對(duì)應(yīng)的解決方法,參考這個(gè):http://t.csdn.cn/NyEQr
但針對(duì)我的實(shí)際情況來看,并沒有求逆的運(yùn)算,所以有可能是因?yàn)檫@種原因?qū)е聢?bào)錯(cuò)。如下:
或者僅僅是因?yàn)槲姨幚淼倪@個(gè)數(shù)據(jù)集跟文章中提出的方法命名備份有些沖突……這個(gè)也是很有可能的,畢竟利用別的數(shù)據(jù)集進(jìn)行運(yùn)行沒有報(bào)出這樣的錯(cuò)誤
總結(jié)
以上是生活随笔為你收集整理的实验部分小结:数据集处理部分的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于数字证书链的一点认知
- 下一篇: 计算机编辑学,计算机常识及电文档编辑学习