久久精品无码视频|精产国品色情一二三区在线观看|国产性爱自拍视频|亚洲av韩国av|日韩美女一级AAA大片|少妇无码激情诱惑|日韩AV在线播放有码|一级黄片一级黄片|av上一页亲亲久草av|aaa在线观看国产做爱

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
人工智能開(kāi)發(fā)者 正文
發(fā)私信給汪思穎
發(fā)送

0

Keras R語(yǔ)言接口正式發(fā)布,同時(shí)公開(kāi)20個(gè)完整示例

本文作者: 汪思穎 2017-09-06 17:40
導(dǎo)語(yǔ):Keras R語(yǔ)言接口正式發(fā)布,可以直接在CRAN中進(jìn)行下載安裝。

雷鋒網(wǎng) AI科技評(píng)論消息,Keras R語(yǔ)言接口正式發(fā)布,并同時(shí)公開(kāi)20個(gè)完整示例。

關(guān)于keras的介紹

Keras是一個(gè)高層神經(jīng)網(wǎng)絡(luò)API,為支持快速實(shí)驗(yàn)而生,目前主要功能如下:

  • 支持相同的代碼無(wú)縫跑在CPU或GPU上

  • 對(duì)用戶友好,易于快速prototype深度學(xué)習(xí)模型

  • 支持計(jì)算機(jī)視覺(jué)中的卷積網(wǎng)絡(luò)、序列處理中的循環(huán)網(wǎng)絡(luò),也支持兩種網(wǎng)絡(luò)的任意組合

  • 支持任意網(wǎng)絡(luò)架構(gòu):多段輸入或多段輸出模型、層共享、模型共享等。這意味著Keras 本質(zhì)上適合用于構(gòu)建任意深度學(xué)習(xí)模型(從記憶網(wǎng)絡(luò)到神經(jīng)圖靈機(jī))

  • 兼容多種運(yùn)行后端,例如TensorFlow、CNTK和 Theano

如果你已經(jīng)很熟悉Keras了,并且想要立刻體驗(yàn)最新發(fā)布的R語(yǔ)言接口,請(qǐng)點(diǎn)擊如下網(wǎng)址:https://keras.rstudio.com,這里有超過(guò)20個(gè)完整示例,相信有你需要的東西。

接下來(lái)是更多關(guān)于Keras的信息,以及發(fā)布Keras的R語(yǔ)言接口的意義。

Keras和深度學(xué)習(xí)

在過(guò)去的幾年間,人們對(duì)深度學(xué)習(xí)的興趣增長(zhǎng)迅速,同時(shí)期出現(xiàn)了幾個(gè)深度學(xué)習(xí)的框架。在所有的框架中,Keras因?yàn)樵谏a(chǎn)力、靈活性以及對(duì)用戶友好性方面的優(yōu)勢(shì)脫穎而出。同時(shí)期,tensorflow作為下一代機(jī)器學(xué)習(xí)平臺(tái),非常靈活,很適合產(chǎn)品部署。

毫不驚訝地說(shuō),Keras和tensorflow正在逐漸超過(guò)其他深度學(xué)習(xí)框架。

Keras R語(yǔ)言接口正式發(fā)布,同時(shí)公開(kāi)20個(gè)完整示例

現(xiàn)在,你不需要糾結(jié)該選tensorflow或是Keras了。Keras的默認(rèn)后端支持通過(guò)tensorflow工作流,實(shí)現(xiàn)tensorflow和Keras的無(wú)縫集成。今年晚些時(shí)候,可以通過(guò)更深的集成,讓Keras完全實(shí)現(xiàn)與tensorflow的無(wú)縫銜接。

Keras和tensorflow目前都是最頂尖的深度學(xué)習(xí)框架,有了新發(fā)布的Keras包,利用R接口現(xiàn)在可以同時(shí)接入兩個(gè)框架。

使用說(shuō)明

安裝

首先,從CRAN的Keras R包中按照如下步驟安裝:

install.packages("keras")

Keras R接口默認(rèn)使用 TensorFlow后端引擎。使用如下install_keras()函數(shù)安裝核心Keras庫(kù)和 TensorFlow后端:

library(keras)

install_keras()()

這個(gè)函數(shù)默認(rèn)基于CPU安裝Keras和TensorFlow。如果你想要自定義安裝,比如說(shuō)想要利用英偉達(dá)GPU,可以查看install_keras()函數(shù)的詳細(xì)文檔。

MNIST樣例

可以通過(guò)實(shí)現(xiàn)一個(gè)簡(jiǎn)單的例子來(lái)學(xué)習(xí)Keras的基本知識(shí):識(shí)別來(lái)自MNIST數(shù)據(jù)集的手寫數(shù)字。MNIST由手寫數(shù)字的28x 28灰度圖像組成,如下圖所示:

