1. 程式人生 > >【簡單易懂】Benchmark和baseline的區別!

【簡單易懂】Benchmark和baseline的區別!

作者:Anonymous
連結:https://www.zhihu.com/question/28823373/answer/101504099
來源:知乎
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。

Benchmark和baseline都有效能比較的意思。
先看看字典定義。

benchmark:N-COUNT A benchmark is something whose quality or quantity is known and which can therefore be used as a standard with which other things can be compared.

通俗的講,一個演算法之所以被稱為benchmark,是因為它的效能已經被廣泛研究,人們對它效能的表現形式、測量方法都非常熟悉,因此可以作為標準方法來衡量其他方法的好壞
這裡需要區別state-of-the-art(SOTA),能夠稱為SOTA的演算法表明其效能在當前屬於最佳效能。如果一個新演算法以SOTA作為benchmark,這當然是最好的了,但如果比不過SOTA,能比benchmark要好,且方法有一定創新,也是可以發表的。

baseline:N-COUNT A baseline is a value or starting point on a scale with which other values can be compared.

通俗的講,一個演算法被稱為baseline,基本上表示比這個演算法效能還差的基本上不能接受的,除非方法上有革命性的創新點,而且還有巨大的改進空間和超越benchmark的潛力,只是因為是發展初期而效能有限。所以baseline有一個自帶的含義就是“效能起點”。這裡還需要指出其另一個應用語境,就是在演算法優化過程中,一般version1.0是作為baseline的,即這是你的演算法能達到的一個基本效能,在演算法繼續優化和調引數的過程中,你的目標是比這個效能更好,因此需要在這個base line的基礎上往上跳。

簡而言之,
benchmark一般是和同行中比較牛的演算法比較,比牛演算法還好,那你可以考慮發好一點的會議/期刊;
baseline一般是自己演算法優化和調參過程中自己和自己比較,目標是越來越好,當效能超過benchmark時,可以發表了,當效能甚至超過SOTA時,恭喜你,考慮投頂會頂刊啦。