我想問一下使用變分自動編碼器進行特徵提取是否可能(而不是可能是有意義的)。我問,因爲對於編碼部分,我們從一個分佈中抽樣,然後這意味着同一個樣本可以有不同的編碼(由於抽樣過程具有隨機性)。謝謝!用於特徵提取的變分自動編碼器
1
A
回答
-3
是的,你可以。 我用下面的代碼從我的數據集中提取重要特徵。
prostate_df <- read.csv('your_data')
prostate_df <- prostate_df[,-1] # first column.
train_df<-prostate_df
outcome_name <- 'subtype' # my label column
feature_names <- setdiff(names(prostate_df), outcome_name)
library(h2o)
localH2O = h2o.init()
prostate.hex<-as.h2o(train_df, destination_frame="train.hex")
prostate.dl = h2o.deeplearning(x = feature_names,
#y="subtype",
training_frame = prostate.hex,
model_id = "AE100",
# input_dropout_ratio = 0.3, #Quite high,
#l2 = 1e-5, #Quite high
autoencoder = TRUE,
#validation_frame = prostate.hex,
#reproducible = T,seed=1,
hidden = c(1), epochs = 700,
#activation = "Tanh",
#activation ="TanhWithDropout",
activation ="Rectifier",
#activation ="RectifierWithDropout",
standardize = TRUE,
#regression_stop = -1,
#stopping_metric="MSE",
train_samples_per_iteration = 0,
variable_importances=TRUE
)
label1<-ncol(train_df)
train_supervised_features2 = h2o.deepfeatures(prostate.dl, prostate.hex, layer=1)
plotdata = as.data.frame(train_supervised_features2)
plotdata$label = as.character(as.vector(train_df[,label1]))
library(ggplot2)
qplot(DF.L1.C1, DF.L1.C2, data = plotdata, color = label, main = "Cancer Normal Pathway data ")
prostate.anon = h2o.anomaly(prostate.dl, prostate.hex, per_feature=FALSE)
head(prostate.anon)
err <- as.data.frame(prostate.anon)
h2o.scoreHistory(prostate.dl)
head(h2o.varimp(prostate.dl),10)
h2o.varimp_plot(prostate.dl)
+0
我仔細檢查過,H2O不支持* variational *自動編碼器;這裏顯示的代碼只是一個普通的自動編碼器。 –
0
是的特徵提取目標對於vae或稀疏自動編碼器是相同的。 一旦你有一個編碼器插件提取功能分類器。
最好的reggards,
0
是編碼器網絡的輸出可以用作您的功能。
試想一下:使用編碼器網絡的輸出作爲輸入,解碼器網絡可以生成一個與您的舊圖像非常相似的圖像。因此,編碼器網絡的輸出幾乎涵蓋了原始圖像中的大部分信息。換句話說,它們是您原始圖像中與其他圖像區別開來的最重要的特徵。
唯一要注意的是變分自動編碼器是一個隨機特徵提取器,而通常特徵提取器是確定性的。您可以使用均值和方差作爲提取的特徵,或者使用蒙特卡羅方法,通過從均值和方差定義的高斯分佈中繪製「採樣提取的特徵」。
相關問題
- 1. 用於轉換特徵提取功能的Matlab編碼器
- 2. 瞭解提取特徵的編碼
- 3. 霍夫變換SimpleCV特徵提取器
- 4. SIFT特徵提取器
- 5. 基於GPU的SIFT特徵提取器適用於iOS?
- 6. 特徵提取
- 7. Gabor特徵提取用於檢測人
- 8. 如何使用DAISY特徵提取器來計算特徵?
- 9. 卷積自動編碼器:黑色特徵映射
- 10. 卷積自動編碼器特徵學習
- 11. Keras深度變分自動編碼器
- 12. Gabor特徵提取
- 13. HOG特徵提取
- 14. CountVectorizer提取特徵
- 15. 關於編碼〜性格特徵在JavaScript
- 16. 如何使用python和tensorflow從降噪堆疊自動編碼器中提取低維特徵向量
- 17. 有沒有基於歌曲內容的特徵提取代碼?
- 18. 如何在特徵提取中使用svm分類器
- 19. 繪製提取的特徵
- 20. Keras中的特徵提取
- 21. 簡單的基於規則的分類器的特徵選擇/提取
- 22. 使用Caffe爲自定義圖像分類器提取圖像特徵
- 23. 提取特徵,篩選檢測器
- 24. 如何使用自己的算法提取scikit-learn中的特徵(文本特徵提取)
- 25. 窗特徵提取的Matlab的用戶
- 26. OCR中的特徵提取:關於這些特徵的任何想法?
- 27. 編碼類別特徵
- 28. 提取地震特徵JSON
- 29. 特徵提取訓練
- 30. 提取斑點特徵
有關變分自動編碼器的一些有用參考資料:http://kvfrans.com/variational-autoencoders-explained/和https://arxiv.org/pdf/1606.05908v2.pdf(關於VAE的23頁教程) –
謝謝!我喜歡與GAN進行比較 –