본문 바로가기

Mathematics/Linear algebra

[산술기호] 내적 - 점곱, 스칼라 곱(영화 추천 논리)

반응형

내적은 덧셈이나 곱셈 같은 연산자다.

 

다음과 같이 두 개의 벡터를 결합하는데 사용된다.

$$\left(\begin{array}{c}3\\ 7\end{array}\right)\cdot\left(\begin{array}{c}9\\ 5\end{array}\right) = 3\times9+7\times5=62$$

 

내적을 사용할 때 응답은 스칼라라고 하는 단일 숫자다.

 

 

예를 들어 코미디, 로맨스, 액션을 선호하는 선호도를 나타내는 벡터가 있다고 하자. 

1-5의 척도로 누군가 코미디을 사랑하고, 로맨스을 싫어하며, 액션은 괜찮다고 하는 응답을 했다면, 아래와 같이 표현할 수 있다.

 

$$\left(\begin{array}{c}5\\1\\3\end{array}\right)$$

 

여기서의 의미는 다음과 같다.

  • 5는 코미디에 대한 사랑을 의미한다.
  • 1은 로맨스에 대한 싫어함을 의미한다.
  • 3은 액션에 대한 무관심을 의미한다.

 

$$영화1=\left(\begin{array}{c}4\\ 5\\1\end{array}\right)\;과\quad 영화2=\left(\begin{array}{c}5\\ 1\\5\end{array}\right)$$

 

이런 벡터가 있다면, 영화1은 로맨틱 코메디고, 영화2는 웃긴 액션영화라고 할 수 있다.

 

고객에게 알맞은 영화를 추천하기 위해 위와 같은 데이터를 활용한 선호도 사이의 내적을 적용한다. 내용이 맞는 영화가 사용자에게 추천되는 것이다.

 

 

각 영화의 추천 점수를 계산해보자.

 

영화1의 경우는 다음과 같이 계산할 수 있다.

 

$$\left(\begin{array}{c}5\\ 1\\3\end{array}\right)\cdot\left(\begin{array}{c}4\\ 5\\1\end{array}\right)$$

 

$$(5\cdot4) \rightarrow사용자는\;코미디\;영화를\;좋아하고\;이\;영화는\;재밌다.$$

$$(1\cdot5) \rightarrow사용자는\;로맨스\;영화를\;싫어하지만\;이\;영화는\;로맨틱하다.$$

$$(3\cdot1) \rightarrow사용자는\;액션\;영화를\;괜찮아하지만\;이\;영화는\;액션이\;많지\;않다.$$

 

$$(5\cdot4)+(1\cdot5)+(3\cdot1)=28$$

 

이렇게 얻을 수 있는 값은 28이다. 하지만 이 28이라는 숫자가 무엇을 의미하는지를 알려면 기준이 있어야 한다.

 

지금까지 정한 기준으로 5점이 최고 점수이기 때문에 모든 점수가 최고일 때 나오는 값은 아래와 같다.

 

$$\left(\begin{array}{c}5\\5\\5\end{array}\right)\cdot\left(\begin{array}{c}5\\5\\5\end{array}\right)=75$$

 

가장 낮은 점수는 아래와 같다.

 

$$\left(\begin{array}{c}1\\1\\1\end{array}\right)\cdot\left(\begin{array}{c}1\\1\\1\end{array}\right)=3$$

 

따라서 최저 3점에서 75점에서 28점이 위치하는 곳을 생각해봐야 한다.

 

 

 

영화1

이제 영화2를 살펴보자.

 

$$\left(\begin{array}{c}5\\1\\3\end{array}\right)\cdot\left(\begin{array}{c}5\\1\\5\end{array}\right)=(5\times5)+(1\times1)+(3\times5)=41$$

 

이렇게 시각화할 수 있다.

 

 

이 사용자에게는 41점이 나온 영화2를 추천하게 되는 방식이다. 이것이 대부분의 영화 예측 엔진이 작동하는 방식이다. 영화엔진은 고객 프로파일을 작성하고 이것을 벡터로 표현한다. 

 

그 다음 제공해야 하는 각 영화에 대해 벡터 표현을 취하고 이것을 고객 프로파일과 결합해 고객별로 추천한다.  하지만 회사의 경우 이것보다는 훨씬 더 복잡하고 큰 규모로 이 작업을 수행한다. 이때 선형대수학이라는 수학분야가 매우 유용하게 작용한다.

반응형

'Mathematics > Linear algebra' 카테고리의 다른 글

행렬의 곱셈  (0) 2022.01.14
그래프  (0) 2022.01.13
[산술기호] 비례  (0) 2022.01.12
[산술기호] 시그마 합계와 평균 구하기  (0) 2022.01.09
벡터  (0) 2022.01.09