成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

DeepMind發布神經網絡、強化學習庫,網友:推動JAX發展

新聞 人工智能
JAX由谷歌提出,是TensorFlow的簡化庫。結合了針對線性代數的編譯器XLA,和自動區分本地 Python 和 Numpy 代碼的庫Autograd,在高性能的機器學習研究中使用。

本文經AI新媒體量子位(公眾號ID:QbitAI)授權轉載,轉載請聯系出處。

 DeepMind今日發布了Haiku和RLax兩個庫,都是基于JAX。

JAX由谷歌提出,是TensorFlow的簡化庫。結合了針對線性代數的編譯器XLA,和自動區分本地 Python 和 Numpy 代碼的庫Autograd,在高性能的機器學習研究中使用。

而此次發布的兩個庫,分別針對神經網絡和強化學習,大幅簡化了JAX的使用。

Haiku是基于JAX的神經網絡庫,允許用戶使用熟悉的面向對象程序設計模型,可完全訪問 JAX 的純函數變換。

RLax是JAX頂層的庫,它提供了用于實現增強學習代理的有用構件。

有意思的是,Reddit網友驚奇的發現Haiku這個庫的名字,竟然不以“ax”結尾。

DeepMind发布神经网络、强化学习库,网友:推动JAX发展

當然,也有網友對這兩個庫表示了肯定:

毫無疑問,對JAX起到了推動作用。

DeepMind发布神经网络、强化学习库,网友:推动JAX发展

那么,我們就來看下Haiku和RLex的廬山真面目吧。

Haiku

Haiku是JAX的神經網絡庫,它允許用戶使用熟悉的面向對象編程模型,同時允許完全訪問JAX的純函數轉換。

它提供了兩個核心工具:模塊抽象hk.Module,和一個簡單的函數轉換hk.transform。

hk.Module是Python對象,包含對其自身參數、其他模塊和對用戶輸入應用函數方法的引用。

hk.transform允許完全訪問JAX的純函數轉換。

其實,在JAX中有許多神經網絡庫,那么Haiku有什么特別之處呢?有5點。

1、Haiku已經由DeepMind的研究人員進行了大規模測試

DeepMind相對容易地在Haiku和JAX中復制了許多實驗。其中包括圖像和語言處理的大規模結果、生成模型和強化學習。

2、Haiku是一個庫,而不是一個框架

它的設計是為了簡化一些具體的事情,包括管理模型參數和其他模型狀態。可以與其他庫一起編寫,并與JAX的其他部分一起工作。

3、Haiku并不是另起爐灶

它建立在Sonnet的編程模型和API之上,Sonnet是DeepMind幾乎普遍采用的神經網絡庫。它保留了Sonnet用于狀態管理的基于模塊的編程模型,同時保留了對JAX函數轉換的訪問。

4、過渡到Haiku是比較容易的

通過精心的設計,從TensorFlow和Sonnet,過渡到JAX和Haiku是比較容易的。除了新的函數(如hk.transform),Haiku的目的是Sonnet 2的API。

5、Haiku簡化了JAX

它提供了一個處理隨機數的簡單模型。在轉換后的函數中,hk.next_rng_key()返回一個唯一的rng鍵。

那么,該如何安裝Haiku呢?

Haiku是用純Python編寫的,但是通過JAX依賴于c++代碼。

首先,按照下方鏈接中的說明,安裝帶有相關加速器支持的JAX。

https://github.com/google/jax#installation

然后,只需要一句簡單的pip命令就可以完成安裝。

  1. $ pip install git+https://github.com/deepmind/haiku 

