The Kronecker Product is useful in many matrix operations and hence many machine learning routines. It is relatively simple to implement recursively.
I want to work on this issue, I think we can implement it, the logic is straightforward with O(abxy) complexity for M1 of a * b and M2 of x * y, and this is minimum because, output matrix has abxy elements.
Moreover I found the implementation in C and other languages here .
If there would be any optimization which can be done please tell me, firstly I'm going to write a simple version, using simple for loops.
@nimitbhardwaj: I'm not familiar enough with the operation to be able to provide guidance, but would be happy to have you pick this up. I'm curious: For an account with your privileges, are you able to mark yourself as the "assignee" of an issue? Or is that something that a core team member would need to do for you?
May be nope, I am not able to mark myself as Assignee, perhaps I don't have the rights to do so, and for the case of the Kronecker Product, its not a difficult operation, I just read the wikipedia introduction of it, I got the idea what it is, easy to implement.
This has been implemented? Can you point to docs? That's RAD!!!
@buddha314
Yes, I implemented it, its just merged, I saw the documentation, there is no update now, but using it is easy, procedure is proc kron(A: [?ADom] ?eltType, B: [?BDom] eltType);, which takes 2 arguments, these are matrices and output of the function is also a matrix, if the size of A is a * b and of B is c * d then resultant matrix is (a *c) * (b * d) like standard kron.
Just thats it.
I will try to break it in the next 72 hours or so!
Most helpful comment
@buddha314
Yes, I implemented it, its just merged, I saw the documentation, there is no update now, but using it is easy, procedure is
proc kron(A: [?ADom] ?eltType, B: [?BDom] eltType);, which takes 2 arguments, these are matrices and output of the function is also a matrix, if the size of A is a * b and of B is c * d then resultant matrix is (a *c) * (b * d) like standard kron.Just thats it.