Posts

Twit Progress

Phew, a lot of work. I am making the TWIT algorithms as a PyPI package that only deals with Tensor Weighted Interpolative Transfer.  It has nothing of Cognate nor SRS nor NuTank in it. It will let one do all sorts of scaling and clipping between tensors.  Often people ask on StackOverflow about scaling images in tensors, and the current solution is to use an the pillow image library.  You convert from tensor to image, scale, and back to tensor. Twit will let one do that without the image library, and crop and clip.  Anyway, lots of progress. It will be up soon as a GitHub project.

Tensor Weighted Interpolative Transfer in Python

I decided to switch the entire Cognate and NuTank project to python. I am first switching the TWIT algorithms over.  It is amazing how terse the code becomes!

Tensor Weighted Interpolated Transfer (TWIT)

Image
One function that is at the core of the SRS system is where the activation of a N-Dimensional map of neurons (a Tensor) should stimulate some part or all of another tensors activation.  This has several parameters. Source and Target dimensions.  In NumPy nomenclature this is the shape and slices of the source and target tensors. For example the source tensor A might be (4,5,6) in shape and the target B might be (7,8) in shape.  They miss match on both count of dimensions and size of dimensions. Also along each axis of the larger dimension tensor (in this case A) there is a start and end weight usually between -1.0 and 1.0.  We want to interpolate the weights along that dimension. One may also select a subset of either or both A and B as the connected part.  The form of this is source, destination, and weight ranges for each dimension.  If some part is missing it is assumed to be the whole range of the tensor dimension, or for weights is assumed to be 1...