接下來,是一個神經網絡和損失函數的例子。

  1. import haiku as hk 
  2.  
  3. import jax.numpy as jnp 
  4.  
  5. def softmax_cross_entropy(logits, labels): 
  6.  
  7.   one_hot = hk.one_hot(labels, logits.shape[-1]) 
  8.  
  9.   return -jnp.sum(jax.nn.log_softmax(logits) * one_hot, axis=-1
  10.  
  11. def loss_fn(images, labels): 
  12.  
  13.   model = hk.Sequential([ 
  14.  
  15.       hk.Linear(1000), 
  16.  
  17.       jax.nn.relu, 
  18.  
  19.       hk.Linear(100), 
  20.  
  21.       jax.nn.relu, 
  22.  
  23.       hk.Linear(10), 
  24.  
  25.   ]) 
  26.  
  27.   logits = model(images) 
  28.  
  29.   return jnp.mean(softmax_cross_entropy(logits, labels)) 
  30.  
  31. loss_obj = hk.transform(loss_fn) 

RLax

RLax是JAX頂層的庫,它提供了用于實現增強學習代理的有用構件。

它所提供的操作和函數不是完整的算法,而是強化學習特定數學操作的實現。

RLax的安裝也非常簡單,一個pip命令就可以搞定。

  1. pip install git+git://github.com/deepmind/rlax.git 

使用JAX的jax.jit函數,所有的RLax代碼可以不同的硬件上編譯。

RLax需要注意的是它的命名規則。

許多函數在連續的時間步長中考慮策略、操作、獎勵和值,以便計算它們的輸出。在這種情況下,后綴_t和tm1通常是為了說明每個輸入是在哪個步驟上生成的,例如:

q_tm1:轉換的源狀態中的操作值。

a_tm1:在源狀態下選擇的操作。

r_t:在目標狀態下收集的結果獎勵。

q_t:目標狀態下的操作值。

Haiku和RLax都已在GitHub上開源,有興趣的讀者可從“傳送門”的鏈接訪問。

傳送門

Haiku:

https://github.com/deepmind/haiku

RLax:

https://github.com/deepmind/rlax

 

 

責任編輯:張燕妮 來源: 量子位
相關推薦

2022-11-17 13:32:46

AlphaZero黑箱網絡

2022-11-02 14:02:02

強化學習訓練

2020-06-05 14:49:51

強化學習算法框架

2017-03-20 15:23:46

人工智能連續學習神經網絡

2021-09-10 16:31:56

人工智能機器學習技術

2025-06-23 09:09:00

2020-01-16 15:57:36

AI 數據人工智能

2024-09-23 08:30:00

AI模型

2022-10-08 09:53:17

AI算法

2020-08-06 10:11:13

神經網絡機器學習算法

2020-05-06 16:07:05

百度飛槳

2017-08-22 15:56:49

神經網絡強化學習DQN

2023-03-09 08:00:00

強化學習機器學習圍棋

2020-08-10 06:36:21

強化學習代碼深度學習

2025-03-03 09:12:00

2025-04-25 09:08:00

2018-07-03 16:10:04

神經網絡生物神經網絡人工神經網絡

2019-08-19 00:26:49

人工智能AIDeepMind

2024-09-10 15:10:00

智能強化學習框架

2018-11-14 10:28:38

AI數據科技
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品美女 | 在线播放中文字幕 | 免费av在线网站 | 91影院在线观看 | 国产午夜精品视频 | 国产精品一区二区在线播放 | 久久com| 一区二区亚洲 | 干干干操操操 | 欧美日韩中文字幕在线 | 日韩喷潮| 国产精品成人在线播放 | 精品免费 | 2019天天操 | 成人一区二区视频 | 精品国产伦一区二区三区观看体验 | 国产黄色大片在线免费观看 | 久久精品欧美电影 | 国产蜜臀97一区二区三区 | 蜜臀av日日欢夜夜爽一区 | 一区二区久久 | 国内久久精品 | 免费看黄色片 | 久久久久亚洲精品国产 | 欧美性吧| 天天天堂 | 中文字幕精品一区久久久久 | 久久久久久亚洲 | 午夜影院在线观看免费 | 夜夜操天天艹 | 日韩欧美在线不卡 | 国产精品日本一区二区在线播放 | 99精品欧美一区二区蜜桃免费 | 久久久精品一区 | 日本不卡一区二区三区在线观看 | www狠狠干| 欧美精品1区2区 | 中文字幕亚洲欧美日韩在线不卡 | 日韩毛片在线免费观看 | 一级毛片视频免费观看 | 一级做a|