女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

LogSumExp這一機器學(xué)習(xí)中常見的模式

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-10-31 09:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

編者按:Feedly聯(lián)合創(chuàng)始人、大數(shù)據(jù)與機器學(xué)習(xí)主管Kireet Reddy講解了LogSumExp原理。

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

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

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

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

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

數(shù)值穩(wěn)定性

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

讓我們舉例演示這個問題,從xi中取樣兩個樣本:{1000, 1000, 1000}和{-1000, -1000, -1000}。將這兩個序列傳入softmax函數(shù)會得到同一概率分布{1/3, 1/3, 1/3},然后1/3的對數(shù)是一個合理的負(fù)數(shù)。現(xiàn)在讓我們嘗試用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

也不對勁。所以我們碰到了某種數(shù)值穩(wěn)定性問題,即使看起來合理的輸入值也會導(dǎo)致溢出。

迂回方案

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

以及對數(shù)的和差公式:

我們有:

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

由此我們可以構(gòu)建對數(shù)softmax的新表達(dá)式:

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

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

關(guān)鍵點

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

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

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

對于絕對值較大的負(fù)數(shù),翻轉(zhuǎn)下符號,道理是一樣的。

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

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

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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4381

    瀏覽量

    64866
  • 機器學(xué)習(xí)
    +關(guān)注

    關(guān)注

    66

    文章

    8503

    瀏覽量

    134611

原文標(biāo)題:機器學(xué)習(xí)常見模式LogSumExp解密

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    單片機學(xué)習(xí)中常見的問題和誤區(qū)

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

    FPGACPLD中常見模塊設(shè)計精華集錦

    FPGACPLD中常見模塊設(shè)計精華集錦
    發(fā)表于 08-17 22:22

    電源中常見的故障現(xiàn)象如何維修

    電源中常見的故障現(xiàn)象如何維修
    發(fā)表于 03-11 07:24

    在無線移動數(shù)據(jù)接收中常見的問題

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

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

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

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

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

    谷歌帶你體驗把什么是機器學(xué)習(xí)

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

    人工智能之機器學(xué)習(xí)常見算法

    機器學(xué)習(xí)無疑是當(dāng)前數(shù)據(jù)分析領(lǐng)域的個熱點內(nèi)容。很多人在平時的工作中都或多或少會用到機器學(xué)習(xí)的算法。這里小編為您總結(jié)
    發(fā)表于 02-02 17:20 ?1831次閱讀
    人工智能之<b class='flag-5'>機器</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>常見</b>算法

    文了解PCB中常見14大錯誤

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

    淺析機器學(xué)習(xí)建模中常見的7個誤區(qū)

    Cheng-Tao Chu總結(jié)了機器學(xué)習(xí)建模中常見的誤區(qū),提醒讀者注意算法的假定未必適合手頭的數(shù)據(jù)。
    的頭像 發(fā)表于 07-28 09:27 ?3824次閱讀

    機器學(xué)習(xí)研究中常見的七大謠傳總結(jié)

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

    常見機器學(xué)習(xí)錯誤你有沒有中

    沒有經(jīng)歷過任何學(xué)習(xí)機器學(xué)習(xí)是毫無價值的。機器學(xué)習(xí)的真實用例是將算法應(yīng)用于大量的數(shù)據(jù),并且使某些模式
    發(fā)表于 01-30 17:52 ?681次閱讀

    python數(shù)據(jù)挖掘與機器學(xué)習(xí)

    python數(shù)據(jù)挖掘與機器學(xué)習(xí) Python是個非常流行的編程語言,被廣泛用于數(shù)據(jù)挖掘和機器學(xué)習(xí)領(lǐng)域。在本篇文章中,我們將探討Python
    的頭像 發(fā)表于 08-17 16:29 ?1599次閱讀

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

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

    棱鏡——機器視覺系統(tǒng)中常見的重要配件

    棱鏡——機器視覺系統(tǒng)中常見的重要配件
    的頭像 發(fā)表于 01-15 17:36 ?535次閱讀
    棱鏡——<b class='flag-5'>機器</b>視覺系統(tǒng)<b class='flag-5'>中常見</b>的重要配件