問題タブ [kernlab]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
1623 参照

r - 「.local(object、...)のエラー:テストベクトルがモデルと一致しません!」を克服する方法は?

元のデータセットから100レコードを削除し、次のコーディングを使用してSVMモデルを再構築しました。

ここで、新しいモデルのトレーニング/テストとは別に設定した100個のレコードを取り込み、モデルがこれまでに見たことのない100個のレコードをどれだけ適切に識別および分類できるかを確認します。そこで、次のコーディングを行いました。

しかし、Rは私に次のエラーを与えます:

このエラーをどのように克服できるか考えてみてください。モデルの構築に使用されたテストセットには、466個のレコードがあります。したがって、検証テストを466にも複製しようとしましたが、それでも同じエラーが発生します。

0 投票する
0 に答える
847 参照

r - R ksvm サポート ベクター

R の ksvm パッケージの重みを抽出しようとしています。

通常、私は e1071 パッケージを使用し、重みは次のように計算できます。

しかし、ksvm パッケージを調べると、係数とアルファ (サポート ベクター) の両方が同じ次元のリストになっています。アルファはベクトルを返しません。

私の質問は、ゼロ値を含むサポート ベクターにどのようにアクセスすればよいですか? 変数を元の入力に対応させるために SVindex を使用する必要がありますか?

ありがとう。

0 投票する
2 に答える
3326 参照

r - キャレットエラーを伴うSVM分類(基本)

私はおそらくここで非常に単純な(そして愚かな)間違いを犯していますが、それを理解することはできません。Kaggle(Digit Recognizer)からのデータで遊んでいて、CaretパッケージでSVMを使用して分類を行おうとしています。ラベル値を数値型として関数にプラグインするとtrain、Caretの関数はデフォルトで回帰に設定されているように見え、パフォーマンスはかなり低下します。そこで次に試したのは、関数を使用して因子に変換し、factor()SVM分類を実行してみることです。ダミーデータを生成し、それをCaretにプラグインするコードを次に示します。

このエラーが発生します:

誰かが私が間違っていることを教えてもらえますか?ありがとうございました!

0 投票する
1 に答える
3937 参照

r - R の ksvm の確率と応答が一貫していないのはなぜですか?

のオプションを使用ksvmして、R の kernlab パッケージから確率を予測しています。ただし、 を使用すると、 で与えられる確率が最も高いクラスが得られないことがあります。type="probabilities"predict.ksvmpredict(model,observation,type="r")predict(model,observation,type="p")

例:

これは正しい動作ですか、それともバグですか? それが正しい動作である場合、確率から最も可能性の高いクラスをどのように推定できますか?


再現可能な例を試す:

結果の出力:

0 投票する
1 に答える
757 参照

r - R で ksvm を使用する大規模なサポート ベクター マシンの無効な確率モデル

R の kernlab パッケージの関数を使用して、サポート ベクター マシンをksvmトレーニングします。多数の観測 (300k) とあまり多くの機能 (1-8) を使用しません。結果の確率モデルを使用したいのですが、大規模なデータ セットの場合、結果の確率モデルの形式が予期しないものになります。

これが起こるべきことです:

ただし、 の値が大きい場合n(たとえば、100k; メモリ使用量が多くなり、実行時間が長くなることに注意してください)、 の値はprob.model(m)[[1]]長さ の数値ベクトルであり2n、一見すると の各観測値の尤度ですdf。何が原因でしょうか?

セッション情報:

編集:これは私が話している分類タスクでdfあり、次の形式を持っています:

0 投票する
1 に答える
533 参照

r - R の kernlab の ksvm のベクトルとしてのパラメータ C. epsilon

R で kernlab パッケージの ksvm 関数を使用して、epsilon-SVM 回帰を試みています。パラメータ C (正則化定数) とイプシロン (無感度) をベクトル (ベクトルの長さ = トレーニング データの長さ) として配置したい。しかし、私はこれを行う方法を理解することができません。何らかの方法を提案してください。

0 投票する
2 に答える
1863 参照

r - スパム データセットの SVM 分類結果のプロット中にエラーが発生しました

パッケージSVMからのスパム データセットの分類結果のプロットに問題があります。kernlab

コード:

エラー:

0 投票する
1 に答える
3351 参照

r - kernlab パッケージの ksvm でカーネル関数をカスタマイズするには?

緯度と経度があるので、RBF カーネルを exp(-1/2||sophhere distrance||^2) に再定義する必要があります。つまり、カーネル関数を自分で書き直す必要があります。カーネルを次のように記述します。

関数をテストしましたが、カーネルは正しいはずです。しかし、次のトレーニング コマンドを使用すると、エラーが発生します。

さらにトリッキーなのは、ksvm ドキュメントのサンプル コードを試したことです。

しかし、私は同じエラーが発生しています。

カーネル関数を正しく定義する方法を知っている人はいますか?

0 投票する
3 に答える
7078 参照

r - e1071 とキャレットを使用した SVM モデルの結果が大きく異なる

データに 2 つの異なるパッケージを使用して 2 つの SVM モデルをトレーニングし、非常に異なる結果を得ています。これは予想されることですか?

e1071を使用したmodel1

キャレットを使用したmodel2

calculateAUC()ターゲットの予測値と実際の値を考慮して、AUC 値を計算するために定義した関数です。値は次のように表示されます。

モデル1 (e1071)

1
0.8567979

model2 (キャレット)

0.9910193
0.758201

これは可能なことですか?それとも私はこれを間違っていますか?

参考になれば、サンプルデータを提供できます