matlab最小二乘随机样本生成

matlab least squares random sample generation

我正在寻求一些帮助来生成包含 600 个样本的嘈杂随机数据集。 目前我正在使用以下代码:

weight = randn(size,1);
noise = randn(size,1);
X = randn(size);
y = (X'*weight) + noise;

权重只是一个向量 ∈ R。我需要 600 个样本,分成一组大小为 500 和另一组大小为 100。求助?
稍后我将计算这些集合的均方误差,但这应该容易得多。

如果你需要 600 个样本,我建议 size = 600

我不明白你用乘法和求和三次使用 randn 是为了什么(也许你想要一些特殊的分布)但是 - 你想要噪声信号,所以你得到它:你可以检查通过对 y 使用 autocorr 函数:

要将样本分成两个不同大小,请使用:

y1 = y(1:100);
y2 = y(101:600);

希望对您有所帮助!