動機:社群網路與預測分析

使用 R 進行網路化資料的預測分析

Bart Baesens, Ph.D.

Professor of Data Science, KU Leuven and University of Southampton

應用

  • 年齡
  • 性別
  • 詐騙

詐騙網路

  • 流失
    • 客戶流失
    • 公司透過下列方式預測誰最可能流失:
      1. 機器學習技術
      2. 社群網路
使用 R 進行網路化資料的預測分析

總覽

  • 具標籤的社群網路
    • 建立並標記網路
    • 網路學習
  • 相似相吸(Homophily)
    • 衡量關係相依性
    • 異質相吸與二元性
  • 網路特徵化
    • 計算節點特徵
  • 用網路做預測建模
    • 將網路轉為平面資料集
    • 預測客戶流失
使用 R 進行網路化資料的預測分析

使用 R 進行網路化資料的預測分析

協作網路

library(igraph); 
DataScienceNetwork <- data.frame(
  from = c('A', 'A', 'A', 'A', 'B', 'B', 'C', 'C', 'D', 'D', 'D', 'E',
          'F', 'F', 'G', 'G', 'H', 'H', 'I'),
  to = c('B','C','D','E','C','D','D', 'G','E', 'F','G','F','G','I', 
          'I','H','I','J','J'))
g <- graph_from_data_frame(DataScienceNetwork, directed = FALSE)
pos <- cbind(c(2, 1, 1.5, 2.5, 4, 4. 5, 3, 3.5, 5, 6), 
             c(10.5, 9.5, 8, 8.5, 9, 7.5, 6, 4.5, 5.5, 4))
plot.igraph(g, edge.label = NA, edge.color = 'black', layout = pos, 
            vertex.label = V(g)$name, vertex.color = 'white', 
            vertex.label.color = 'black', vertex.size = 25)
使用 R 進行網路化資料的預測分析

協作網路

V(g)$technology <-
  c('R','R','?','R','R',
    'R','P','P','P','P')
V(g)$color <- V(g)$technology
V(g)$color <- gsub('R',"blue3", V(g)$color)
V(g)$color <- gsub('P',"green4", V(g)$color) 
V(g)$color <- gsub('?',"gray", V(g)$color)

使用 R 進行網路化資料的預測分析

流失網路

edgeList
  from    to
1    1   393
2    1  2573
3    1  4430
4  393   926
5  393  1574 

流失

使用 R 進行網路化資料的預測分析

一起來練習吧!

使用 R 進行網路化資料的預測分析

Preparing Video For Download...