np.arange
дает равномерно распределенные числа. В вашем случае разница между последовательными номерами меняется на каждом шаге.
Вы можете сделать что-то вроде:
a = [10**i for i in range(-4, 5)]
>>> [0.0001, 0.001, 0.01, 0.1, 1, 10, 100, 1000, 10000]
И преобразовать в массив numpy, если хотите
np.array(a)