機械学習済みのmat​ファイルをweb app serverに​て読み込む方法

3 visualizzazioni (ultimi 30 giorni)
soh
soh il 21 Dic 2022
Commentato: soh il 9 Gen 2023
現在アプリにて機械学習済みのmatファイルをweb app serverに​て読み込みたいです。(app designerで制作したアプリです)
現状としては、
app.appDirectory = fileparts(mfilename('fullpath'));
にてアプリのディレクトリを取得し、その後
cd('model')
として機械学習済みのmodelが入っているファイルを参照し、load('model1.mat')のような形で、matファイルの中にあるmodel1.matを読み込んでおります。(modelの中にあるmatファイルは複数あります。)
このmodelのファイルは、私が「app.appDirectory」のpathを参考に手動でいれています。
ただバージョンを変えるごとに、「app.appDirectory」のpathがかわるため、毎回modelのファイルを動かすのが手間に感じております。
これよりいい方法で、matファイルを読み込む方法はないのでしょうか。
  5 Commenti
Atsushi Ueno
Atsushi Ueno il 5 Gen 2023
>「機械学習済みのmodelファイルをここに動かす」の部分ですが、これは事前に「model_path」の中に私が手動で「model1.mat」を入れるということでしょうか。
はいその通りです。私がweb app serverを動かす環境を持たない状態で回答しているのでこの様な事態になっています。具体的に何が起きているのか、私が詳細を想定出来ていません。
上記リンクの回答ではuigetfile関数を使っています。即ち自分でフォルダを選ぶ様にという事です。これは@sohさんが下記の通り行っている事と同じだと思います。
>このmodelのファイルは、私が「app.appDirectory」のpathを参考に手動でいれています。
soh
soh il 9 Gen 2023
ありがとうございます。
今回はweb app server においての動作もあわせての確認であったため、ご指摘いただいた方法では手動でずっと行う必要がありました。
よって、回答は別の方を採用させていただきました。

Accedi per commentare.

Risposta accettata

Kojiro Saito
Kojiro Saito il 6 Gen 2023
Webアプリはアクセスする毎にセッションフォルダーが変わってしまいますが、「Web アプリコンパイラー」で「アプリに実行に必要なファイル」にフォルダーを追加してパッケージに含めれば、
load(fullfile('models', 'trainedModel.mat'))
のようにフォルダー名とmatファイル名をfullfileでつなげて読み込みできます。
matファイルの実体はWindowsだと
C:\ProgramData\MathWorks\webapps\R2022b\USR\.appCache\mcrCache9.13\myPred\myPredictApp\models\trainedModel.mat
のようにアプリのキャッシュフォルダーの中に配置されるので、セッションによらず同じmatファイルを使用することができます。
  1 Commento
soh
soh il 9 Gen 2023
ありがとうございます。
ご指示通り行ったところ無事解決いたしました。

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su MATLAB Web App Server in Help Center e File Exchange

Prodotti


Release

R2022b

Community Treasure Hunt

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

Start Hunting!