matrix-multiplication
Предположим, что у меня есть матрица сродства A и диагональная матрица D. Как я могу вычислить матрицу Лапласа в Python с помощью nympy? L = D^(-1 / 2) A D^(1/2) В настоящее время я использую L = D**(-1/2) * A * D**(1/2). Это правильный путь? Спасибо....
Идея моей простой программы, которую я пытался написать, состоит в том, чтобы взять входные данные от пользователя, чтобы увидеть, насколько велика матрица для умножения. dd@cuda-Linux:~/Desktop/multi$ ./program What is the rowSize of a? 33 What is the colSize of a? 33 What is the rowSize of b? 33 What is t...
У меня есть 2 матрицы 100кх200 и 200кх100к если бы они были маленькой матрицей, я бы просто использовал numpy dot product sum(a.dot(b), axis = 0) Однако матрица слишком велика, а также я не могу использовать циклы есть ли разумный способ сделать это?...
Я знаю, что понимание списка сделает это, но мне было интересно, есть ли еще более короткий (и более Питонический?) подход. Я хочу создать серию списков, все разной длины. Каждый список будет содержать один и тот же элемент e, повторенный n раз (где n = длина списка). Как мне создать списки, не делая [e for...
Я видел интересный метод, используемый в ответ до еще вопрос, и хотел бы понять это немного лучше. нам дано 64-разрядное целое число без знака, и нас интересуют следующие биты: 1.......2.......3.......4.......5.......6.......7.......8....... в частности, мы хотели бы переместить их на верхние восемь позиц...
Я делаю некоторые тесты с CUDA, C++, C# и Java и использую MATLAB для проверки и генерации матрицы. Но когда я умножаю с MATLAB, 2048x2048 и даже большие матрицы почти мгновенно умножаются. 1024x1024 2048x2048 4096x4096 --------- --------- --------- CUDA C (ms) 43.11...
Как я могу умножать и делить, используя только сдвига и добавления? ...
я оптимизирую функцию и хочу избавиться от медленных циклов. Я ищу более быстрый способ умножения каждой строки матрицы на вектор. какие идеи? EDIT: Я не ищу "классическое" умножение. например. У меня есть матрица, которая имеет 23 столбца и 25 строк и вектор, который имеет длину 23. В результате я хочу ...
Я недавно перешел на Python 3.5 и заметил новый оператор умножения матрицы (@) иногда ведет себя иначе, чем numpy dot оператора. Например, для 3d массивов: import numpy as np a = np.random.rand(8,13,13) b = np.random.rand(8,13,13) c = a @ b # Python 3.5+ d = np.dot(a, b) The @ оператор возвращает массив...
я наткнулся на странный способ (на мой взгляд), что MATLAB имеет дело с пустой матрицы. Например, если умножить две пустые матрицы, то получится: zeros(3,0)*zeros(0,3) ans = 0 0 0 0 0 0 0 0 0 теперь это уже застало меня врасплох, однако быстрый поиск привел меня к ссылке выше, и...