在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

LogSumExp這一機器學習中常見的模式

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-10-31 09:01 ? 次閱讀

編者按:Feedly聯合創始人、大數據與機器學習主管Kireet Reddy講解了LogSumExp原理。

機器學習中有很多巧妙的竅門,可以加速訓練,提升表現……今天我將討論LogSumExp這一機器學習中常見的模式。首先給出定義:

我們什么時候會見到這樣的式子?常見的一個地方是計算softmax函數的交叉熵損失。如果這聽起來冗長難解,那么:1) 習慣一下,ML中太多東西有著瘋狂的名字;2) 直接意識到這沒什么復雜的。有必要的話可以看看斯坦福cs231n的出色講解,或者,就本文而言,只需了解softmax是這樣一個函數就可以:

其中,分子中的xj是分母中的一個值(其中一個xi)。所以softmax做的基本上是對一些值取冪,然后歸一化,使得所有xj的可能值總和為1,以生成所需的概率分布。

所以,你可以把softmax函數看成一種接受任何數字并轉換為概率分布的非線性方法。至于交叉熵,只需了解它是對函數取對數。這就涌現出了LogSumExp模式:

為什么這是一種生成概率分布的好方法,也許看起來有點神秘。目前而言,不妨把這當成是信條。

數值穩定性

我們還是接著談談LogSumExp吧。首先,從純數學的角度來說,LogSumExp沒什么特別的。但是,當我們討論計算機上的數學時,LogSumExp就特別起來了。原因在于計算機表示數字的方式。計算機使用固定數目的位元表示數字。幾乎所有時刻這都沒什么問題,但是,因為不可能用固定數目的位元精確表示數字的無限集合,所以有時這會導致誤差。

讓我們舉例演示這個問題,從xi中取樣兩個樣本:{1000, 1000, 1000}和{-1000, -1000, -1000}。將這兩個序列傳入softmax函數會得到同一概率分布{1/3, 1/3, 1/3},然后1/3的對數是一個合理的負數。現在讓我們嘗試用Python算下求和中的一項:

>>> import math

>>> math.e**1000

Traceback (most recent call last):

File "", line 1, in

OverflowError: (34, 'Result too large')

哎喲。也許-1000的運氣要好些:

>>> math.e**-1000

0.0

也不對勁。所以我們碰到了某種數值穩定性問題,即使看起來合理的輸入值也會導致溢出。

迂回方案

幸運的是,人們找到了一個很好的緩解方法,根據冪的乘法法則:

以及對數的和差公式:

我們有:

上述變換的關鍵在于,我們引入了一個不牽涉log或exp函數的常數項c。現在我們只需為c選擇一個在所有情形下有效的良好的值。結果發現,max(x1…xn)很不錯。

由此我們可以構建對數softmax的新表達式:

現在我們用這個新表達式計算之前的兩個樣本。對{1000, 1000, 1000}而言,c = 1000,所以xi-c恒為零,代入上式,我們有:

log(3)是一個很合理的數字,計算機計算起來毫無問題。所以上面的樣本沒問題。同理,{-1000, -1000, -1000}也沒問題。

關鍵點

思考一些例子后,我們可以得到以下結論:

如果xi的值都不會造成穩定性問題,那么“樸素”版本的LogSumExp可以很好地工作。但“改良”版同樣可以工作。

如果至少有一個xi的值很大,那么樸素版本會溢出,改良版不會。其他類似的大數值xi同理,而并不大的那些xi,基本上逼近零。

對于絕對值較大的負數,翻轉下符號,道理是一樣的。

所以,盡管并不完美,我們在大多數情況下能夠得到相當合理的表現,而不會溢出。我創建了一個簡單的python腳本,這樣,你可以通過親自試驗驗證這一點:git.io/fx5Vx

LogSumExp是一個巧妙的竅門,分解了它的機制后,實際上相當容易理解。一旦了解了LogSumExp和數值穩定性問題,你就不會感到一些庫的文檔和源代碼難以理解了。

為了鞏固記憶(同時操練下數學),我建議你過一段時間嘗試自行推導下數學,并在腦海中設想各種例子,做下推理。接著運行我的代碼(或者自己動手重寫),以驗證你的直覺。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 函數
    +關注

    關注

    3

    文章

    4372

    瀏覽量

    64367
  • 機器學習
    +關注

    關注

    66

    文章

    8496

    瀏覽量

    134209

