| 17 | using namespace af; |
| 18 | |
| 19 | array distance(array data, array means) { |
| 20 | int n = data.dims(0); // Number of data points |
| 21 | int k = means.dims(1); // Number of means |
| 22 | |
| 23 | array data2 = tile(data, 1, k, 1); |
| 24 | array means2 = tile(means, n, 1, 1); |
| 25 | |
| 26 | // Currently using manhattan distance |
| 27 | // Can be replaced with other distance measures |
| 28 | return sum(abs(data2 - means2), 2); |
| 29 | } |
| 30 | |
| 31 | // Get cluster id of each location in data |
| 32 | array clusterize(const array data, const array means) { |
no test coverage detected