더북(TheBook)

5.4 활용 사례 - 사기 범죄 분석하기

이 절에서는 사기 범죄 탐지 사례를 통해 소셜 네트워크 분석(SNA)을 어떻게 활용할 수 있는지 알아보겠습니다. 인간은 서로 관계를 맺고 살아가는 사회적 동물입니다. 자신과 비슷한 사람들과 어울리는 인간의 사회적 경향성을 호모필리(homophily)라고 합니다. 호모필릭 네트워크(homophilic network)는 어떠한 공통적인 특징을 바탕으로 연결된 집단을 의미합니다. 향우회, 동창회, 취미 소모임 등이 호모필릭 네트워크의 대표 사례입니다.

사기 범죄자 수사에서도 호모필릭 네트워크를 활용할 수 있습니다. 범죄자로 확인된 사람들과 밀접한 관계를 맺고 있는 사람은 범죄에 연루되어 있을 가능성이 있다고 판단하는 것입니다. 물론 범죄자의 지인이라고 해서 무작정 수사 선상에 올리는 것은 연좌죄(guilt by association) 논란을 피하기 어렵습니다.

간단한 사례를 통해 SNA를 활용한 범죄 분석 과정을 알아봅시다. 예시로 사용할 그래프는 9개의 버텍스와 8개의 엣지로 구성되어 있습니다. 이 네트워크에서 4개의 버텍스는 범죄자(F)임이 확인됐습니다. 나머지 5명은 범죄 기록이 없으므로 비범죄자(NF)로 분류합니다.

1. 먼저, 필요한 패키지를 불러옵니다.

[in :]

import networkx as nx
import matplotlib.pyplot as plt

2. verticesedges를 임의로 생성합니다.

[in :]

vertices = range(1, 10)
edges = [(7, 2), (2, 3), (7, 4), (4, 5), (7, 3), (7, 5), (1, 6), (1, 7), (2, 8), (2, 9)]

3. 빈 그래프를 생성합니다.

[in :]

G = nx.Graph()

4. 그래프에 버텍스와 엣지를 입력하고 위치를 조정합니다.

[in :]

G.add_nodes_from(vertices)
G.add_edges_from(edges)
pos = nx.spring_layout(G)

5. NF 버텍스를 그립니다.

[in :]

nx.draw_networkx_nodes(
  G,
  pos,
  nodelist=[1, 4, 3, 8, 9],
  with_labels=True,
  node_color='g',
  node_size=1300
)

6. F 버텍스를 그립니다.

[in :]

nx.draw_networkx_nodes(
  G,
  pos,
  nodelist=[2, 5, 6, 7],
  node_color='r',
  node_size=1300
)

7. 엣지와 버텍스 레이블을 표현합니다.

[in :]

nx.draw_networkx_edges(
  G,
  pos,
  edges,
  width=3,
  alpha=0.5,
  edge_color='b'
)

labels = {}
labels[1] = r'1 NF'
lables[2] = r'2 F'
labels[3] = r'3 NF'
labels[4] = r'4 NF'
labels[5] = r'5 F'
labels[6] = r'6 F'
labels[7] = r'7 F'
labels[8] = r'8 NF'
labels[9] = r'9 NF'

nx.draw_networkx_labels(G, pos, labels, font_size=16)

코드를 실행하면 다음과 같은 그래프가 출력됩니다.

▲ 그림 5-12 사기 범죄 분석 예시 - 4명의 범죄자(F)와 5명의 비범죄자(NF)

다음과 같이 그래프에 새로운 인물 q가 추가됐다고 가정해 보겠습니다. 우리는 이 인물에 대한 사전 정보가 없기 때문에 범죄자 여부를 알 수 없습니다. 따라서 이 인물이 다른 사람과 맺고 있는 관계를 활용하여 범죄 연루 가능성을 판단할 것입니다.

▲ 그림 5-13 사기 범죄 분석 예시 - 새로운 인물 q 추가

다음과 같은 두 가지 방법으로 버텍스 q를 분류하겠습니다.

간단한 분석 방법으로 버텍스 간 연결 정보만 사용합니다.

고급 기법인 감시탑 분석 방법으로 기존 버텍스의 중심성 지표나 사기 유형에 대한 추가 정보를 사용합니다.

하나씩 자세히 알아봅시다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.