Open koke2c95 opened 4 years ago
hi! thanks for all the ideas and links. have you ever seen a good basic library for animating things like matrices?
hi! thanks for all the ideas and links. have you ever seen a good basic library for animating things like matrices?
Sorry for the late reply to you. I search a lot , but I haven't seen visualization library like this idea.
The Ndarray/Tensor is the thing that stores data, values visualization by Think of each value as a pixel And those tensor operations are essentially is pixel coordinates in the operating space it can shuffle, drop, add any pixel
you can make a visualizing by nest different type (dim Information & tensor data binding) example like. muti same image nest in a matrix eq. grid image and you can infinity nesting
(0,0) = R scalar
(0,1) = R vector
(0,2) = R matrix
(0,~) ~>=3 : R tensor
(1,2) = gray image
(3,2) = rgb image
(0,1,2) = 2 dim R field R^2
(0,2,2) = 2 dim C field C^2
great works!
debug these math expression code is a very big problem
not only scalar vector matrix , high rank tensor support
Visualizing 3D tensors and beyond:
TensorDim is contain : left to right [N,C,H,W]
N->C->H->W
TensorDim like flatten Onions,cabbage box in box represent dim TensorDim has real represention information (N,C,H,W etc.)namedtensor support
plaidml dsl Types Tensor TensorDim TensorIndex
represent actual data: audio, 1D plot, text : vector image ,2D plot : matrix etc.
expression graph:
different color input variable ,leaf parameters/variable with temporal variable / activation : "Road width" elementwise leaf / elementwise or slice or other connection(edge) print AST forward & backward mode
animation:
expression step computation mode (debug) slice ,reshape, .T() other manipulate N-d array TensorDim/TensorIndex operators example : matmul = m@v
m@v = (v.squeeze(0).expand_as(w) * w).sum(1,keepdim=True).unsqueeze(1)
more ... conv2d etcinteractive:
interactive build block(visual programing) reverse interactive(debug) : selected tensor elements and follow it in expression graph selected element : muti view , like convolution-visualizer Input(Inputgrad) Weight(Weightgrad) Output(Outputgrad) views
NN support:
NN module visualization (conv2d) bigger computation graph : pytorchrec multi computation graph visualization and live debug
other useful link
SimpNet memory map Visualize the virtual address space of a Windows process on a Hilbert curve.
nvidia ppt
tensor network
einops