안녕하세요.
매일 공부하는 나루입니다. 데이터분석준전문가 자격증을 준비하며 R을 활용해 머신러닝을 배우고 있습니다. 현재까지 공부한 내용은 선형회귀, 로지스틱회귀, KNN, SVM, 가우시안 RBF커널, 의사결정나무(Decision Tree), K-means, Hierarchical Clustering(HC)을 공부했습니다.
R활용 머신러닝(Machine learning) 선형회귀, 상관관계, 로지스틱 회귀분석
R활용 머신러닝(Machine learning)- KNN, SVM, Guassian RBF Kernel
R활용 머신러닝(Machine Learning)_ Decision Tree, K-means, Hierarchical Clustering (HC)
오늘은 연관규칙 분석을 공부할 예정입니다. 선생님 말씀으로는 '연관규칙 분석'은 쇼핑할 때 고객들이 물건을 선택할 때 함께 고르는 물건의 규칙성을 발견하여 연관해서 보여줄 수 있어 마케팅에도 활용도가 높다고 하셨습니다. 분석이 두 가지로 나뉠 수 있는데요.
- 장바구니 분석 : A를 산 사람이 B도 같이 산다
- 서열분석 : A를 사고나서 B를 산다
이 분석은 쇼핑 뿐만 아니라, 게임할 때도 이때쯤 아이템이 필요할 거 같아 현질에 대한 고민을 하게 되는 순간에도 이 시스템이 적용된 거 아닌가 싶기도 하네요. 아무래도 지금까지 배운 분석 방법 중 가장 흥미가 높았던 '연관규칙 분석'에 대해 더 깊이 공부하겠습니다.
시험에 계산하는 문제로 나온다는 지지도, 신뢰도, 향상도부터 정리하겠습니다.
- 지지도(Support) : 전체 거래항목 중 상품 A와 상품 B를 동시에 포함하여 거래하는 비율을 의미합니다. A→B라고 하는 규칙에 거래 중 차지하는 비율을 통해 해당 연관 규칙이 얼마나 의미가 있는 규칙인지를 확인합니다.
- 신뢰도(Confidence) : 상품 A를 포함하는 거래 중 A와 B가 동시에 거래되는 비중으로, 상품 A를 구매했을 때 상품B를 구매할 확률이 어느 정도 되는지를 확인합니다.
- 향상도(Lift) : 상품 A 거래 중 항목 B가 포함된 거래의 비율/전체 상품 거래 중 상품B가 거래된 비율(A가 주어지지 않을 때 B의 확률대비 A가 주어졌을 때 B의 확률 증가 비율)
연관규칙의 측도는 향상도(Lift)로 확인할 수 있습니다. 서로 관련 없는 경우는 Lift는 1이 됩니다. 이건 시험 문제에도 나왔다고 합니다. 밑줄 좍~
연관규칙 학습을 해보겠습니다. 본 과정은 데이터를 세팅하는 과정부터 복습을 합니다.
* Apriori(연역적인) 에이프라이러리 알고리즘 활용
* 컬럼으로 나눠있지 않아, 데이터로 분리하겠다는 뜻으로 아래와 같이 데이터를 불러냄
* 아래 데이터 구조는 학습이 불가능하여 연관분석 할 수 없으므로 해결점을 찾아야 함
* 왜냐하면 컴퓨터는 숫자로 인식하는데 상위 데이터는 문자로 되어있기 때문으로, Sparse Matrix로 만들어서 수치데이터로 변경해야 함
* 등장하는 모든 물품을 컬럼으로 만들고, 구매한 기록은 해당 컬럼에 1이라고 쓰고 구매 안 했으면 0으로 입력
* dataset을 살펴보면 아래와 같은 결과를 볼 수 있음
* 결과 값 요약해서 보기
- density(밀접도) 기준이 1
- 1개 : 1754건, 2개: 1358건
* 이제 가장 많이 담은 개수부터 20개 보여달라고 입력
- 상위 20개 중 물이 가장 인기 많군요... 참고로 이 데이터는 프랑스 자료라고 들었습니다.
* 최소 다음과 같은 규칙을 찾겠다고 apriori 함수 활용하여 컴퓨터에 말하기
- 최소 0.003 이상 지지도가 되는 것
- 최소 0.2의 신뢰도 이상되는 것
* 뽑아낸 규칙에서, Lift 향상도가 큰 것부터 정렬하도록 코드 입력
* 위에서 나온 값(sorted.rules) 기준 상위 10개만 보여달라고 inspect함수 활용
- 즉, 상위 10개의 가장 강력한 규칙들만 보여줌
- 아래 결과 값을 보면, 소비 패턴이 보이고 연관성이 높은 것에 수긍이 가는 신기함을 느낄 수 있음
연관규칙 분석 공부를 했습니다. 다른 것에 비해서 더 재미있었습니다. 아무래도 일상생활과도 연결해서 볼 수 있고 한눈에 결과값을 이해하기 쉬워서 인 것 같습니다. 마지막으로 연관분석 관련하여 나왔던 기출문제도 하나 소개해드릴게요.
R에서 연관성분석을 위해 apriori함수를 활용하여 연관규칙을 생성하였다. 연관규칙을 보기 위해 사용되는 함수로 가장 적절한 것은? [답] inspect ()
마지막에 inspect함수를 활용해서 연관성을 보셨던 거 기억 나시죠? 외워야하고 알아야 할 것이 많은 세계이지만, 데이터 공부를 한다는 것은 제가 매일 사용하는 컴퓨터를 더 이해할 수 있는 것 같아 즐겁습니다.
긴 글 읽어주셔서 감사드립니다.
행복한 하루되세요.
'문과생 DT 정복기 > DT 공부하기' 카테고리의 다른 글
[테크] AI·원격의료로 한국형 디지털 헬스 선도 다짐 김영대 신임 서울대병원장 (0) | 2023.04.26 |
---|---|
R 활용 머신러닝(Machine Learning)_딥러닝(Deep Learning) (0) | 2020.07.13 |
R활용 머신러닝(Machine Learning)_ Decision Tree, K-means, Hierarchical Clustering (HC) (0) | 2020.07.09 |
R활용 머신러닝(Machine learning)- KNN, SVM, Guassian RBF Kernel (0) | 2020.07.07 |
R활용 머신러닝(Machine learning) 선형회귀, 상관관계, 로지스틱 회귀분석 (3) | 2020.06.30 |