Keras R語(yǔ)言接口正式發(fā)布,同時(shí)公開(kāi)20個(gè)完整示例

數(shù)據(jù)集中包含每個(gè)圖像的標(biāo)簽,來(lái)告訴我們這是哪個(gè)數(shù)字。例如,上面圖像中的標(biāo)簽分別是5,0,4,1。

準(zhǔn)備數(shù)據(jù)

MNIST數(shù)據(jù)集包含在Keras中,可以通過(guò)使用dataset_mnist() 函數(shù)得到。這個(gè)例子中我們先下載數(shù)據(jù)集,然后為測(cè)試和訓(xùn)練數(shù)據(jù)創(chuàng)造出變量。

library(keras)
mnist <- dataset_mnist()
x_train <- mnist$train$x
y_train <- mnist$train$y
x_test <- mnist$test$x
y_test <- mnist$test$y

x數(shù)據(jù)是灰度值的3-d數(shù)組(圖像、寬度、高度)。為了準(zhǔn)備訓(xùn)練數(shù)據(jù),通過(guò)將寬度和高度轉(zhuǎn)換為一維(28x28的圖像被簡(jiǎn)化成長(zhǎng)為784的向量),從而把三維數(shù)組轉(zhuǎn)換為矩陣。然后,我們將值為0到255的整數(shù)之間的灰度值轉(zhuǎn)換成0到1之間的浮點(diǎn)值。

# reshape

dim(x_train) <- c(nrow(x_train), 784)

dim(x_test) <- c(nrow(x_test), 784)

# rescale

x_train <- x_train / 255

x_test <- x_test / 255

y數(shù)據(jù)是一個(gè)整型向量,其值從0到9。為了準(zhǔn)備訓(xùn)練數(shù)據(jù),我們利用 Keras  to_categorical()函數(shù),用one-hot編碼方法將向量轉(zhuǎn)化為二進(jìn)制類矩陣(binary class matrices ):

y_train <- to_categorical(y_train, 10)
y_test <- to_categorical(y_test, 10)

定義模型

我們首先創(chuàng)建一個(gè)序貫?zāi)P停╯equential model),然后使用pipe(%-%)運(yùn)算符添加層。

model <- keras_model_sequential()
model %>%  

  layer_dense(units = 256, activation = 'relu', input_shape = c(784)) %>%

  layer_dropout(rate = 0.4) %>%   

  layer_dense(units = 128, activation = 'relu') %>%  

  layer_dropout(rate = 0.3) %>%  

  layer_dense(units = 10, activation = 'softmax')

使用summary()函數(shù)打印出模型的細(xì)節(jié):

Keras R語(yǔ)言接口正式發(fā)布,同時(shí)公開(kāi)20個(gè)完整示例

接下來(lái),用適當(dāng)?shù)膿p失函數(shù)、優(yōu)化器和指標(biāo)來(lái)編譯模型:

model %>% compile(  

  loss = 'categorical_crossentropy',  

  optimizer = optimizer_rmsprop(),  

  metrics = c('accuracy')
)

訓(xùn)練和評(píng)估

使用fit() 函數(shù)來(lái)訓(xùn)練模型,epochs為30,batch_size為128:

history <- model %>% fit(
  x_train, y_train,
  epochs = 30, batch_size = 128,
  validation_split = 0.2

)

可以通過(guò)plot(history)繪制出每一步epoch下loss和acc的值:

Keras R語(yǔ)言接口正式發(fā)布,同時(shí)公開(kāi)20個(gè)完整示例

通過(guò)測(cè)試數(shù)據(jù)評(píng)估模型表現(xiàn):

model %>% evaluate(x_test, y_test)

$loss
[1] 0.1149

$acc
[1] 0.9807

通過(guò)新的數(shù)據(jù)生成預(yù)測(cè)值:

model %>% predict_classes(x_test)

Keras R語(yǔ)言接口正式發(fā)布,同時(shí)公開(kāi)20個(gè)完整示例

更多詳細(xì)信息,可以點(diǎn)擊:https://keras.rstudio.com/

keras包下載地址:https://cran.r-project.org/package=keras

雷鋒網(wǎng) AI科技評(píng)論編譯。雷鋒網(wǎng)原創(chuàng)

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知

Keras R語(yǔ)言接口正式發(fā)布,同時(shí)公開(kāi)20個(gè)完整示例

分享:
相關(guān)文章

編輯

關(guān)注AI學(xué)術(shù),例如論文
當(dāng)月熱門文章
最新文章
請(qǐng)?zhí)顚懮暾?qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說(shuō)