Есть класс, реализующий нейронную сеть, унаследованную от nn.Module. Реализована некоторая сетевая структура.
В списке хранятся различные параметры (веса, смещения):
Код: Выделить всё
parameters = [[...], ..., [...]] . Также в другом списке хранятся разные входные данные: входные = [[...], ..., [...]]Мне нужно рассчитать выходные данные сети как для входных данных, так и для параметров, я. е. Мне нужно построить матрицу:
| | параметры[0] | параметры[1] | ... | параметры[n] |
| -------- | ------------- | ------------- | ------------- | ------------- |
| ввод[0] | результат[0][0] | результат[0][1] | ... | результат[0][n] |
| ввод[1] | результат[1][0] | результат[1][1] | ... | результат[1][n] |
| ... | ... | ... | ... | ... |
| вход[м] | результат[м][0] | результат[м][1] | ... | result[m][n] |
Самый очевидный способ — использовать два цикла. И это было бы хорошо для процессора. Но как реализовать это для графического процессора? Каждый результат[j] может рассчитываться параллельно, поэтому я бы использовал пакетный расчет.
Не могли бы вы предложить мне какое-нибудь решение?
Подробнее здесь: https://stackoverflow.com/questions/793 ... lel-in-pyt
Мобильная версия