operator: Gaussian
description:
Gaussian[sigma] ket
Gaussian[sigma, dx] ket
implement a Gaussian smooth
if dx is not specified, it defaults to 1
sigma is the width of the Gaussian
the algorithm:
exp( - ED(x, y) / (2 * sigma^2) )
where ED(x, y) is the Euclidean distance between x, y
examples:
-- 1D version:
Gaussian[0.7] |age: 40>
0.017|age: 36> + 0.047|age: 37> + 0.13|age: 38> + 0.36|age: 39> + |age: 40> + 0.36|age: 41> + 0.13|age: 42> + 0.047|age: 43> + 0.017|age: 44>
-- bar-chart of 1D version:
bar-chart[50] Gaussian[0.7] |age: 35>
----------
age: 31 :
age: 32 : ||
age: 33 : ||||||
age: 34 : ||||||||||||||||||
age: 35 : ||||||||||||||||||||||||||||||||||||||||||||||||||
age: 36 : ||||||||||||||||||
age: 37 : ||||||
age: 38 : ||
age: 39 :
----------
-- age similarity, using Gaussian[0.7]:
Gauss-simm-40 |*> #=> round[3] push-float 100 simm(Gaussian[0.7] |_self>, Gaussian[0.7] |age: 40>)
table[age, Gauss-simm-40] range(|age: 30>, |age: 50>)
+-----+---------------+
| age | Gauss-simm-40 |
+-----+---------------+
| 30 | 0 |
| 31 | 0 |
| 32 | 0.801 |
| 33 | 1.601 |
| 34 | 3.823 |
| 35 | 6.044 |
| 36 | 12.207 |
| 37 | 18.37 |
| 38 | 35.468 |
| 39 | 52.565 |
| 40 | 100.0 |
| 41 | 52.565 |
| 42 | 35.468 |
| 43 | 18.37 |
| 44 | 12.207 |
| 45 | 6.044 |
| 46 | 3.823 |
| 47 | 1.601 |
| 48 | 0.801 |
| 49 | 0 |
| 50 | 0 |
+-----+---------------+
-- 2D version:
Gaussian[0.5, 1] |grid: 10: 10>
0.003|grid: 8: 8> + 0.011|grid: 8: 9> + 0.018|grid: 8: 10> + 0.011|grid: 8: 11> + 0.003|grid: 8: 12> + 0.011|grid: 9: 8> + 0.059|grid: 9: 9> + 0.135|grid: 9: 10> + 0.059|grid: 9: 11> + 0.011|grid: 9: 12> + 0.018|grid: 10: 8> + 0.135|grid: 10: 9> + |grid: 10: 10> + 0.135|grid: 10: 11> + 0.018|grid: 10: 12> + 0.011|grid: 11: 8> + 0.059|grid: 11: 9> + 0.135|grid: 11: 10> + 0.059|grid: 11: 11> + 0.011|grid: 11: 12> + 0.003|grid: 12: 8> + 0.011|grid: 12: 9> + 0.018|grid: 12: 10> + 0.011|grid: 12: 11> + 0.003|grid: 12: 12>
see also:
smooth, distance, normalize
Home