题目
【题目背景】 在机器学习中,对数据进行归一化处理是一种常用的技术。 将数据从各种各样分布调整为平均值为0、方差为1的标准分布,在很多情况下都可以有效地加速模型的训练。
【问题描述】 这里假定需要处理的数据为n个整数a1,a2,···,an 这组数据的平均值:
$$
\bar{a}\mathrm{=}\frac{a_1+a_2+···+a_n}{n}
$$
方差:
$$
D(a)=\frac{1}{n}\sum_{i=1}^{n}{(a_i-\bar{a})}^2
$$
使用如下函数处理所有数据,得到的n个浮点数f(a1),f(a2),···,f(an)即满足平均值为0且方差为1:
$$
f\left(a_i\right)=\frac{a_i-\bar{a}}{\sqrt{D(a)}}
$$
【输入格式】 从标准输入读入数据。 第一行包含一个整数,表示待处理的整数个数。 第二行包含空格分隔的n个整数,依次表示a1,a2,···,an
【输出格式】 输出到标准输出。 输出共 n 行,每行一个浮点数,依次表示按上述方法归一化处理后的数据f(a1),f(a2),···,f(an)。
【样例输入】
1 | 7 |
【样例输出】
1 | -0.7485510379073613 |
代码
1 |
|