비디오: [2017] 야다 SNS프로모션영상 2024
사람들은 커뮤니티를 형성하는 경향이 있습니다. 아이디어와 정서가 비슷한 사람들의 집단입니다. 이러한 클러스터를 연구함으로써 그룹 전체에 특정 행동을 돌리는 것이 더 쉬워졌습니다 (행동을 개인에게 부여하는 것은 위험하고 신뢰할 수 없음).
클러스터 연구의 배경은 사람들 사이의 연결이 존재하는 경우 종종 공통된 아이디어와 목표를 가지고 있다는 것입니다. 클러스터를 찾으면 그룹 구성원을 검사하여 이러한 아이디어를 결정할 수 있습니다. 예를 들어, 보험 사기 탐지 및 세금 검사에서 사람들의 집단을 찾으려는 것이 일반적입니다. 예기치 못한 사람들은 그러한 상황에서 사람들이 모일 수있는 일반적인 이유가 없기 때문에 사기꾼이나 탈세 집단의 일원이라는 의심을 제기 할 수 있습니다.
우정 그래프 는 사람들이 서로 어떻게 연결되는지 나타낼 수 있습니다. 정점은 개인을 나타내며 가장자리는 가족 관계, 비즈니스 연락처 또는 우정 관계와 같은 연결을 나타냅니다. 일반적으로 우정도 그래프는 상호 관계를 나타 내기 때문에 방향이 바뀌지 않으며 때로는 두 사람 사이의 채권 강도를 나타내는 가중치가 적용됩니다.
휴무일:
세 사람 모두 서로를 알고 있습니다. 모든 사람이 다른 사람을 알고있는이 경우의 가족 상황을 생각해보십시오.- 공개: 한 사람은 다른 두 사람을 알고 있지만 다른 두 사람은 서로 알지 못합니다. 직장에서 개인을 알고있는 사람과 집에서 다른 사람을 생각해보십시오.하지만 직장의 개인은 집에있는 사람에 대해 아무 것도 모릅니다.
- 연결된 쌍: 한 사람은 트라이어드에서 다른 사람을 알고 있지만 제 3자를 모릅니다. 이 상황은 잠재적으로 그룹에 속하기를 원하는 사람 - 새로운 사람을 만나는 것에 대해 서로를 아는 두 사람을 포함합니다.
- 연결되지 않음: 트라이어드는 그룹을 형성하지만 그룹의 아무도 서로를 알지 못합니다. 이 마지막 기사는 다소 이상하게 보일 수 있지만 컨벤션이나 세미나에 대해 생각해보십시오.이 사건의 사람들은 그룹을 형성하지만 서로에 대해 알지 못할 수도 있습니다. 그러나 관심사가 비슷하기 때문에 클러스터링을 사용하여 그룹의 동작을 이해할 수 있습니다. 트라이 어드는 관계에서 자연스럽게 발생하며 많은 인터넷 소셜 네트워크가 참가자들 간의 연결을 가속화하기 위해이 아이디어를 활용합니다. 연결 밀도는 모든 종류의 소셜 네트워크에서 중요합니다. 연결된 네트워크가 정보를 확산시키고 콘텐츠를보다 쉽게 공유 할 수 있기 때문입니다. 예를 들어, 전문적인 소셜 네트워크 인 LinkedIn이 네트워크의 연결 밀도를 높이기로 결정했을 때, 개방형 트라이어드를 찾고 사람들을 초대하여 연결을 종료하려고 시도했습니다. 트라이어드를 닫는 것은 LinkedIn의
- 연결 제안 알고리즘의 기초입니다. Quora의 대답을 읽어 보면 어떻게 작동하는지 자세히 알 수 있습니다.
여기 예제는 Zachary의 Karate Club 샘플 그래프를 사용합니다. 이 그래프는 대형 데이터 세트를로드하는 데 많은 시간을 소비하지 않고도 네트워크가 어떻게 작동 하는지를 알 수있는 작은 그래프입니다. 다행히이 데이터 세트는 networkx 패키지의 일부로 나타납니다. Zachary의 공수 클럽 네트워크는 1970 년에서 1972 년까지 34 명의 가라데 클럽 회원 간의 우정 관계를 나타냅니다. 사회학자인 Wayne W. Zachary는이를 학업 주제로 사용했습니다. 그는 "소그룹에서 갈등과 분열을위한 정보 흐름 모델"이라는 제목의 논문을 썼다. "이 그래프와 그 논문의 흥미로운 사실은 그 해에 가라데 강사 (노드 번호 0)와 클럽 회장 (노드 번호 33) 사이에서 클럽간에 충돌이 일어났습니다. 그래프를 클러스터링하면 발생 직후 클럽을 두 그룹으로 분리하는 것을 거의 완벽하게 예측할 수 있습니다.
이 예제는 또한 그룹을 보여주는 그래프를 그리기 때문에 (쉽게 시각화 할 수 있도록)
matplotlib
패키지를 사용해야합니다. 다음 코드는 데이터 세트의 노드와 모서리를 그래프로 표시하는 방법을 보여줍니다.
import networkx를 nx
import matplotlib로 가져옵니다. pyplot은 plt
% matplotlib 인라인
graph = nx. karate_club_graph ()
pos = nx. spring_layout (그래프)
nx. draw (그래프, pos, with_labels = True)
plt. show ()
화면에 그래픽을 표시하려면 노드를 화면에 배치하는 방법을 결정하는 레이아웃도 제공해야합니다. 이 예제는 Fruchterman-Reingold force-directed 알고리즘 (
nx. spring_layout
호출)을 사용합니다. 그림은 예제의 결과를 보여줍니다. (출력 결과가 약간 씩 다를 수 있습니다.)
친구 간의 네트워크 클러스터를 보여주는 그래프. 그래프의 자동 레이아웃 생성을위한 Fruchterman-Reingold force-directed 알고리즘은 전기적으로 하전 된 입자들 또는 동일한 기호를 지닌 자석들 사이에서 물리학에서 일어나는 일을 모방하여 교차하지 않는 분리 된 노드들과 가장자리들을 이해할 수있는 레이아웃을 생성합니다. 그래프 출력을 살펴보면 일부 노드에는 하나의 연결 만 있고 일부는 두 개이고 두 개 이상은 몇 개가 있다는 것을 알 수 있습니다.앞에서 언급했듯이 가장자리가 삼각형 모양을 이룹니다. 그러나 가장 중요한 고려 사항은이 그림이 소셜 네트워크에서 발생하는 클러스터링을 명확하게 보여줍니다.