Tin về Big Data
THUẬT TOÁN CÂY QUYẾT ĐỊNH (P.5) REGRESSION TREE VÀ DECISION RULES
Như vậy chúng ta đã cùng nhau đi qua 4 phần của series bài viết về thuật toán Decision trees hay còn gọi là thuật toán cây quyết định. Chúng ta đã làm quen với định nghĩa tổng quát, các dạng cây quyết định bao gồm phân 2 nhánh – CART, và nhiều nhánh C4.5 sử dụng các công thức Goodness of Split, Gini Index, Entropy kết hợp với Information Gain, hay Gain Ratio để xây dựng mô hình áp dụng cho biến mục tiêu là biến định tính, và chúng ta cũng tiếp cận qua một số cách thức để tăng độ hiệu quả của mô hình, tránh trường hợp Overfitting hay Underfitting như Stopping rule và Pruning method, và nhìn lại những ưu điểm, khuyết điểm một cách tổng thể về Decision Trees.
Trong bài viết lần này, và cũng là phần cuối của thuật toán cây quyết định, chúng ta còn 2 vấn đề cần xem xét đó chính là cách thức áp dụng mô hình Regression trees cho biến mục tiêu là dữ liệu định lượng liên tục – numeric (real numbers – số thực) hay continuous variable, và Decision rules – nguyên tắc diễn giải thuật toán cây quyết định.
Các kiến thức ở những bài viết trước chúng tôi sẽ không nhắc lại, và lưu ý thêm nếu các bạn chưa biết gì về phương pháp Classification, và Decision trees thì sẽ khó có thể tiếp thu được nội dung trong bài viết này. Những bạn nào chưa xem qua các bài viết trước của các bạn có thể tham khảo lại qua link dưới đây:
Regression Trees
Trước khi vào nội dung chính, chúng ta cùng đi qua cách thức phân nhánh cây quyết định cho từng loại biến khác nhau.
(Ví dụ trong phần này sau được tham khảo từ giáo trình Introduction to Data mining 2nd Edition, tác giả Tan, Steinbach, Karpatne, Kumar)
Đối với biến định tính cụ thể là biến định danh, ví dụ chúng ta sử dụng biến tình trạng hôn nhân bao gồm các giá trị: “Độc thân”, “Đã kết hôn”, “Đã ly hôn”.
- Dạng phân 2 nhánh:
- Dạng phân nhiều nhánh:
Đối với biến định tính cụ thể là biến thứ tự thì chúng ta cũng phân nhánh tương tự như biến định danh tuy nhiên cần giữ thứ tự giá trị từ bé đến lớn trong mỗi node.
- Dạng phân nhiều nhánh:
- Dạng phân 2 nhánh
Các bạn có thể thấy ở các node tập hợp các đối tượng dữ liệu có giá trị có thể sắp xếp theo thứ tự ví dụ thấp đến trung bình, cao đến rất cao. Còn trường hợp dưới đây thì không nên thực hiện:
Đối với biến định lượng cụ thể là biến định lượng liên tục.
- Dạng phân 2 nhánh
- Dạng phân nhiều nhánh
Các bạn quan sát, đối với biến dữ liệu là dạng biến định lượng chúng ta có thể phân tổ, một phương pháp trong thống kê trong việc biến đổi biến định lượng thành biến định tính để tóm tắt số liệu, hoặc nếu không sử dụng phương pháp thống kê, như phân 2 nhánh các bạn có thể linh hoạt phân dữ liệu thành 2 phần, đặt một giá trị làm mốc ví dụ ở trên các bạn sẽ có 2 nhánh với 1 nhánh thu nhập trên 10T và nhánh còn lại là dưới 10T. Cụ thể chúng ta có thể xử lý như sau:
- Phân nhóm cho dữ liệu định lượng chuyển đổi thành biến định tính hay biến thứ tự
+ Sắp xếp các giá trị theo thứ tự từ bé đến lớn
+ Phân nhóm theo khoảng cách đều tức chênh lệch giữa giá trị bé nhất và lớn nhất của nhóm này so với các nhóm khác là như nhau, giống ví dụ trên. Cách khác có thể kể đến như phân nhóm theo điều kiện tần số xuất hiện các đối tượng dữ liệu tại mỗi nhóm là như nhau ví dụ biến thu nhập: (5T – 8T) có 5 khách hàng, (8T – 15T) có 5 khách hàng, tương tự cho (15-20T) và trên 20T (với T là triệu đồng).
+ Nói về thời điểm phân nhóm trong khi xây dựng mô hình thì chúng ta có thể có 2 cách: phân nhóm 1 lần duy nhất (Static) ngay lúc trước khi xây dựng mô hình tức trước khi áp dụng các công thức để chọn root node (các bạn có thể xem lại các ví dụ trong những bài viết trước, để ý các biến định lượng), cách khác chính là tại mỗi lần phân nhánh, chúng ta phân nhóm (Dynamic), quá trình có thể lặp đi lặp lại và kết quả có thể khác so với những lần trước.
- Phân thành 2 khoảng, chọn 1 giá trị v bất kỳ, với A là giá trị bất kỳ của 1 đối tượng dữ liệu chúng ta sẽ có 2 nhóm (A < v) và (A ≥ v), trường hợp này áp dụng mô hình cây quyết định phân 2 nhánh, và để chọn ra giá trị v tối ưu nhất chúng ta phải xem xét đến các khả năng khác nhau, nhiều giá trị khác nhau, tiến hành phân tích ví dụ như áp dụng công thức Gini index, hay Entropy. Chính vì tính phức tạp, và cồng kềnh, phương pháp này tốn nhiều thời gian và chi phí tính toán nếu nó thực sự được triển khai trong thực tế.
Khác với biến định tính, mọi giá trị của biến định lượng đều có thể được chọn làm biến phân nhánh trong cây quyết định nên để tìm ra mô hình nào là tốt nhất để sử dụng phân loại cho các đối tượng dữ liệu là vấn đề khó khăn hơn nhiều, do đó thông thường chúng ta sẽ cố gắng chuyển đổi biến định lượng thành định tính, và vô tính giới hạn khả năng, và hiệu suất của mô hình. Đây chính là khuyết điểm của Decision trees.
Đề cập một chút về cái tên Regression Trees, là thuật ngữ chúng ta nói đến khi áp dụng mô hình cây quyết định cho biến định lượng. Nhớ lại bài viết phần 1, có trình bày đến các bạn một tên gọi khác cho Decision Trees và phổ biến hơn trong một số giáo trình Data mining quốc tế đó chính là Classification & Regression Trees (tránh nhầm lẫn với CART, đây là tên gọi chung). Cái tên này xuất phát từ ứng dụng của chính các thuật toán cây quyết định. Ứng dụng thứ 1: Classification tree, chúng ta đã biết là phân loại đối tượng vào các lớp, các nhóm dựa trên biến mục tiêu đã cho trược từ đó. Ứng dụng thứ 2: Regression tree, dự báo giá trị có thể có của biến mục tiêu là biến định lượng. Ứng dụng thứ 2 của cây quyết định gần giống như phương pháp phân tích hồi quy, Regression analysis, bao gồm phổ biến như Linear Regression, Logistic Regression, Multi-linear Regression, v.v, phân tích mối quan hệ, mức độ liên hệ, tính bền vững trong mối quan hệ tuyến tính giữa các biến đầu vào và biến mục tiêu (dựa vào dữ liệu lịch sử), lấy đó làm cơ sở để dự báo giá trị của biến mục tiêu cho đối tượng dữ liệu.
Đối với Classification thì chúng ta đơn giản phân loại đối tượng thông qua các công thức phân nhánh không quá phức tạp mà không cần quan tâm nhiều đến mối quan hệ giữa các biến với biến mục tiêu. Tuy nhiên ngược lại với Regression chúng ta không biết chắc chắn giá trị nào của biến mục tiêu mà đối tượng dữ liệu có thể nhận, và phải quan tâm đến mối quan hệ giữa toàn bộ các biến, vì nó sẽ ảnh hưởng đến giá trị sau cùng. Ở phân tích hồi quy, thì chúng ta có thể thấy rõ vấn đề này nhờ vào phương trình hồi quy tổng quát, và tính toán đưa ra kết quả sau cùng. Mặc dù không thể hiện rõ mức độ quan hệ hay liên quan giữa các biến như thế nào, nhưng thuật toán cây quyết định phần nào vẫn giúp chúng ta thấy được biến nào có thể tác động lên biến mục tiêu.
Tiếp theo chúng ta cùng đi qua vào ví dụ cụ thể. Ví dụ đầu tiên (được tham khảo từ giáo trình Introduction to Data mining 2nd Edition, tác giả Tan, Steinbach, Karpatne, Kumar) là chúng ta đã xác định được node phân nhánh là một biến định lượng, thu nhập cá nhân hàng năm (USD), tiếp theo chúng ta cần phân 2 nhánh cho node này cụ thể để xây dựng cây quyết định dạng Binary splits, tìm kiếm các giá trị v, và xét xem có bao nhiêu khách hàng có thu nhập ≤ v có khả năng rủi ro tín dụng, và không có rủi ro tín dụng, tương tự xét cho khách hàng có thu nhập > v
Giả sử chúng ta có số liệu về thu nhập hàng năm của 10 khách hàng (tính theo 1000$) như trên, sắp xếp số liệu theo thứ tự từ bé đến lớn, giá trị v chúng ta lấy sẽ là trị số giữa giữa 2 giá trị thu nhập liền kề, tức giữa 60 và 70 giá trị v là 65, giữa 75 và 70 là 72.5, chúng ta có thể làm tròn lên hoặc giữ nguyên giá trị 72. Tiếp theo tại mỗi giá trị chúng ta sẽ kiểm tra có báo nhiêu khách hàng có thu nhập cao hơn giá trị này, và thấp hơn giá trị này, có bao nhiêu khách hàng sẽ có rủi ro tín dụng, và không có rủi ro tín dụng. Ví dụ tại giá trị v = 55, có 10 khách hàng đều có thu nhập trên 55.000$, trong 10 khách hàng này có 3 khách hàng có rủi ro tín dụng, 7 khách hàng không có rủi ro tín dụng. Lưu ý với các bạn nào chưa biết thì dữ liệu áp dụng cho mô hình cây quyết định là dữ liệu lịch sử, như ví dụ này là dữ liệu về các khách hàng đã được đánh giá rủi ro tín dụng, những đặc điểm của các khách hàng này thông qua cây quyết định sẽ được trực quan và sẽ là cơ sở để chúng ta đánh giá cho khách hàng mới. Quay lại với các số liệu trên, tại giá trị v = 65, chúng ta có 1 khách hàng có thu nhập thấp hơn 65.000 $ không có rủi ro tín dụng, và 9 khách hàng có thu nhập hơn 65.000 $ trong đó có 6 khách hàng không có rủi ro tín dụng và 3 khách hàng có rủi ro tín dụng. Như vậy, các bạn tiếp tục xét cho đến giá trị v = 230.
Tiếp theo chúng ta sẽ sử dụng công thức Gini index để tính Impurity, mức độ đồng nhất của node phân nhánh, nhắc lại công thức các bài viết trước:
Gini (x > 55) = 1 – (3/10)2 – (7/10)2 = 0.42
Gini (x ≤ 55) = 0
GiniSplit (55) = 0*0 + 1*0.42 = 0.42
Gini (x > 60) = 1 – (3/9)2 – (6/9)2 = 0.444
Gini (x ≤ 60) = 1 – (1/1)2 = 0
GiniSplit (60) = 0*(1/10) + (9/10)*0.444 = 0.4
Các bạn tính tương tự cho đến node sau cùng là 230, và chọn là giá trị v nào sẽ đem lại giá trị GiniSplit bé nhất. Quan sát trên bảng số liệu tính sẵn, chúng ta thấy giá trị v = 97 có GiniSplit bé nhất nên có thể được chọn để phân nhánh. Đây là phương pháp đơn giản và dễ hiểu. Một cách tiếp cận khác có thể giúp quá trình tính toán diễn ra nhanh hơn. Như các bạn thấy trên bảng số liệu thì các khách hàng có thu nhập từ 60.000 $ đến 75.000 $ sẽ không có rủi ro tín dụng, mà chúng ta phân loại cho khách hàng mới chúng ta phải quan tâm đến cả trường hợp có rủi ro tín dụng nên tối ưu nhất, và tốt hơn thì chúng ta nên chọn v mà v là trung bình giữa 2 giá trị thu nhập không chứa cùng giá trị biến mục tiêu. Ví dụ v = 72 được tính từ 75 và 70 mà cả 2 giá trị này đều không có rủi ro tín dụng, v = 80 được tính từ 75, và 80, một có rủi ro, một không rủi ro.
Lúc này v = 80 được ưu tiên để xét, như vậy từ 11 giá trị v chúng ta sẽ ưu tiên xét có 2 giá trị là v = 80 và v = 97, so sánh GiniSplit để chọn tiếp v = 97, quá trình diễn ra nhanh hơn.
Ví dụ ở trên là chúng ta đang xét đến trường hợp node này là Internal node có thể áp dụng biến mục tiêu là biến định tính vậy nếu biến mục tiêu là biến định lượng thì nên xử lý như thế nào? Có nên chuyển đổi sang dạng định tính rồi làm như bình thường hay không? Có cách tiếp cận khác trong việc tính toán đó chính là độ lệch chuẩn (Standard Deviation) và giá trị giảm thiểu độ lệch chuẩn mỗi node phân nhánh (Standard Deviation Reduction – SDR). Việc phân nhánh trong lúc xây dựng mô hình cây quyết định đó chính là việc phân chia tập dữ liệu thành các tập con trên cơ sở chúng sẽ đồng nhất về giá trị sau cùng của biến mục tiêu. Nếu tất cả các đối tượng dữ liệu trong node đồng nhất về giá trị của biến mục tiêu, thì độ lệch chuẩn sẽ bằng 0. Nhắc lại một số kiến thức về độ lệch chuẩn, trước tiên là phương sai.
Phương sai là trung bình cộng của bình phương các độ lệch giữa các giá trị của từng quan sát và số trung bình cộng (Mean) của dãy số. Độ lệch chuẩn chính là căn bậc 2 của phương sai. Phương sai lớn phản ánh khuynh hướng phân tán nhiều, và độ biến thiên cao của dữ liệu, độ lệch chuẩn đại diện cho một giá trị trung bình, là chênh lệch giữa giá trị của mỗi quan sát so với trung bình cộng của dãy số, do đó cũng thể hiện được độ biến thiên, độ lệch chuẩn càng cao thì dãy số phân tán nhiều và ngược lại. Do đó nếu trong một node, các đối tượng dữ liệu có giá trị định lượng của biến mục tiêu quá chênh lệch hay khác biệt, thi SD sẽ rất lớn, cách phân nhánh này có thể không hiểu quả, và ngược lại. Với biến mục tiêu là biến định tính, chúng ta có trước giá trị của biến mục tiêu và có thể xem xét các biến khác tác động như thế nào đến biến mục tiêu để tìm ra quy luật ra quyết định, xây dựng mô hình phân loại. Với biến mục tiêu là biến định lượng chúng ta không thể có ngay giá trị của biến mục tiêu, mà phải đi tìm mối liên hệ giữa các biến khác với biến mục tiêu để xác định giá trị biến mục tiêu có thể là giá trị chung nhất của các đối tượng dữ liệu có cùng một số đặc điểm nhất định. Giá trị của biến mục tiêu sau cùng tại các leaf node sẽ là giá trị trung bình của các đối tượng dữ liệu bên trong node.
SDR sẽ bằng độ lệch chuẩn của các giá trị biến mục tiêu xét trên toàn bộ quan sát trừ cho SD tổng quát của mỗi node. SDR càng lớn thì cách phân nhánh càng tối ưu.
Phương pháp đánh giá mô hình Regression Trees đó chính là sử dụng công thức RMSE (Root Mean Square Error), công thức cốt lõi trong việc xác định tính hiệu quả của các phương trình Regression, phương trình hồi quy và cả mô hình Time Series trong thống kê.
RMSE chính là tính toán mức độ chênh lệch giữa giá trị dự báo và giá trị quan sát thực tế, RMSE càng nhỏ thì mô hình càng hiệu quả.
Các bạn lưu ý ở một số tài liệu họ sẽ không dùng SD mà sử dụng các công thức khác như Sum of Squares (SS), Sum of Square Errors (SSE), hay Sum of Square Deviation (SSD), về nguyên lý thì nó gần giống nhau.
Chúng ta sẽ thử áp dụng công thức độ lệch chuẩn để chọn cách phân nhánh cho cây quyết định.
Giả sử chúng ta có dữ liệu về 10 sinh viên, với biến mục tiêu là “Điểm trung bình tích lũy”, chúng ta sẽ xây dựng mô hình Regression Trees để tìm hiểu xem các biến đầu vào sẽ tác động như thế nào đến mục tiêu sau cùng. sẽ ví dụ thử xác định cách phân nhánh đầu tiên, các lần phân nhánh tiếp theo các bạn có thể tự xử lý.
SD của biến mục tiêu xét cho cả tập dữ liệu = 0.369 (các bạn áp dụng công thức phía trên)
Mức độ đi làm thêm = ít, có 3 sinh viên, điểm TBTL lần lượt là 8.5, 8.2, 7.5. SD (ít) = 0.42, tương tự xét cho mức độ đi làm thêm = trung bình và nhiều, SD (TB) = 0.357, SD (Nhiều) = 0.216
SD (mức độ đi làm thêm) có trọng số = (3/10)*0.42 + (4/10)*0.357 + (3/10)* 0.216 = 0.333
SDR (mức độ đi làm thêm) = 0.369 – 0.333 = 0.036
Các bạn tự tính tiếp cho các biến còn lại thì sẽ được:
SDR (Thành tích học tập) = 0.369 – 0.242 = 0.126
SDR (Giới tính) = 0.369 – 0.309 = 0.06
SDR (Tham gia HĐNCKH) = 0.369 – 0.26 = 0.1
Như vậy chúng ta sẽ chọn biến Thành tích học tập để phân nhánh đầu tiên. Vấn đề đặt ra là khác với cây quyết định áp dụng cho biến mục tiêu là biến định tính, chúng ta sẽ không phân nhánh nếu node đó là pure node, hay terminal node, tức các đối tượng dữ liệu có chung giá trị của biến mục tiêu. Nhưng ở biến định lượng chúng ta không thể xác định như vậy mà thay vào đó tự phải đặt ra một số yêu cầu như nếu tổng số đối tượng của 1 node không vượt quá ngưỡng giá trị n (tùy theo kinh nghiệm, kiến thức của người phân tích) nào đó thì chúng ta không tiếp tục phân nhánh cho node này, hoặc áp dụng công thức hệ số biến thiên:
Coefficient of Variation (CV) = (SD/trung bình x)*100%
Hệ số biến thiên CV so sánh mức độ phân tán giữa các tập dữ liệu, mà mức độ phân tán là sự chênh lệch của các giá trị trong tập dữ liệu so với giá trị trung bình của chính tập dữ liệu ấy. Nếu CV càng lớn tức biến thiên càng nhiều, nghĩa là các đối tượng dữ liệu trong node không đồng nhất, cần phải xét tiếp. Nếu CV của node này lớn hơn node kia, thì node này không có sự đồng nhất giữa các đối tượng dữ liệu, cần phân nhánh tiếp.
Quay trở lại với ví dụ, như vậy Thành tích học tập sẽ là root node và phân ra 2 nhánh, 1 bên là khá và 1 bên là giỏi, vậy tiếp theo chúng ta sẽ lấy node “Thành tích học tập = khá”, hay “Thành tích học tập = giỏi” để phân nhánh tiếp? Các bạn thử áp dụng công thức CV để tính nhé. Lưu ý lần nữa khi node nào không thể phân nhánh tiếp thì bạn hãy tính giá trị trung bình của điểm TBTL trong node ấy, đấy sẽ là giá trị sau cùng của biến mục tiêu
Decision rules
Một trong những điểm hấp dẫn nhất của thuật toán cây quyết định đó chính là khả năng diễn giải mô hình dựa trên việc sử dụng quy luật ra quyết định (Decision rules). Vậy Decesion rules được lấy ở đâu? Chính là lấy từ hay trích xuất từ thuật toán cây quyết định sau khi đã được xây dựng. Dựa trên nguyên lý nếu…thì… (IF – THEN), mỗi quyết định sẽ được xuất phát từ Root node, đến các node bên trong Internal node thông qua các nhánh để đến với các lá sau cùng Leaf node hay Terminal node. Một tập hợp các quyết định đưa ra sẽ tương đồng với cách thức phân loại của cây quyết định.
Để hiểu rõ hơn chúng ta cùng lấy lại ví dụ từ bài viết C4.5 sử dụng Entropy.
Quy luật quyết định như sau:
- Nếu giá trị tài sản thấp, thì có rủi ro tín dụng, tỷ lệ Support cho quyết định này là (2/8), số quan sát có giá trị biến mục tiêu “Có rủi ro tín dụng” là 2 trên tổng số quan sát là 8. Confidence có giá trị là 1, nghĩa là trong node này 100% khách hàng có rủi ro tín dụng
- Nếu giá trị tài sản cao, thì không có rủi ro tín dụng, tỷ lệ Support là (2/8), Confidence là 1
- Nếu giá trị tài sản trung bình và khoản tiết kiệm thấp thì không có rủi ro tín dụng, tỷ lệ Support là (1/8), Confidence là 1.
- Nếu giá trị tài sản trung bình và khoản tiết kiệm trung bình thì không có rủi ro tín dụng, tỷ lệ Support là (2/8), Confidence là 1.
- Nếu giá trị tài sản trung bình và khoản tiết kiệm cao thì không có rủi ro tín dụng, tỷ lệ Support là (2/8), Confidence là 1.
Do ở ví dụ trên các node đều thuần khiến, các khách hàng hay đối tượng dữ liệu đều mang cùng 1 giá trị của biến mục tiêu, không có thông tin hỗn độn khác nên Confidence đều là 1, trong thực tế thì không có như vậy, đối với trường hợp khối lượng dữ liệu nhiều, phức tạp, nhiều biến khác nhau thì đạt được tỷ lệ Confidence hoàn hảo như trên là rất khó.
Đến đây là kết thúc series các bài viết về thuật toán cây quyết định, mong rằng qua chuỗi các bài viết này các bạn sẽ nắm cơ bản được thuật toán Decision Trees là gì, và cách thức triển khai. Ở các bài viết sắp tới chúng ta sẽ sang các mô hình Regression, mong các bạn tiếp tục ủng hộ.
Có thể bạn chưa biết:
- Ứng dụng công nghệ Blockchain xây dựng nền tảng giao dịch phi tập trung
- Blockchain – Khởi nguồn của một nền kinh tế mới: Chương 3 – Blockchain 3.0 (Phần 2)
- Hàn Quốc: Gã khổng lồ điện tử LG triển khai dịch vụ Blockchain “Monachain” của riêng mình
- Thị trường chuỗi cung ứng Blockchain đạt hơn 9 tỷ đô la vào năm 2025
- Kế Toán Tam-Phân – Cách mạng trong ngành Kế Toán với nền tảng Blockchain
- Blockchain – Khởi nguồn của một nền kinh tế mới: Chương 6 – Những hạn chế (Phần 2)
- Kiểm soát an toàn thực phẩm: Trung Quốc đã làm thế nào với Blockchain?
- Tạo Blockchain và BitCoin bằng HTML và Javascript (Phần 3): Tự tạo ra một đồng Bitcoin của mình
- Hệ thống thực phẩm Brimhall phân phối sản phẩm thông qua công nghệ Blockchain
- Blockchain – Khởi nguồn của một nền kinh tế mới: Chương 4 – Blockchain 3.0 (Phần 1)
- Walmart Trung Quốc hợp tác với VeChain, PwC để quản lý chuỗi cung ứng thực phẩm bằng blockchain
- Blockchain – Khởi nguồn của một nền kinh tế mới: Chương 3 – Blockchain 3.0 (Phần 1)
Tư vấn và xây dựng hệ thống big data
- Khảo sát, đánh giá cơ sở hạ tầng hệ thống hiện có để xem tính khả thi cho việc ứng dụng lưu trữ và khai thác Bigdata.
- Tư vấn và xây dựng hệ thống phục vụ Bigdata theo tình hình hoạt động sản xuất/kinh doanh của doanh nghiệp.
- Hệ thống lưu trữ dữ liệu (Data warehouse).
- Hệ thống xử lý dữ liệu (ETL system).
- Hệ thống phân tích dữ liệu (Analysis system).
- Hệ thống phục vụ báo cáo (Report & BI system).
- Vận hành, bảo trì hệ thống.
Phân tích dữ liệu big data
- Xây dựng thuật toán khai thác dữ liệu dựa thực tế kinh doanh của công ty
- Ứng dụng các mô hình định lượng thông minh để phân tích hành vi tiêu dùng
- Dự báo nhu cầu tiêu dùng và chuẩn đoán những nguy cơ rời dịch vụ
- Phát triển các giải pháp kinh doanh tăng doanh thu và kiểm soát rủi ro trong kinh doanh
Tư vấn chiến lược
- Xây dựng chiến lược kinh doanh thông minh dựa trên kết quả phân tích thông minh từ nguồn big data
- Phân khúc thị trường và định vị những phân khúc ưu tiên khai thác
- Đổi mới sản phẩm và dịch vụ để giữ chân khách hàng và giảm thiểu rủi ro rời dịch vụ
- Xây dựng các chương trình khuyến mãi theo khúc thị trường hạn chế tối thiểu spam đến khách hàng
Training lĩnh vực dữ liệu
- Kiến thức về cơ bản trong khai thác big data
- Kiến thức nâng cao hướng đến khai thác big data
- Xây dựng chiến lược marketing dựa trên kết quả khai thác big data
- Chuyển giao công nghệ mô hình khai thác big data
DVMS chuyên:
- Tư vấn, xây dựng, chuyển giao công nghệ Blockchain, mạng xã hội,...
- Tư vấn ứng dụng cho smartphone và máy tính bảng, tư vấn ứng dụng vận tải thông minh, thực tế ảo, game mobile,...
- Tư vấn các hệ thống theo mô hình kinh tế chia sẻ như Uber, Grab, ứng dụng giúp việc,...
- Xây dựng các giải pháp quản lý vận tải, quản lý xe công vụ, quản lý xe doanh nghiệp, phần mềm và ứng dụng logistics, kho vận, vé xe điện tử,...
- Tư vấn và xây dựng mạng xã hội, tư vấn giải pháp CNTT cho doanh nghiệp, startup,...
Vì sao chọn DVMS?
- DVMS nắm vững nhiều công nghệ phần mềm, mạng và viễn thông. Như Payment gateway, SMS gateway, GIS, VOIP, iOS, Android, Blackberry, Windows Phone, cloud computing,…
- DVMS có kinh nghiệm triển khai các hệ thống trên các nền tảng điện toán đám mây nổi tiếng như Google, Amazon, Microsoft,…
- DVMS có kinh nghiệm thực tế tư vấn, xây dựng, triển khai, chuyển giao, gia công các giải pháp phần mềm cho khách hàng Việt Nam, USA, Singapore, Germany, France, các tập đoàn của nước ngoài tại Việt Nam,…
Quý khách xem Hồ sơ năng lực của DVMS tại đây >>
Quý khách gửi yêu cầu tư vấn và báo giá tại đây >>
Có thể bạn quan tâm:
Quản lý thu chi kinh doanh, tài chính cá nhân,... trên điện thoại và máy tính bảng.
Đầy đủ tính năng cần thiết và dễ dàng sử dụng. Dùng miễn phí nhưng an toàn tuyệt đối!
Quản lý thu chi kinh doanh.
Quản lý thu chi bán hàng online.
Quản lý thu chi cửa hàng.
Quản lý vay nợ, trả nợ.
Quản lý thanh khoản hợp đồng.
Quản lý tài chính cá nhân.
Quản lý tài chính hộ gia đình.
Quản lý tài khoản tiền mặt, tài khoản ngân hàng.
An toàn, không sợ bị lộ dữ liệu tài chính.
Dễ dàng thao tác mọi lúc mọi nơi.
* Ứng dụng của chúng tôi hoàn toàn miễn phí, chạy offline, trên ứng dụng chỉ có banner quảng cáo nhỏ của Google. Chúng tôi không thu thập dữ liệu người dùng, không cài cắm các phần mềm độc hại, không gây tốn pin,...
Cài đặt và sử dụng hoàn toàn miễn phí và an toàn khi sử dụng cho điện thoại và máy tính bảng Android TẠI ĐÂY >>
hoặc qua QRCODE sau:
Cài đặt và sử dụng hoàn toàn miễn phí và an toàn khi sử dụng qua file APK, tải file tại đây >>
Cài đặt và sử dụng hoàn toàn miễn phí và an toàn khi sử dụng cho iOS (iPhone và iPad) TẠI ĐẬY >>
Xem hướng dẫn chi tiết từng tính năng tại phần Hướng dẫn >>
- Các nền tảng công nghệ hỗ trợ cho KHỞI NGHIỆP và CHUYỂN ĐỔI SỐ tiết kiệm, hiệu quả,...
- 5 lý do sở hữu một ứng dụng di động là cần thiết đối với doanh nghiệp vừa và nhỏ
- Hệ thống điều hành, tìm gọi và quản lý xe sử dụng công nghệ mới
- Khắc phục lỗi đăng nhập Windows 10, không thể login vào Windows 10
- Mạng xã hội là gì? Hiểu đầy đủ nhất về mạng xã hội
- IoT là gì? ứng dụng của IoT trong cuộc sống hiện đại
- Hướng dẫn cài ứng dụng, phần mềm cho Android trực tiếp bằng tập tin APK
- Ứng dụng bán hàng trên smartphone, smart TV, mạng xã hội...
- 100 Website đặt backlink miễn phí chất lượng
- Platform là gì?
- Cách đổi tên thiết bị Android
- Hệ thống order chuyên nghiệp cho quán ăn, cafe, nhà hàn
- Thông tin Du Lịch có ngay trong túi mọi người
- Phân hệ Quản lý Đội xe (Fleet Management) trong một hệ thống ERP thường có gì?
- Giải pháp cho dịch vụ bác sĩ gia đình
- Hệ thống chấm công từ xa thông minh SAttendance và hệ thống định vị STracking
- Phòng khám, bệnh viện thông minh
- Bác sĩ gia đình, chăm sóc sức khỏe tại nhà
- Kinh doanh vé xe, đặt vé xe, vé máy bay trên smartphone, Smart TV, Mạng xã hội
- Tìm bất động sản, tìm nhà đất, tìm phòng theo mô hình uber trên smartphone
- App hẹn lịch chăm sóc sắc đẹp, book vé spa, massage
- STracking ứng dụng chấm công nhân viên làm các công việc ngoài văn phòng công ty
- Nhà thuốc, dược trên smartphone và tablet
- VIP Finance Hệ Sinh Thái phân tích đánh giá cổ phiếu, trái phiếu, thị trường vàng, thị trường forex
Bằng cách đăng ký kênh và chia sẻ bài, bạn đã cùng DVMS chia sẻ những điều hữu ích