私は機械学習の初心者です。私は機械学習技術を使ってPythonで配列の次元を増やす方法についてかなりの方法を研究してきました。私は主成分分析と次元削減のために使用されるカーネルトリックを見つけました。しかし、私は配列の次元数を増やすアルゴリズムを見つけるのに苦労しています。Pythonを使って配列の次元数を増やす
形状(20、)とラベルベクトルL = [0,1、...、9]のnumpy配列Xがあるとします。私は現在、次の式を使用して、形状(20,10)の出力配列Yと結論しています。
次のコードは、より明確に説明する:
import numpy
numLabels = 10
#define input array
X = numpy.random.rand(20,)
#define offset
offset = numpy.full((20,),0.07)
#define output array
Y = numpy.zeros((20,numLabels))
for l in range(numLabels):
Y[:,l] = X + (l-4.5)*offset # 4.5 because that the median for numbers 0 to 10
上記方法は、しかしながら、形状の出力アレイ(20,10)を得るために、ランダムなオフセット値となります。
1)同じ入力配列X、離散ラベルベクトルL、実数オフセットベクトルを使って出力配列Yを得る他の方法はありますか?おそらく上の数式のいくつかの変更?
2)実数オフセットベクトルを使用せずに出力配列Yを得る他の方法はありますか?
それはあなたが求めているものを正確には明らかではない - あなたはその式を実装するための別の方法を探していますか?サンプル入力を生成するコードを提供し、現在の実装と望ましい出力を表示してください。 –
@andrew_reeceご意見ありがとうございます。私は2つの別々の部分に私の質問を変更しました。サンプルコードも追加しました。お役に立てれば。 – Sansk