The dofference of predict() and PredictAndUpdateState()

7 ビュー (過去 30 日間)
Jinjian
Jinjian 2024 年 8 月 22 日
コメント済み: Jinjian 2024 年 8 月 23 日
Hi All,
I found the following two ways of predicting performs differently:
(1).
for i=1:size(XTest,2)
[trainedNet,YTest(:,i)]=PredictAndUpdateState(trainedNet,XTest(:,i));
end
(2).
for i=1:size(XTest,2)
[YTest(:,i),state]=predict(trainedNet,XTest(:,i));
trainedNet.State=state;
end
I wonder that what is the reseason for this phenomenon? Or, what is the difference between the ways of predict() and PredictAndUpdateState() to update networks?
Any help will be appreciated!

回答 (1 件)

Animesh
Animesh 2024 年 8 月 22 日
The "predict" function in MATLAB predicts the responses of a linear regression model. For example, in this case:
[YTest(:,i),state]=predict(trainedNet,XTest(:,i));
The "predict" function returns the predicted response values of the model "trainedNet" for the points in "XTest(:, i)".
Now, the "predictAndUpdateState" function predicts responses using a trained recurrent neural network and updates the network state. In this case:
[trainedNet,YTest(:,i)]=predictAndUpdateState(trainedNet,XTest(:,i));
The "predictAndUpdateState" function predicts responses for data in "XTest(:, i)" using the trained recurrent neural network "trainedNet" and updates the network state.
Hence, the major difference between these two functions is that "predict" only forecasts the state, while "predictAndUpdateState" both forecasts and refines the state estimate with new data. Use "predict" when you need a forecast without new data, and "predictAndUpdateState" when you want to immediately refine your prediction with a new measurement.
Moreover, "predictAndUpdateState" is not recommended anymore. Instead, use the "predict" function and utilize the state output to update the "State" property of the neural network.
You can refer the following MathWorks documenation for more information:
  4 件のコメント
Animesh
Animesh 2024 年 8 月 23 日
By "performance" here, do we mean "execution time" or "model accuracy"?
Jinjian
Jinjian 2024 年 8 月 23 日
The performance here means "model accuracy".

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeSequence and Numeric Feature Data Workflows についてさらに検索

製品


リリース

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by