norm method
num
norm(
[ - Norm normType = Norm.frobenius
])
Implementation
num norm([Norm normType = Norm.frobenius]) {
switch (normType) {
case Norm.manhattan:
return _l1Norm();
case Norm.frobenius:
return _l2Norm();
case Norm.chebyshev:
return _infinityNorm();
case Norm.spectral:
return _spectralNorm();
case Norm.trace:
return _traceNorm();
// The below norms need more context to implement.
case Norm.mahalanobis:
throw UnimplementedError('Mahalanobis norm is not implemented');
case Norm.hamming:
case Norm.cosine:
default:
throw Exception('Invalid norm type');
}
}