Я делаю просто эквивалентную библиотеку, такую как nd4j в Java, но я хочу реализовать ее самостоятельно. Тем не менее, я не могу найти какие-либо ресурсы в Интернете, чтобы помочь моим исследованиям. Я надеюсь поддержать базовые функции nundy, такие как randn и shape and dot product
Я создал базовый класс Matrix, но уже столкнулся с проблемой. Он использует обобщения для определения Матрицы, но я должен использовать класс Object для хранения n-мерной матрицы.
public class Matrix<T> {
Object values;
int size;
Matrix() {
}
Matrix(int[] shape) {
size = shape.length;
}
Matrix(Object values) {
this.values = values;
}
}
Библиотека должна выполнять матричные операции, такие как numpy syntas, такие как
Matrix<int> m = new Matrix<T>([100,100]);
m=m*m;
m++;
m+=10;
m = m+m;
m = m^2
m = np.dot(m,m)
Я преобразую java-файлы в kotlin, так как kotlin поддерживает перегрузку операторов