問題タブ [convex-optimization]

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 投票する
1 に答える
448 参照

python - CVXOPT L1 ノルム近似 - lDB の値が不正です

ここで与えられた L1 ノルム近似の例に従って、次のコードを使用します。

すべてが正常に動作します。

ただし、mをnよりも小さくなるように変更すると、

次のエラーが表示されます。

L1.py:180 の次のステートメントが原因でエラーが発生していることがわかります。

さらに lapack.c:3651 に飛び込むと、次のステートメントでエラーがスローされます。

ただし、cvxopt.lapack.gels の CVXOPT の LAPACK インターフェイスに関するドキュメントを読むと、具体的には、mがn未満の場合、最小ノルム問題を解決すると書かれています。

mをnよりも小さくしてもうまくいかない理由を誰かが明らかにすることはできますか?

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

python - SVM 双対法を解く際の CVXPY エラー「2 つの非定数を乗算できません」

CVXPY で SVM の二重問題を解決しようとしています。

双対問題の公式

以下は Python コードです。

エラーが発生します:

cvxpy は、カーネル行列を使用した二次形式の最適化をサポートしていないようです。ただし、Matlab で cvx を使用して、このプレゼンテーションの 13(35) ページで同じ問題を解決している人々を見てきました。

http://users.isy.liu.se/en/rt/schon/CourseMLlund/le5.pdf

私はcvxに非常に慣れていません。これを修正するのを手伝ってください。ありがとう。

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

matlab - コスト関数が凹面か凸面かを確認するにはどうすればよいですか?

自己組織化マップ コスト関数

このコスト関数が凹型か凸型かを確認するにはどうすればよいですか? また、これに単一または複数の最小値があるかどうかも調べたいと思います。

努力した;

上記のコードで試したのは、上記のコスト関数の入力としてランダムな重み値を取得し、複数の最小コストが見つかった場合、変化しないサンプルを使用してそれらのランダムな入力のコスト値を計算することです。私のコスト関数が凸でないことを確認します。

追加の入力があるため、私のコードは質問に投稿したコスト関数とは少し異なります。私の実装からの出力として、サンプルに対するさまざまな重みのコスト値がありますが、これを視覚化するのに問題があります。

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

matlab - MATLAB で可変数の入力関数を使用して最適化する

次の単純な最適化問題から始めました。

F=@(L) max(-[log(L(1)/(L(1)+1)) log(L(2)/(L(2)+1))+log(1-L(1)) log(L(3)/(L(3)+1))+log(1-L(1))+log(1-L(2))]); [L,fval]=fmincon(F,[0.5 0.5 0.5],[],[],[],[],[0;0;0],[1;1;1])

これにより答えが得られます:L = 0.2554 0.3759 0.7785そしてfval = 1.5925

Objただし、 in には可変数の入力関数が必要ですmax(-[Obj])。上記の例では、次の 3 つの関数があります。

Obj=log(L(1)/(L(1)+1)) log(L(2)/(L(2)+1))+log(1-L(1)) log(L(3)/(L(3)+1))+log(1-L(1))+log(1-L(2))

次のコードを使用Objして、関数の数が依存する生成を行いましたM

Objこれは上記の例とまったく同じですが、これObjを次の最適化関数に渡すと、サポートされません。

誰かがこの問題を解決するのを手伝ってくれますか? Mすべての機能を手動で入力するのは困難です 。

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

convex-optimization - cvxpy でのログ機能の最小化

CVXPY を使用して正確なライン検索実験をシミュレートしようとしています。

(cvxbook byod pg472) ここに画像の説明を入力

上記の式は、私の入力目的関数です。

勾配関数

これを使用して、目的関数を最小化することで t "Step Size" を見つけると、エラー 'AddExpression' object has no attribute 'log' が発生します。

CVXPY と最適化は初めてです。誰かがエラーを修正する方法を教えていただければ幸いです。

ありがとう

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

java - 凸包最適化 Java

最近、凸包のトリックに関するPEG Wikiの記事を読みました。驚いたことに、この記事の最後で、行を std::set に格納すると、このトリックの完全に動的な変形(適用条件がないことを意味します) を実現できると読みました。前述のアプローチは理解できましたが、実装しようとすると必ず失敗します。
つまり、サイズ n の配列 A があり、各配列要素には 2 つの正の整数 ai と bi が含まれます。
各クエリが次の 2 つのタイプのいずれかになる Q クエリがあります。

1) 正の整数 x が与えられた場合、max (aix + bi)1 から n までのすべての i を見つける

2) いくつかの i の ai と bi の値を更新します。

更新される値は、減少しない順序になりますai1>=ai2 and bi1>=bi2 for Q >= i1 > i2 >= 1
Update Part は、前の行を削除して新しい行を追加することで実行できます。Javaで償却された(ログn)複雑さの更新部分とクエリ部分の両方を探しています

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

apache-spark - Sparkで任意の制約を持つ線形プログラム?

線形目的関数と線形等式および不等式制約を使用する凸最適化問題として定式化できる問題がありますが、膨大な数のパラメーターがあります。この問題は、1 台のマシンで合理的な時間内に解決できますが、数十万のパラメーターが必要ですが、必要な数百万のパラメーターでは解決できません。

Aaron Staple/Databricks が Matlab TFOCS ライブラリの一部を Spark に実装していることがわかりますが、制約のない凸最適化または正準制約 (スカラー行列 A の場合、Ax = b、x >= 0、スカラー ベクトル b、および x は最適化するパラメーターのベクトル)。しかし、任意の線形等式と線形不等式の制約を持つ線形計画法を解く必要があります。

Spark TFOCS に、私の問題を解決できる、欠けている機能があるかどうか知っている人はいますか? 利用可能な Spark ツールを使用してこの問題に取り組む他の方法はありますか?