deep learningもくもくハッカソンまとめup用
Post on 24-Jul-2015
935 Views
Preview:
TRANSCRIPT
h2o deep learningによる化学物質分析時の 保持時間予測モデル構築
Twi0er: @siero5335 5/23-‐24@東銀座ドワンゴ様
Deep learningもくもくハッカソン
PCBs (x+y = 1~10)
物理化学パラメータからの溶出時間予測 化学物質の物理化学的なパラメータから 分析時の保持時間 (RTs) を予測するための手法 未知物質の保持時間を構造が似てる 化合物のパラメータを使って予測したい →未知物質が特定できると(分野的に)熱い
化合物の構造最適化およびパラメータ算出
化学物質名 RTs 反応性 電子の偏り … 分子量
PCB1 数値A 数値A' ... ... 数値A"
PCB2 数値B 数値B' ... ... 数値B"
... ... ... ... ... ...
PCB209 数値Z 数値Z' ... ... 数値Z"
Gaussian09: DFT B3LYPで構造最適化
Dragon6: 約5000パラメータを算出 → SD < 0.0001のパラメータを削除
→ 約2500パラメータを解析に使用(前処理: 正規化のみ)
一番良いパフォーマンスが出た際のコード deeptest16 <-‐ h2o.deeplearning(x = setdiff(colnames(trainingPCBRT), c("ID","RT")), y = "RT", training_frame = trainingPCBRT, validaTon_frame = testPCBRT, acTvaTon = "RecTfier", hidden = c(50), epochs = 10000, loss = "Huber”)
一番良いパフォーマンスが出た際のコード
層を深くすればするほど精度低下... (Deepじゃなかった)
Dropoutや正則化項を取り除けば取り除くほど精度が上昇 他の活性化関数(Tanh, Maxout)は良くなかった
→今回くらいのデータサイズだと小細工しないほうが良い?
deeptest16 <-‐ h2o.deeplearning(x = setdiff(colnames(trainingPCBRT), c("ID","RT")), y = "RT", training_frame = trainingPCBRT, validaTon_frame = testPCBRT, acTvaTon = "RecTfier", hidden = c(50), epochs = 10000, loss = "Huber”)
H2ORegressionMetrics: deeplearning ** Reported on training data. **
MSE: とても良い R2 :とても良い H2ORegressionMetrics: deeplearning ** Reported on validaTon data. **
MSE:とても良い R2 : とても良い
結果
先行して実験してたElastic netの結果を上回る Training R2 = 割と良い, Training MSE = 割と良い Test R2 = 割と良い, Test MSE = 割と良い
deeptest_layer1 = h2o.deepfeatures(deeptest16, trainingPCBRT, layer = 1)
head(deeptest_layer1)
特徴量の確認
…が、生成された特徴量を見ても何が何やらさっぱり 正則化したわけでもないのに割とスパースになっていた
→保持時間に関係するパラメータは多くないということ?
top related