2017-06-12 11 views
0

私はAx = bの解を見つけようとしていますが、Aは次元3x1、xは次元1x2、bは次元3x2です。私はまた、xが疎であることを望みます。 不正な次元sciKitラッソを学ぶ

from sklearn.linear_model import Lasso 
clf = Lasso(alpha=.01) 
A = np.array([[0], [1], [2]]) 
b = np.array([[0,1],[1,4],[6,2]]) 
clf.fit(A,b) 

は、しかし、私はエラーに私が間違ってやっているかについて enter image description here

任意のアイデアを得ますか?

+1

文章を画像として投稿しないでください。 –

答えて

0

これらの寸法はあまり意味がありません。

A: n,m and x: m,pの結果は、b: n, pとなり、行列乗算A * x = bとなります。

あなたの場合は、行vec/col-vecの乗算(内積)です。 しかし:(1,3)*(3,1)=(1,1)。この場合、b(3,2)は減算に使用できません。

またはcol-vec/row-vecの乗算(外側の製品)です。 しかし:(3,1)*(1,3)=(3,3)。ここでも、b(3,2)は互換性がありません。

+0

私は理解できません。 n = 3、m = 1、p = 2の何が問題なの?ディメンションはうまくいかないのですか? – user3394045

+0

Ax = 0 yesを解くのにAx = bを解くのではなく、bの大きさが正しくないためです。 (btw問題を指摘せずに素晴らしいdownvoting。) – sascha

関連する問題