variance method
T
variance()
Calculates element-wise variance of tensors.
Throws StateError if the iterable is empty.
Implementation
T variance() {
if (isEmpty) {
throw StateError('Iterable is empty');
}
final mean = this.mean();
final resultBuilder = mean.toBuilder(copy: false);
resultBuilder.tensorShape = mean.tensorShape;
final squaredBuilder = resultBuilder.toBuilder(copy: false);
var n = 0;
for (var item in this) {
squaredBuilder.setTensor(item);
squaredBuilder.sub(mean);
squaredBuilder.sq();
resultBuilder.add(squaredBuilder.build(recycle: true));
n++;
}
resultBuilder.divScalar(n);
return resultBuilder.build() as T;
}