原文標題:機器學習常見模式LogSumExp解密

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    單片機學習中常見的問題和誤區

    ,對些知識把握不準,也不可避免地形成些誤解。根據本人在教學及實踐中的探討和摸索,總結出這些在學習過程中常見的問題和誤區并給予分析和糾正。2.單片機
    發表于 02-09 00:11

    FPGACPLD中常見模塊設計精華集錦

    FPGACPLD中常見模塊設計精華集錦
    發表于 08-17 22:22

    電源中常見的故障現象如何維修

    電源中常見的故障現象如何維修
    發表于 03-11 07:24

    在無線移動數據接收中常見的問題

    討論個在無線移動數據接收中常見的問題。
    發表于 04-14 06:48

    LLC諧振變換器中常見MOSFET失效模式有哪幾種?怎么解決?

    LLC諧振變換器中常見MOSFET失效模式有哪幾種?怎么解決?
    發表于 09-18 07:30

    電路中常見的幾種單片機抗干擾技術

    電路中常見的幾種單片機抗干擾技術,學習資料,感興趣的可以瞧瞧。
    發表于 10-26 17:00 ?0次下載

    谷歌帶你體驗把什么是機器學習

    機器學習的本質是模式識別。 部分可以用于預測(有監督學習,無監督學習),另
    發表于 10-13 10:56 ?1860次閱讀
    谷歌帶你體驗<b class='flag-5'>一</b>把什么是<b class='flag-5'>機器</b><b class='flag-5'>學習</b>

    人工智能之機器學習常見算法

    機器學習無疑是當前數據分析領域的個熱點內容。很多人在平時的工作中都或多或少會用到機器學習的算法。這里小編為您總結
    發表于 02-02 17:20 ?1810次閱讀
    人工智能之<b class='flag-5'>機器</b><b class='flag-5'>學習</b><b class='flag-5'>常見</b>算法

    文了解PCB中常見14大錯誤

    文了解PCB中常見14大錯誤,具體的跟隨小編一起來看一下。
    的頭像 發表于 07-22 11:29 ?6141次閱讀

    淺析機器學習建模中常見的7個誤區

    Cheng-Tao Chu總結了機器學習建模中常見的誤區,提醒讀者注意算法的假定未必適合手頭的數據。
    的頭像 發表于 07-28 09:27 ?3788次閱讀

    機器學習研究中常見的七大謠傳總結

    學習深度學習的過程中,我們常會遇到各種謠傳,也會遇到各種想當然的「執念」。在本文中,作者總結了機器學習研究中常見的七大謠傳,他們很多都是我
    的頭像 發表于 02-26 14:05 ?3081次閱讀
    <b class='flag-5'>機器</b><b class='flag-5'>學習</b>研究<b class='flag-5'>中常見</b>的七大謠傳總結

    常見機器學習錯誤你有沒有中

    沒有經歷過任何學習機器學習是毫無價值的。機器學習的真實用例是將算法應用于大量的數據,并且使某些模式
    發表于 01-30 17:52 ?674次閱讀

    python數據挖掘與機器學習

    python數據挖掘與機器學習 Python是個非常流行的編程語言,被廣泛用于數據挖掘和機器學習領域。在本篇文章中,我們將探討Python
    的頭像 發表于 08-17 16:29 ?1560次閱讀

    理解STM32控制中常見的PID算法

    理解STM32控制中常見的PID算法
    的頭像 發表于 10-17 17:28 ?2861次閱讀
    理解STM32控制<b class='flag-5'>中常見</b>的PID算法

    棱鏡——機器視覺系統中常見的重要配件

    棱鏡——機器視覺系統中常見的重要配件
    的頭像 發表于 01-15 17:36 ?487次閱讀
    棱鏡——<b class='flag-5'>機器</b>視覺系統<b class='flag-5'>中常見</b>的重要配件
    主站蜘蛛池模板: 亚洲一区二区三区在线 | 日本一卡二卡3卡四卡网站精品 | 兔费看全黄三级 | 一级一片免费视频播放 | 天天操天天曰 | 亚洲精品播放 | 天天摸天天碰成人免费视频 | 久久福利网 | 国产大片91精品免费观看不卡 | 天天操天天干天天透 | 四虎www成人影院观看 | 免费一级特黄 欧美大片 | 又粗又硬又爽又黄毛片 | 亚洲成人网在线观看 | 免费在线看a | 91福利网| 日本一区二区三区四区在线观看 | 97色网| 亚洲最新 | 91青草视频 | 福利视频欧美 | baoyu污污网站入口免费 | 久久综合偷偷噜噜噜色 | 天天插天天爱 | 欧美黄色免费网址 | 成视频年人黄网站免费视频 | 97色噜噜 | 亚洲成在人色婷婷 | 色四月婷婷 | 成人免费播放视频777777 | 激情五月深爱五月 | 午夜伦y4480影院中文字幕 | 精品成人毛片一区二区视 | tube日本xxxx69 | 2021久久天天躁狠狠躁夜夜 | 午夜国产大片免费观看 | 欧美人成在线观看 | 黄色一级大片视频 | 亚洲一区二区三区四区在线 | 国产一卡2卡3卡四卡精品网站 | 欧美亚洲另类在线观看 |