[英]Setup linear regression with a factorMatrix - DL4j
我有一個 INDArray 類型的INDArray
,它是xIn
它包含 5 列[A, B, C, D, E]
和另一個具有 1 列[y]
的 INDArray,即yIn
對於熟悉 MatLab 的人,我現在可以使用:
modelTrain = fitlm([XInSample yInSample] , 'linear') and then
retPredictionRegress = predict(modelTrain , XInSample);
我在使用xIn
和yInd
設置 DL4J 時遇到問題,即使我發現了一些聲稱有幫助的東西——但至少對我來說沒有。
誰能帶我走上正軌?
dl4j 中的線性回歸只是一個具有特定損失的神經網絡 function 和 output 后期類型。 這遵循您將如何在任何其他深度學習框架中進行線性回歸。 這個概念/想法並不是真正特定於 dl4j 本身。 它遵循您在使用更通用框架的回歸問題的任何實例中發現的約定。
我看到你也在這里評論: DL4J 線性回歸
回復您的“至少對我沒有幫助”,您介意澄清您在問題中遇到的問題嗎? 那會有點幫助。
回答您的問題,您只需聲明一個具有 5 個輸入的神經網絡,並聲明您有多少個輸入。 如果您認為目標合適,您可以申報超過 1 個 output。 在您的情況下,它是 1 output。
這方面的一個例子是:
//Create the network
int numInput = 5;
int numOutputs = 1;
int nHidden = 10;
MultiLayerNetwork net = new MultiLayerNetwork(new NeuralNetConfiguration.Builder()
.seed(seed)
.weightInit(WeightInit.XAVIER)
.updater(new Nesterovs(learningRate, 0.9))
.list()
.layer(0, new DenseLayer.Builder().nIn(numInput).nOut(nHidden)
.activation(Activation.TANH) //Change this to RELU and you will see the net learns very well very quickly
.build())
.layer(1, new OutputLayer.Builder(LossFunctions.LossFunction.MSE)
.activation(Activation.IDENTITY)
.nIn(nHidden).nOut(numOutputs).build())
.build()
);
上面的代碼片段來自 dl4j 示例。
在這種情況下,您將使用適當的 output 調整神經網絡。 如果您想了解神經網絡和回歸之間的關系,我建議您對該主題進行一些更廣泛的閱讀。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.