關於變化檢測中的遺傳算法適應度值的質疑

最近在做關於基於遺傳算法的遙感圖像變化檢測,但是我的結果就是不能得到好的正確率。開始時我懷疑自己的程序是否正確,然後再一次苦苦的啃着論文。看了幾遍後沒有感覺算法有問題。那麼,會是哪裏出了問題呢?

開始瞄準遺傳算法中的適應度值。但是,這個是經過證明的。而自己卻不能去證明,那麼就放棄了嗎?不行,誰也阻止不了我思考這個問題。爲了找到一個比較可靠的驗證,我需要一個完全知道地物的真實性,那麼就用模擬的數據了。然後自己ps幾張圖片,這樣得到一個完全確定的groundtruth了。如果適應度值正確,則groundtruth的適應度值將會是最小的那個。接着用遺傳算法來進行尋優,看看尋出來的結果怎麼樣。下面是遺傳算法搜索出來的結果:

遺傳算法搜索出來的適應度值爲:87.9503(這個值越小,說明尋出來的結果越好)

然後我們計算groundtruth的適應度值,下面是groundtruth:

此時,groundtruth的適應度值爲:  108.7653

按理說,要是這種情況:適應度值越小得到的結果越好。那麼遺傳算法搜索出來的結果就該比groundtruth好了,但想想,算法要對比計算正確率就要用到groundtruth了。這樣算法去搜索適應度值的最小,卻造成錯誤增加,這是不是說明算法本來就是一個錯誤呢?如果是錯誤,那麼學術上的論文還用它來研究問題是不是就是偏的呢?那麼那些結果是否值得可信呢?然而這些去問作者,作者卻什麼回覆也不給。

中國學術,不是抨擊而是可惜!我個人很認定每一個做學術的人,因爲做學術真的很幸苦。但是,爲什麼大家不願意共享自己的成果呢?你發了那麼好的文章,這個世界就認定你了,而你爲什麼不願意共享一下代碼呢?哪怕是執行程序都可以。難道這涉及到你的商業祕密?或是有其它難言之隱?

現在,我們大部分人動不動就是去發英文的,當然這提高了你個人的水平。但是,要是你能自己翻譯一下寫篇中文是不是給那些英文不好的人一個便利呢?或是初學的人一個好的開始呢?當然,這裏有很多值得敬佩的人在。至少在C++領域中就有。

有分享,纔有進步。而不是人人都花大量的時間來做你的重複的工作,這不符合學術道德的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章