這幾天看的東西越來越怪?這次會突然跑去看log、ln、lg的差異,是因為在看TFIDF的公式,其中讓我們討論的在於IDF的公式:
TFIDF 也是文字處理常用的,將文字轉換為向量的方式。與課程中提到的 word2vec 很像。所以今天不算歪樓吧!
當中又以lg這個符號有所爭論。
但是,為了避免各位也混亂,我先列出在ISO 31-11標準裡的表示意思 :
| 表示法 | 意義 |
|---|---|
lb(x) |
以2為底數的log(x) |
ln(x) |
以e為底數的log(x) |
lg(x) |
以10為底數的log(x) |
再但是!!也有人用lg(x) 來表示以2為底數的log(x) ,維基百科裡面有這麼段話:
在數學中,以 2 為底的對數通常記為 log2 n。然而,還有一些其他表示法。
有些作者用 lg n 表示以 2 為底的對數,這也是芝加哥格式手冊中列出的表示形式。
用lg(x) 來表示以2為底數的log(x) 也是我所記憶的。ln沒有異議;lb倒是今天第一次知道。但是不管在這個頁面,還是這個頁面,都說lg是以10為底數。在維基百科中,常用對數也是這麼寫:
常用對數的一般表示方法為
log x,或簡寫成lg x...
![]()
維基百科大家都可以編輯,可能有編輯錯誤。再來問問Google大神看看:
先來問問lg(10):

阿勒勒? 如果以10為底結果不是應該是1嗎?那lg(2)呢?

Great...![]()
在計算機資訊領域中,一本經典的書籍INTRODUCTION TO ALGORITHMS大多數以lg去計算,但是我們知道,在計算演算法複雜度時,大多以2為底數。
老實說,我沒怎麼看那本書。只有簡單翻過。
所以雖然ISO標準是以10為底數,作為常用對數。但是在資訊計算機領域,是用2為底數。