comparison thesis/cortex.org @ 533:122524d39652

adding details to empathy algorithm.
author Robert McIntyre <rlm@mit.edu>
date Sun, 27 Apr 2014 09:40:19 -0400
parents 686f77b88292
children 39ee58fef9d8
comparison
equal deleted inserted replaced
532:686f77b88292 533:122524d39652
2786 grows larger, the vector begins to define a subspace which is all 2786 grows larger, the vector begins to define a subspace which is all
2787 the sensations the worm can practically experience during normal 2787 the sensations the worm can practically experience during normal
2788 operation. I call this subspace \Phi-space, short for 2788 operation. I call this subspace \Phi-space, short for
2789 physical-space. The experience vector defines a path through 2789 physical-space. The experience vector defines a path through
2790 \Phi-space. This path has interesting properties that all derive 2790 \Phi-space. This path has interesting properties that all derive
2791 from physical embodiment. The proprioceptive components are 2791 from physical embodiment. The proprioceptive components of the path
2792 completely smooth, because in order for the worm to move from one 2792 vary smoothly, because in order for the worm to move from one
2793 position to another, it must pass through the intermediate 2793 position to another, it must pass through the intermediate
2794 positions. The path invariably forms loops as actions are repeated. 2794 positions. The path invariably forms loops as common actions are
2795 Finally and most importantly, proprioception actually gives very 2795 repeated. Finally and most importantly, proprioception alone
2796 strong inference about the other senses. For example, when the worm 2796 actually gives very strong inference about the other senses. For
2797 is flat, you can infer that it is touching the ground and that its 2797 example, when the worm is proprioceptively flat over several
2798 frames, you can infer that it is touching the ground and that its
2798 muscles are not active, because if the muscles were active, the 2799 muscles are not active, because if the muscles were active, the
2799 worm would be moving and would not be perfectly flat. In order to 2800 worm would be moving and would not remain perfectly flat. In order
2800 stay flat, the worm has to be touching the ground, or it would 2801 to stay flat, the worm has to be touching the ground, or it would
2801 again be moving out of the flat position due to gravity. If the 2802 again be moving out of the flat position due to gravity. If the
2802 worm is positioned in such a way that it interacts with itself, 2803 worm is positioned in such a way that it interacts with itself,
2803 then it is very likely to be feeling the same tactile feelings as 2804 then it is very likely to be feeling the same tactile feelings as
2804 the last time it was in that position, because it has the same body 2805 the last time it was in that position, because it has the same body
2805 as then. If you observe multiple frames of proprioceptive data, 2806 as then. As you observe multiple frames of proprioceptive data, you
2806 then you can become increasingly confident about the exact 2807 can become increasingly confident about the exact activations of
2807 activations of the worm's muscles, because it generally takes a 2808 the worm's muscles, because it generally takes a unique combination
2808 unique combination of muscle contractions to transform the worm's 2809 of muscle contractions to transform the worm's body along a
2809 body along a specific path through \Phi-space. 2810 specific path through \Phi-space.
2810 2811
2811 There is a simple way of taking \Phi-space and the total ordering 2812 The worm's total life experience is a long looping path through
2812 provided by an experience vector and reliably inferring the rest of 2813 \Phi-space. I will now introduce simple way of taking that
2813 the senses. 2814 experiece path and building a function that can infer complete
2814 2815 sensory experience given only a stream of proprioceptive data. This
2816 /empathy/ function will provide a bridge to use the body centered
2817 action predicates on video-like streams of information.
2818
2815 ** Empathy is the process of tracing though \Phi-space 2819 ** Empathy is the process of tracing though \Phi-space
2816 2820
2817 Here is the core of a basic empathy algorithm, starting with an 2821 Here is the core of a basic empathy algorithm, starting with an
2818 experience vector: 2822 experience vector:
2819 2823
2820 First, group the experiences into tiered proprioceptive bins. I use 2824 An /experience-index/ is an index into the grand experience vector
2821 powers of 10 and 3 bins, and the smallest bin has an approximate 2825 that defines the worm's life. It is a timestamp for each set of
2822 size of 0.001 radians in all proprioceptive dimensions. 2826 sensations the worm has experienced.
2823 2827
2824 Then, given a sequence of proprioceptive input, generate a set of 2828 First, group the experience-indices into bins according to the
2825 matching experience records for each input, using the tiered 2829 similarity of their proprioceptive data. I organize my bins into a
2826 proprioceptive bins. 2830 3 level heirachy. The smallest bins have an approximate size of
2827 2831 0.001 radians in all proprioceptive dimensions. Each higher level
2828 Finally, to infer sensory data, select the longest consecutive chain 2832 is 10x bigger than the level below it.
2829 of experiences. Consecutive experience means that the experiences 2833
2834 The bins serve as a hashing function for proprioceptive data. Given
2835 a single piece of proprioceptive experience, the bins allow us to
2836 rapidly find all other similiar experience-indices of past
2837 expreience that had a very similiar proprioceptive configuration.
2838 When looking up a proprioceptive experience, if the smallest bin
2839 does not match any previous experience, then succesively larger
2840 bins are used until a match is found or we reach the largest bin.
2841
2842 Given a sequence of proprioceptive input, I use the bins to
2843 generate a set of similiar experiencs for each input using the
2844 tiered proprioceptive bins.
2845
2846 Finally, to infer sensory data, I select the longest consecutive
2847 chain of experiences that threads through the sets of similiar
2848 experiences. Consecutive experience means that the experiences
2830 appear next to each other in the experience vector. 2849 appear next to each other in the experience vector.
2850
2851
2831 2852
2832 This algorithm has three advantages: 2853 This algorithm has three advantages:
2833 2854
2834 1. It's simple 2855 1. It's simple
2835 2856