Ошибка в функции Numba: «индекс кортежа вне диапазона» при использовании пользовательского класса для разреженной матриц ⇐ Python
Ошибка в функции Numba: «индекс кортежа вне диапазона» при использовании пользовательского класса для разреженной матриц
Я столкнулся с проблемой с функцией, оптимизированной для Numba, которая включает специальный класс для представления разреженной матрицы. Я получаю сообщение об ошибке:
индекс кортежа выходит за пределы диапазона
Во время: ввод static-get-item по адресу z:\2023-2024\Python Labs\E0\TEST\Untitled-3.py (73)
Похоже, проблема связана с индексированием кортежей и возникает в следующем фрагменте кода
@numba.jit(nopython=True)
def numba_csc_ndarray_dot2(a: csc_matrix, b: np.ndarray):
out = np.zeros((a.shape[0], b.shape[1])) для j в диапазоне (b.shape[1]): для я в диапазоне (b.shape[0]): для k в диапазоне (a.indptr, a.indptr[i + 1]): out[a.indices[k], j] += a.data[k] * b[i, j] Я подозреваю, что либо a.indices[k], либо a.data[k] приводит к созданию кортежа, что приводит к ошибке «индекс кортежа вне диапазона». Я добавил несколько операторов отладки печати, и в выводе отображаются неожиданные значения кортежа.
Буду признателен за любые идеи и предложения по решению этой проблемы. Спасибо!
Я столкнулся с проблемой с функцией, оптимизированной для Numba, которая включает специальный класс для представления разреженной матрицы. Я получаю сообщение об ошибке:
индекс кортежа выходит за пределы диапазона
Во время: ввод static-get-item по адресу z:\2023-2024\Python Labs\E0\TEST\Untitled-3.py (73)
Похоже, проблема связана с индексированием кортежей и возникает в следующем фрагменте кода
@numba.jit(nopython=True)
def numba_csc_ndarray_dot2(a: csc_matrix, b: np.ndarray):
out = np.zeros((a.shape[0], b.shape[1])) для j в диапазоне (b.shape[1]): для я в диапазоне (b.shape[0]): для k в диапазоне (a.indptr, a.indptr[i + 1]): out[a.indices[k], j] += a.data[k] * b[i, j] Я подозреваю, что либо a.indices[k], либо a.data[k] приводит к созданию кортежа, что приводит к ошибке «индекс кортежа вне диапазона». Я добавил несколько операторов отладки печати, и в выводе отображаются неожиданные значения кортежа.
Буду признателен за любые идеи и предложения по решению этой проблемы. Спасибо!
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
FastAPI с SQLAlchemy и asyncpg: ошибка «индекс кортежа вне диапазона» в производстве
Anonymous » » в форуме Python - 0 Ответы
- 14 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как я могу из Jitted-функции Numba вызвать другую Jit-функцию Numba с указателем?
Anonymous » » в форуме Python - 0 Ответы
- 34 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как я могу из Jitted-функции Numba вызвать другую Jit-функцию Numba с указателем?
Anonymous » » в форуме Python - 0 Ответы
- 39 Просмотры
-
Последнее сообщение Anonymous
-