행렬 연산은 차원이 커지면 커질수록 사람이 실수할 확률도 높고, 어렵고, 복잡하고, 오래걸리고, 반복적이다. 이러한 연산을 컴퓨터가 하면 대부분의 리스크가 사라지지만 한가지가 남는다.
바로 오래 걸린다는 것이다.
구체적으로 예시를 들어보자.
10000개의 숫자가 들어 있는 리스트가 있다고 존재한다고 생각해보자.
이것을 elementwise하게 제곱한다고 해보자.
이러한 연산을 파이썬으로 짠 것과 넘파이로 짠 것을 비교해 보았다.
콘솔창에 있는 0.0114 가 파이썬 내장함수로 짠 것이고, 아래 0.0015가 넘파이로 행렬연산을 진행한 것이다.
약 10배정도의 차이가 난다고 볼 수 있다.
만약 10000개가 아닌 1억개였다면 둘의 차이는 더욱 벌어졌을 것이다.
따라서 우리는 고차원의 행렬 연산을 위해서 넘파이를 반드시 써야한다.
그것은 넘파이는 벡터 연산을 진행하고 파이썬은 스칼라 하나하나 연산을 진행하기 때문이다.
는 다음챕터에서 구체적으로 다루도록 하겠음!