about summary refs log tree commit diff
path: root/sourcecodes/bnt-master/netlab3.3/gtmlmode.m
diff options
context:
space:
mode:
Diffstat (limited to 'sourcecodes/bnt-master/netlab3.3/gtmlmode.m')
-rw-r--r--sourcecodes/bnt-master/netlab3.3/gtmlmode.m25
1 files changed, 25 insertions, 0 deletions
diff --git a/sourcecodes/bnt-master/netlab3.3/gtmlmode.m b/sourcecodes/bnt-master/netlab3.3/gtmlmode.m
new file mode 100644
index 00000000..6fee04a8
--- /dev/null
+++ b/sourcecodes/bnt-master/netlab3.3/gtmlmode.m
@@ -0,0 +1,25 @@
+function modes = gtmlmode(net, data)
+%GTMLMODE Mode responsibility for data in a GTM.
+%
+%	Description
+%	 MODES = GTMLMODE(NET, DATA) takes a GTM structure NET, and computes
+%	the modes of the responsibility  distributions for each data point in
+%	DATA.  These will always lie at one of the latent space sample points
+%	NET.X.
+%
+%	See also
+%	GTM, GTMPOST, GTMLMEAN
+%
+
+%	Copyright (c) Ian T Nabney (1996-2001)
+
+% Check for consistency
+errstring = consist(net, 'gtm', data);
+if ~isempty(errstring)
+  error(errstring);
+end
+
+R = gtmpost(net, data);
+% Mode is maximum responsibility
+[max_resp, max_index] = max(R, [], 2);
+modes = net.X(max_index, :);