본문 바로가기
Data Science/R

[R] 이상거래 탐지

by AI_Wooah 2022. 3. 1.

https://polar-comet-18d.notion.site/R-5beae23b83234c3fa9f89df32b824afe

 

[R] 이상거래 탐지

모바일화 될수록 전자금융 사기 건수와 피해금액이 증가하고 있다.

polar-comet-18d.notion.site

모바일화 될수록 전자금융 사기 건수와 피해금액이 증가하고 있다.

대형 금융기관들은 이상거래탐지 시스템을 도입해 전자금융 사기 피해를 사전에 예방하고 있다.

  1. 이상거래 탐지 시스템이상거래시스템은 최근 급증하고 있는 신종 사기징후까지 사전에 포착할 수 있는 장점이 있다.
  2. 전자금융거래시 불법이체, 카드거래 부정 등의 이상거래를 실시간으로 탐지하는 빅데이터 기반의 분석 시스템을 사용하고 있다.
  3. 부정사용 의심점수부정사용 의심 점수 계산에 사용되는 정보는 다음과 같다.
    • 신상 정보 : 인구통계학적 정보, 가입일자, 신용등급, 연체여부, 직업 등
    • 거래 정보 : 결제, 대출, 연체 이력 등
    부정사용 의심 점수를 이용해 사기나 이상거래를 막기위해서는 실시간 단위로 점수를 관리하고 대응하는 것이 중요하다.
  4. 로지스틱 회귀분석을 사용한다.
  5. 고객의 신상 정보와 거래 정보를 토대로 계산하는 사기 발생 가능 점수다.
#크레딧 데이터는 네개의 변수를 포함하고 있다
#간단한 탐색을 통해서 데이터를 살펴본다
#fraud 사기 가능성
#bank 주거래 은행이지만 숫자로 있기 때문에 변환해줘야 한다.
#credit_card 신용카드 갯수
#monetary

str(credit_data)
head(credit_data)
summary(credit_data)

credit_data$bank <-as.factor(credit_data$bank)
credit_data$bank <-as.factor(credit_data$bank)

#주거래은행에 따른 평균 거래금액을 출력
aggregate(monetary~bank,data=credit_data,mean)

#로지스틱 회귀분석 수행
model

# 4) 로지스틱 회귀분석 수행
model <- glm(fraud~bank+credit_card+monetary,data=credit_data,family="binomial")
summary(model)

# 5) 로지스틱 회귀분석으로부터 부정사용 의심 점수 계산
score<-fitted(model)*100
head(score)

# 6) cbind 함수를 사용해 기존 데이터에 부정사용 의심 점수를 결합
result<-cbind(credit_data,score)
result

R에서 벡터를 다루는 방법 서로 다른 데이터를 합치는 방법 로지스틱 회귀분석을 이용해서 부정사용 의심 점수

시각화 결과를 통해 주거래은행이 부정사용 의심에 주 요인이라는 것 확인

# 부정고객 점수 시각화

# 패키지 불러오기
library(ggplot2)

# 주거래은행에 따른 부정 사용의심점수 시각화
ggplot(result,aes(x=score,fill=bank))+
  geom_histogram(binwidth=0.6,alpha=0.5,position="identity")+
  ggtitle("주거래은행에 따른 고객의심 부정사용 의심 점수")+
  theme_bw()
반응형

'Data Science > R' 카테고리의 다른 글

[R] 텍스트 데이터를 통해 의미를 도출  (0) 2022.03.01
[R] 알짜 고객 분류  (0) 2022.03.01
[R] 데이터 형변환 및 합  (0) 2022.03.01
[R] 상품 추천  (0) 2022.03.01
[R] 연관성 분석을 위한 데이터 전처리  (0) 2022.03.01

댓글