matlabのプログラムをpythonへ書き換えています。
matlabにおいてmat形式で保存されたモデルをロードし、svmclassify関数で分類を行っているのですが、pythonにおけるsvmで同様にmatファイル形式のモデルを利用して分類を行うことは可能でしょうか。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答3件
0
自己解決
既に削除されているsvmclassify関数でしたがsvmclassify.mで調べたところ以下のページにコードが出ていましたので、それをpythonに書き換えることで解決しました。
https://www.mathworks.com/matlabcentral/mlc-downloads/downloads/submissions/62061/versions/1/previews/msvm/svmclassify.m/index.html
投稿2020/06/28 03:48
総合スコア11
0
「python mat 読み込み」で検索すると、下記のようにいくつか引っかかります。
ndarrayに変換できているようなので、そこまで行けば後は自由にPythonのSVM系モジュールが利用できます。
Pythonで.matファイルを読む
matlabがないのでscipyでデータ作成して読み込むという感じで試してみました。
python3
1import numpy as np 2import scipy.io 3 4# データ作成 5data = np.arange(10) 6scipy.io.savemat("test.mat", {'name':data}) 7 8# ここから読み込み 9data = scipy.io.loadmat("test.mat") 10print(data) 11""" 12{'__header__': b'MATLAB 5.0 MAT-file Platform: nt, Created on: Fri Jun 26 11:34:31 2020', '__version__': '1.0', '__globals__': [], 'name': array([[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]])} 13""" 14 15print(data["name"]) # "name"にarrayが入っていることがわかったので、こうするとarrayがとれる 16""" 17[[0 1 2 3 4 5 6 7 8 9]] 18"""
投稿2020/06/25 23:02
編集2020/06/26 02:39総合スコア3966
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

0
名前からしてサポートベクターマシン (SVM) を使った分類器のことだと思うので、Python で SVM 分類をやるなら以下になるのではないでしょうか。
投稿2020/06/25 09:06
編集2020/06/25 09:07総合スコア21960
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。