[실생활 속의 수학 #4] 왜 내가 팔로잉하는 사람들은 나보다 평균적으로 팔로워 수가 많아보일까요?

in #kr6 years ago (edited)


[1]

팔로워 수에 숨겨진 수학 - Friendship 패러독스

1. SNS를 수학적으로 어떻게 표현할까?

SNS를 수학적으로는 크게 두 가지로 나눌 수 있다.

1-1. 내가 팔로우하는 사람도 자동적으로 나를 팔로우 하는 경우

대표적인 예로 페이스북이 있다. 페이스북에서의 친구 신청은 상대방이 수락하는 경우에만 받아들여지며 이때 자동적으로 그 사람도 나를 친구로 받아들이기 때문에 A라는 사람이 B를 팔로우하면, B도 A를 팔로우 한다. 따라서 굳이 팔로워, 팔로우를 구분할 필요없이 "친구" 관계라고 받아들여도 무방하다. 이는 다음과 같은 무방향성 그래프 모델로 나타낼 수 있다.

SNS 사용자들을 꼭짓점으로 놓고, 만약 두 사람이 서로 친구관계이면 둘을 하나의 변으로 잇는 것이다. 예를 들어서 다음과 같은 그래프에서는


[2]

  • 1번 사람은 2번, 5번과 친구 관계

  • 2번 사람은 1번, 5번과 친구 관계

  • 3번 사람은 2번, 4번과 친구 관계

  • 4번 사람은 3번, 5번, 6번과 친구 관계

  • 5번 사람은 1번, 2번, 4번과 친구 관계

  • 6번 사람은 4번과 친구 관계

이다.

1-2. 팔로우와 팔로워가 구분 되는 경우

대표적인 예로 이곳, STEEMIT (스팀잇)이 있다. 스팀잇에서는 내가 상대방을 팔로우 한다고 해서, 상대방이 자동적으로 나를 팔로우 하지는 않는다. 따라서 이 경우에는 팔로우, 팔로워를 구분해야 하며 이는 다음과 같은 방향성 그래프 모델로 나타낼 수 있다.

SNS를 사용자들을 꼭짓점으로 놓고, 만약 A가 B를 팔로우 하면, A에서 B로 가는 화살표를 그리는 것이다. 만약 B도 A를 팔로우 하면, B에서 A로 가는 화살표를 하나 더 그린다 (또는 덧대어 그려도 상관없다). 예를 들어서 다음과 같은 그래프 에서는


[3]

  • 1번 사람은 2번과 3번을 팔로우

  • 2번 사람은 1번과 3번을 팔로워로 두고 있다 (혹은 다시 말해 1번과 3번은 2번을 팔로우)

  • 3번 사람은 1번과 4번을 팔로워로 두고 있고, 2번과 4번을 팔로우

  • 4번 사람은 3번을 팔로워로 두고 있고, 3번을 팔로우

일단 이번 포스팅에서는 가장 간단하게 1-1의 경우를 분석해 보도록 하겠다.

2. 나의 친구 수는 왜 내 친구들의 평균적인 친구 수보다 적어보일까?

제목이 헷갈린다 싶으면 다음과 같은 예시를 들어보겠다.


[4]

  • 1번 사람의 경우, SNS상의 친구는 3명이다. (3번, 9번, 10번) 그런데 각각의 친구들의 친구 수를 살펴보면 3번의 경우에는 3명 (1, 7, 8), 9번의 경우에는 3명 (1, 4, 10), 10번의 경우에는 4명 (1, 5, 6, 9)로 평균 명의 친구 수로 내 친구 수 보다 크다.

  • 위의 예시가 좀 어거지다 싶으면, 2번 사람을 보자. 2번은 친구가 4번 1명이다 (ㅜㅜ) 그런데 4번의 친구는 2, 6, 8, 9 총 4명으로 4 > 2가 성립한다.

물론 반례도 존재한다. (당연히 모든 사람이 이를 만족할 수 는 없다. 그렇게 되면 모순이 발생한다. 왜일까요...?)

  • 10번의 경우, 친구 수 는 4명이지만, 각각의 친구들의 친구수는 3, 3, 2 ,2 로 평균이 오히려 자신의 친구 수 보다 작다.

따라서 우리는 문제상황을 다음과 같이 수정할 필요가 있다.

평균적으로 SNS 상의 대부분의 사람들은 친구수가 친구들의 평균적인 친구 수보다 적어 보일까?

편의상 문제상황을 만족하는 사람들의 집단을 관심 집단 이라 부르자. (여기서 관심은 부정적 의미가 절대 아님을 밝힙니다. 단순히 우리가 분석하고자 하는 집단이기에 관심이 가는 집단이어서 이렇게 지었습니다 )

3. 수학적인 분석을 위해서 알아야 할 것들

먼저 다음과 같이 약속한다.

  1. SNS 상에는 총 명의 사람들이 있으며, 이들을 편의상 1, 2, ..., 으로 나타낸다.

  2. 만약 가 친구라면 , 그렇지 않다면 을 부여하여, 행렬

를 만든다. 당연히 자기 자신은 자기 자신와 친구를 맺을 수 는 없으므로 () , section 1-1에서 본 대로 친구관계는 대칭적이므로 가 성립한다.

  1. 의 총 친구 수 는 따라서

로 나타낼 수 있다. 이 값을 로 놓자. 그런 다음 행렬

를 정의한다.

4. 계산

이제 문제상황을 수학문제로 변환시켜야한다. 먼저, 문제상황에서

4-1

SNS상 사람들의 평균적인 친구수

로 쉽게 구해진다.

4-2

이제, 친구들의 평균적인 친구수를 구해야 하는데, 얘는 쫌 헷갈린다. 먼저 의 친구들은 를 만족하는 들 이다. 이런 특성을 만족하는 의 총 친구 수 는 정의에 의해 이다. 따라서, 의 친구의 친구 수 는 총

이다. 당연히, 모두에게 적용시켜보면, 모든 친구들의 친구 수의 합은

이다. 이제 이것의 평균을 구하자. 여기서 주의할 것은 이 값을 무엇으로 나눠야 할지 이다. 대부분의 사람들은 그냥 전체 사람 수 으로 나누는데, 이는 당연히 틀린 평균이다. 우리가 원하는 것은 친구들의 친구 수 의 평균이므로, 전체는 사람들의 총 친구 수 가 되어야 한다. 따라서

가 우리가 원하던 값이다. 따라서 문제상황은

를 푸는 것과 같다.


여기서 잠깐, (2)번 식은 너무 복잡해 보인다. 머리가 아파오지만, 분자를 도식화 시켜보자. [5]

...
...
................
...
...
...

우리는 (2)번에서 잘 보면, 가로 방향으로 항들을 더했다. 이번에는 세로 방향으로 더해보자 (이는 항이 유한개 이므로, 더하는 순서를 바꾸어도 상관 없기에 유효하다). 성질을 적극 활용하면

로 놀랍게도 간단한 식으로 바뀐다. (사실 생각해보면...) 따라서 우리가 풀고자 하는 부등식은

로 바뀐다. 어디서 많이 본 부등식인데... 기억을 떠올려보면 코시-슈바르츠 부등식 이 생각날 것이다.

이므로


이 되어 코시 슈바르츠 부등식에 의해 우리의 문제상황에 대한 답은 YES! 이다.

5. SNS 생태계와의 관계

SNS 생태계를 어떻게 정의할 지는 사람마다 다르겠지만, 임의의 두 SNS 이용자를 잇는 친구관계가 반드시 존재하는 생태계를 건전한 생태계로 정의한다면 (즉, 정보단절은 일어나지 않음) 관심 집단의 크기는 사실 SNS 생태계와 큰 관련은 없다. 다음 예시를 보자.

0, 11, 17을 제외한 15명 모두 관심 집단이지만 정보 단절은 일어나지 않을 뿐더러 양방향 소통이 안되는 사람들 또한 존재하지 않는다. 각 파벌 간의 정보교류는 0, 11, 17 간에 이루어지므로 정보 독점이 문제가 되지 않냐고 반문 하는 사람들을 위해 다음 예시를 준비해봤다.

2, 7을 제외한 모든 사람이 관심 집단에 속하지만, 그렇다고 2와 7이 정보를 독점하고 있다고 보기에는 어렵다. (정보 교류가 2와 7을 제외하고도 가능하다). 또한 관심 집단에 속하는 사람이라고 해서 SNS상에서 정보 교류에 소외 됐다고 보기도 어렵다.

12는 관심집단이지만, 12없이는 정보교류가 일어날 수 없다. ㅋㅋ 결국 말하고자 하는 바는 관심 집단의 크기 만으로는 SNS의 생태계, 정보 교류에 관해 단언할 수 없다는 것이다.

5. 그래서 결론은 뭔가요?

  1. 우리가 보인 것은 친구 수의 평균은 친구의 친구 수의 평균 보다 작다 는 것이다. 어디까지나 평균적 인 현상임에 주의해야한다. SNS 관계망의 실제 조직도에 따라 관심 집단의 크기는 굉장히 달라진다.

  2. 위 부등식의 등호가 성립할 필요충분조건은 (코시-슈바르츠 부등식의 등호성립조건 참조)

즉, 모든 사람의 친구 수 가 같을 때에만 성립한다. 만약 조금이라도 다르면, 항상 자신의 친구 수 가 친구들의 친구 수 평균보다 작은 사람이 존재한다.

6. 출처/인용/기타

[1]

[2] https://en.wikipedia.org/wiki/Graph_theory (사진)

[3] 사진출처 (사진)

[4] https://mathematica.stackexchange.com/questions/23725/how-do-i-create-a-graph-with-randomly-directed-edges-starting-from-a-undirected (사진)

[5] 위 Section 4-2에서 식을 간단하게 만들 때 사용한 방법을 double counting이라고 부른다. 굉장히 중요한 수학 테크닉 중 하나이다.

[6] 나머지 그래프는 http://graphonline.ru/en/ 이 사이트를 통해 그렸습니다.

Sort:  

확인해보니 저는 steemit 관심 집단에 속하네요

Congratulations @mathsolver! You have completed the following achievement on Steemit and have been rewarded with new badge(s) :

Award for the number of posts published

Click on the badge to view your Board of Honor.
If you no longer want to receive notifications, reply to this comment with the word STOP

Do not miss the last post from @steemitboard:
SteemitBoard and the Veterans on Steemit - The First Community Badge.

You can upvote this notification to help all Steemit users. Learn why here!

이오스 계정이 없다면 마나마인에서 만든 계정생성툴을 사용해보는건 어떨까요?
https://steemit.com/kr/@virus707/2uepul

Coin Marketplace

STEEM 0.20
TRX 0.13
JST 0.030
BTC 65017.48
ETH 3454.80
USDT 1.00
SBD 2.50