minhvtt commited on
Commit
242ec0d
·
verified ·
1 Parent(s): 34b2632

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +146 -133
README.md CHANGED
@@ -1,133 +1,146 @@
1
- # Audience Segmentation AI System
2
-
3
- Hệ thống phân khúc khách hàng và phân tích cảm xúc sử dụng AI cho nền tảng quản lý sự kiện.
4
-
5
- ## Tính năng
6
-
7
- ### 1. Phân khúc khách hàng (Audience Segmentation)
8
- - **Phân cụm tự động** dựa trên hành vi mua vé (RFM Analysis)
9
- - **Phân loại theo sở thích** về danh mục sự kiện
10
- - **Đặt tên tự động** cho từng phân khúc bằng tiếng Việt
11
- - **Tạo nội dung email marketing** tự động cho từng nhóm khách hàng
12
-
13
- ### 2. Phân tích cảm xúc (Sentiment Analysis)
14
- - **Phân loại cảm xúc** của bình luận (Tích cực/Tiêu cực/Trung tính)
15
- - **Sử dụng PhoBERT** - mô hình NLP chuyên biệt cho tiếng Việt
16
- - **Trích xuất từ khóa** tự động từ feedback
17
-
18
- ### 3. Tạo Insight tự động (Generative AI)
19
- - **Top 5 vấn đề** cần cải thiện
20
- - **Gợi ý cải thiện** cho từng vấn đề
21
- - **Dự đoán NPS Score** dựa trên tone của comments
22
- - **Sử dụng Vistral-7B-Chat** - LLM tiên tiến cho tiếng Việt
23
-
24
- ## Cấu trúc thư mục
25
-
26
- ```
27
- AudienceSegmentation/
28
- ├── models/ # MongoDB data models
29
- │ ├── segmentation_models.py # Audience segment models
30
- │ └── sentiment_models.py # Sentiment analysis models
31
- ├── services/ # Business logic
32
- │ ├── data_aggregation.py # MongoDB aggregation pipelines
33
- │ ├── segmentation_service.py # K-Means clustering
34
- │ ├── sentiment_service.py # PhoBERT sentiment analysis
35
- │ └── genai_service.py # Vistral-7B content generation
36
- ├── config.py # Configuration
37
- ├── database.py # MongoDB connection manager
38
- ├── main.py # Main orchestration script
39
- ├── requirements.txt # Python dependencies
40
- └── .env.example # Environment variables template
41
- ```
42
-
43
- ## Cài đặt
44
-
45
- ### 1. Clone repository
46
- ```bash
47
- cd AudienceSegmentation
48
- ```
49
-
50
- ### 2. Tạo môi trường
51
- ```bash
52
- python -m venv venv
53
- source venv/bin/activate # Linux/Mac
54
- # hoặc
55
- venv\Scripts\activate # Windows
56
- ```
57
-
58
- ### 3. Cài đặt dependencies
59
- ```bash
60
- pip install -r requirements.txt
61
- ```
62
-
63
- ### 4. Download Vistral-7B-Chat
64
- ```bash
65
- # Tải hình GGUF từ Hugging Face (CPU nên tải)
66
- mkdir -p models/vistral-7b-chat
67
- # Download từ: https://huggingface.co/Vistral/Vistral-7B-Chat-GGUF
68
- ```
69
-
70
- ### 5. Cấu hình môi trường
71
- ```bash
72
- cp .env.example .env
73
- # Chỉnh sửa .env với thông tin MongoDB của bạn
74
- ```
75
-
76
- ## Sử dụng
77
-
78
- ### Chạy toàn bộ pipeline
79
- ```bash
80
- python main.py --task all
81
- ```
82
-
83
- ### Chỉ chạy phân khúc khách hàng
84
- ```bash
85
- python main.py --task segmentation
86
- ```
87
-
88
- ### Chỉ chạy phân tích cảm xúc
89
- ```bash
90
- python main.py --task sentiment
91
- ```
92
-
93
- ### Chỉ tạo nội dung email
94
- ```bash
95
- python main.py --task email
96
- ```
97
-
98
- ### Tạo insights cho sự kiện cụ thể
99
- ```bash
100
- python main.py --task insights --event-code <event_id>
101
- ```
102
-
103
- ## Kiến trúc kỹ thuật
104
-
105
- ### MongoDB Aggregation Framework
106
- Hệ thống tận dụng MongoDB Aggregation để:
107
- - **Tính toán RFM** (Recency, Frequency, Monetary) trực tiếp trên database
108
- - **Đếm danh mục sự kiện** mà user quan tâm
109
- - **Lọc dữ liệu chưa xử lý** để tránh duplicate
110
- - **Giảm thiểu network transfer** - chỉ truyền kết quả cuối cùng
111
-
112
- ### AI Models
113
-
114
- #### 1. Segmentation: scikit-learn K-Means
115
- - **Input**: Feature vector [R, F, M, Category1, Category2, ...]
116
- - **Output**: Cluster labels + Confidence scores
117
- - **Số cụm**: 5 (có thể cấu hình)
118
-
119
- #### 2. Sentiment: wonrax/phobert-base-vietnamese-sentiment
120
- - **Model**: PhoBERT fine-tuned cho Vietnamese
121
- - **Output**: Positive/Negative/Neutral + Confidence
122
- - **Batch size**: 32
123
-
124
-
125
- ## Collections MongoDB
126
-
127
-
128
- ### Output Collections (New)
129
- - `AudienceSegment` - Các phân khúc khách hàng
130
- - `UserSegmentAssignment` - Gán user vào segment
131
- - `SentimentAnalysisResult` - Kết quả phân tích cảm xúc
132
- - `EventInsightReport` - Báo cáo insight cho sự kiện
133
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Aus F
3
+ emoji: 👁
4
+ colorFrom: indigo
5
+ colorTo: pink
6
+ sdk: gradio
7
+ sdk_version: 6.0.0
8
+ app_file: app.py
9
+ pinned: false
10
+ ---
11
+
12
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
13
+
14
+ # Audience Segmentation AI System
15
+
16
+ Hệ thống phân khúc khách hàng phân tích cảm xúc sử dụng AI cho nền tảng quản lý sự kiện.
17
+
18
+ ## Tính năng
19
+
20
+ ### 1. Phân khúc khách hàng (Audience Segmentation)
21
+ - **Phân cụm tự động** dựa trên hành vi mua vé (RFM Analysis)
22
+ - **Phân loại theo sở thích** về danh mục sự kiện
23
+ - **Đặt tên tự động** cho từng phân khúc bằng tiếng Việt
24
+ - **Tạo nội dung email marketing** tự động cho từng nhóm khách hàng
25
+
26
+ ### 2. Phân tích cảm xúc (Sentiment Analysis)
27
+ - **Phân loại cảm xúc** của bình luận (Tích cực/Tiêu cực/Trung tính)
28
+ - **Sử dụng PhoBERT** - mô hình NLP chuyên biệt cho tiếng Việt
29
+ - **Trích xuất từ khóa** tự động từ feedback
30
+
31
+ ### 3. Tạo Insight tự động (Generative AI)
32
+ - **Top 5 vấn đề** cần cải thiện
33
+ - **Gợi ý cải thiện** cho từng vấn đề
34
+ - **Dự đoán NPS Score** dựa trên tone của comments
35
+ - **Sử dụng Vistral-7B-Chat** - LLM tiên tiến cho tiếng Việt
36
+
37
+ ## Cấu trúc thư mục
38
+
39
+ ```
40
+ AudienceSegmentation/
41
+ ├── models/ # MongoDB data models
42
+ │ ├── segmentation_models.py # Audience segment models
43
+ │ └── sentiment_models.py # Sentiment analysis models
44
+ ├── services/ # Business logic
45
+ │ ├── data_aggregation.py # MongoDB aggregation pipelines
46
+ │ ├── segmentation_service.py # K-Means clustering
47
+ │ ├── sentiment_service.py # PhoBERT sentiment analysis
48
+ │ └── genai_service.py # Vistral-7B content generation
49
+ ├── config.py # Configuration
50
+ ├── database.py # MongoDB connection manager
51
+ ├── main.py # Main orchestration script
52
+ ├── requirements.txt # Python dependencies
53
+ └── .env.example # Environment variables template
54
+ ```
55
+
56
+ ## Cài đặt
57
+
58
+ ### 1. Clone repository
59
+ ```bash
60
+ cd AudienceSegmentation
61
+ ```
62
+
63
+ ### 2. Tạo môi trường
64
+ ```bash
65
+ python -m venv venv
66
+ source venv/bin/activate # Linux/Mac
67
+ # hoặc
68
+ venv\Scripts\activate # Windows
69
+ ```
70
+
71
+ ### 3. Cài đặt dependencies
72
+ ```bash
73
+ pip install -r requirements.txt
74
+ ```
75
+
76
+ ### 4. Download Vistral-7B-Chat
77
+ ```bash
78
+ # Tải hình GGUF từ Hugging Face (CPU nên tải)
79
+ mkdir -p models/vistral-7b-chat
80
+ # Download từ: https://huggingface.co/Vistral/Vistral-7B-Chat-GGUF
81
+ ```
82
+
83
+ ### 5. Cấu hình môi trường
84
+ ```bash
85
+ cp .env.example .env
86
+ # Chỉnh sửa .env với thông tin MongoDB của bạn
87
+ ```
88
+
89
+ ## Sử dụng
90
+
91
+ ### Chạy toàn bộ pipeline
92
+ ```bash
93
+ python main.py --task all
94
+ ```
95
+
96
+ ### Chỉ chạy phân khúc khách hàng
97
+ ```bash
98
+ python main.py --task segmentation
99
+ ```
100
+
101
+ ### Chỉ chạy phân tích cảm xúc
102
+ ```bash
103
+ python main.py --task sentiment
104
+ ```
105
+
106
+ ### Chỉ tạo nội dung email
107
+ ```bash
108
+ python main.py --task email
109
+ ```
110
+
111
+ ### Tạo insights cho sự kiện cụ thể
112
+ ```bash
113
+ python main.py --task insights --event-code <event_id>
114
+ ```
115
+
116
+ ## Kiến trúc kỹ thuật
117
+
118
+ ### MongoDB Aggregation Framework
119
+ Hệ thống tận dụng MongoDB Aggregation để:
120
+ - **Tính toán RFM** (Recency, Frequency, Monetary) trực tiếp trên database
121
+ - **Đếm danh mục sự kiện** user quan tâm
122
+ - **Lọc dữ liệu chưa xử lý** để tránh duplicate
123
+ - **Giảm thiểu network transfer** - chỉ truyền kết quả cuối cùng
124
+
125
+ ### AI Models
126
+
127
+ #### 1. Segmentation: scikit-learn K-Means
128
+ - **Input**: Feature vector [R, F, M, Category1, Category2, ...]
129
+ - **Output**: Cluster labels + Confidence scores
130
+ - **Số cụm**: 5 (có thể cấu hình)
131
+
132
+ #### 2. Sentiment: wonrax/phobert-base-vietnamese-sentiment
133
+ - **Model**: PhoBERT fine-tuned cho Vietnamese
134
+ - **Output**: Positive/Negative/Neutral + Confidence
135
+ - **Batch size**: 32
136
+
137
+
138
+ ## Collections MongoDB
139
+
140
+
141
+ ### Output Collections (New)
142
+ - `AudienceSegment` - Các phân khúc khách hàng
143
+ - `UserSegmentAssignment` - Gán user vào segment
144
+ - `SentimentAnalysisResult` - Kết quả phân tích cảm xúc
145
+ - `EventInsightReport` - Báo cáo insight cho sự kiện
146
+