問題タブ [mathnet-numerics]
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.
c# - Math.NETランタイムを.NET2.0または.NET3.5アプリケーションで使用できますか?
最新バージョンのMath.NETをダウンロードしたところ、使用時に問題が発生しました。
ライブラリが.NET4.0プロジェクトで実行されることを意図していたのでしょうか。
アップデート:
コンパイルされたdllは「Net40」フォルダ内にありますが、2.0プロジェクトで参照できないということですか?
このコードを試してみたところ、TypeLoadException
(VS2008、ターゲットフレームワーク3.5)を入手しました。
c# - C# で Math.Net Numeric を使用したクロス積
MathNet.Numerics.LinearAlgebra.Generic.Vector<double>
次のような2 つの vectorがあります。
私は基本的にそれらをクロスプロダクトしたいのですが、公式の関数が見つかりませんでした。クロス積は自分で書くことができる非常に簡単な関数であることは知っていますが、API の関数を使用したいと考えています。
以下の両方が機能します:(APIでそのような関数が見つかりませんでした。)
これを見つけましたが、記述しようとしたときに関数が見つかりませんでした: API リファレンス
c# - c# Mathnet Numerics -- 非ゼロ疎行列要素のインデックスを取得する
csharp の MathNet.numerics を使用して、カスタムの最適化された行列演算 (使用している疎行列について知っていることに基づくスマート クロネッカー積) を作成したいと考えています。
スパース行列のゼロ以外の要素を取得するためのアクセサーはありますか? (またはインデックス?またはその反復子?またはCSR表現?)
c# - Math.Net Numerics の多重回帰
次のような math.net 回帰メソッドを使用して、単純な単一回帰を達成しました。
質問: この方法で重回帰を適用できるものは何ですか? そのため、配列もあり、zdata
これを重回帰に使用したいと考えています。
c# - math.net による多重回帰
こんにちは、math.net で重回帰を取得しようとしていますが、少し混乱しています。
私はMath.Netを理解していないと思います。これに関する助けは素晴らしいでしょう。基本的に、複数の x と単一の y があり、それらから係数データを取得する必要があります。
mathnet-numerics - Math.NET Numerics での QR 分解
QR 分解は Math.NET Numerics でどのように実装されていますか?
Gram-Schimdt またはギブンズ回転ですか? Gram-Schimdt で実装されているような気がしますが、よくわかりません。実装が見つかりません。
Gram-Schimdt による QR 分解は、ギブンス回転による結果とは異なりますか?
行列のギブンス回転を使用して (手動で) QR 分解を生成し、MathNet.Numerics.LinearAlgebra.Generic.Factorization.QRMethod
(Gram-Schimdt を実装していると思われる) を使用して QR 分解を生成しましたが、結果はわずかに異なりました。数値の違いは約 1E-16 (それほど大きくない) で、一部の行には反対の符号 (*-1) があります (これが本当の問題です。これは、MathNet.Numerics が異なる QR アルゴリズムを実装しているために発生すると思います)。
ギブンズ回転を使用して QR 分解を実行するライブラリをいくつか提案できますか?
c# - ジェネリック型階層の DebuggerTypeProxy
Math.NET Numerics で行列とベクトルのデバッガー タイプのプロキシ/サロゲートを作成しようとしているので、デバッガーはより有用な情報を表示します (F# FSI でも)。型階層は次のとおりです。
Generic.Matrix<T>
Double.Matrix : Generic.Matrix<double>
Double.DenseMatrix : Double.Matrix
機能するもの
閉じたジェネリック型の非ジェネリック プロキシ。コンストラクターの代わりにaまたは aMatrix<double>
を受け入れる場合も、同じように機能します。Double.Matrix
Double.DenseMatrix
次に、Double.DenseMatrix を次のように装飾します。
働きたいこと
タイプごとに個別のプロキシを実装する必要はありませんので、汎用にしましょう。
次に、Double.DenseMatrix を次のように装飾します。
または、次のように閉じることもできます:
必要に応じて、その属性を基本クラスに追加することもできます。
オープン ジェネリック型 (つまり ) で属性を宣言するときに動作するはずであるとドキュメントに記載されていても、たとえば単体テストをデバッグするときなど、これらはどれも機能しませんMatrixSummary<>
。List<T>
などでもやはりうまくいきます。
何か案は?
関連している:
c# - C# Math.NET Numerics の LinearRegression コードを高速化できますか?
多重線形回帰を効率的に行う必要があります。Math.NET Numerics パッケージを使用しようとしていますが、速度が遅いようです。おそらく、私がコーディングした方法でしょうか? この例では、単純な (1 x 値) 回帰しかありません。
私はこのスニペットを持っています:
これは、この純粋な C# よりも約 20 倍遅く実行されます。
また、Math.NET が問題の場合は、複数の X の純粋なコードを変更する簡単な方法を誰かが知っていれば、助けていただければ幸いです。