Multivariate Data Analysis – Giới thiệu

Trong học kì này có một số môn đặc biệt có ích, do đó mình sẽ cố gắng blog lại nội dung của mỗi buổi học, vừa để ôn bài và để xem mình hiểu đến đâu, vừa có tài liệu ôn tập khi thi cuối kì. Hi vọng sẽ làm được như vậy cho tất cả các tuần của 2 hoặc 3 môn quan trọng nhất.

Môn đầu tiên là Phân tích dữ liệu nhiều biến (Multiravariate/Multidimensional Data Analysis), và đây là bài nhập môn, giới thiệu vấn đề. Mặc dù background của mình không phải là dân thống kê, nhưng trong khi học môn này, hay ít nhất là trong bài này, thì từ góc độ thống kê sẽ thấy được motivation chính của nó. Vì vậy những điều sau đây sẽ được cố gắng trình bày từ góc độ thống kê.

1. Tại sao là dữ liệu nhiều biến, và tại sao phải phân tích dữ liệu nhiều biến

Khi thống kê dữ liệu về một loại đối tượng nào đó của thế giới thực, trừ những trường hợp quá đơn giản, còn thông thường ta luôn phải làm việc với nhiều thuộc tính khác nhau của đối tượng đó. Chẳng hạn một bản thống kê thông thường về các loài động vật có thể như sau:

Ví dụ về thông kê

Ví dụ về thông kê

Trong ví dụ này, mỗi dòng là một đối tượng được khảo sát (dân thống kê gọi là example, individual hay data, còn dân KHMT gọi là sample), mỗi cột là một thuộc tính mà ta quan tâm. Trong thống kê mỗi cột gọi là một biến (variable) hay attribute, còn KHMT gọi là đặc trưng (feature).

Một cách hình thức hơn, thông thường dữ liệu được biểu diễn dưới dạng ma trận n\times p, trong đó n là số dòng (example), và p là số cột (variable). Như vậy dữ liệu nhiều biến (multivariable data) hay nhiều chiều (multidimensional) nghĩa là khi số cột (và số dòng) của ma trận nói trên lớn hơn các trường hợp tầm thường.

Như vậy là dân thống kê, ta hiển nhiên phải làm việc với dữ liệu nhiều biến. Khi số biến nhỏ (<= 3) thì ta có thể biểu diễn các đối tượng trong không gian  Euclid với mỗi trục là của một biến, từ đó dễ dàng phân tích và xử lí dữ liệu. Nhưng khi số chiều lớn thì việc biểu diễn là bất khả thi, do đó cần có một tập các phương pháp thích hợp để xử lí dữ liệu nhiều biến, ta gọi chung nhóm phương pháp này là phương pháp phân tích dữ liệu nhiều biến.

Cho ma trận dữ liệu, là nhà thống kê, ta thường quan tâm đến ba bài toán sau:

  • Biểu diễn (describe/represent) và/hoặc giảm chiều (reduce) dữ liệu. Giảm chiều nghĩa là giảm số biến, nhưng cố gắng để không làm mất mát thông tin, mục đích là để cung cấp một cái nhìn sâu hơn về dữ liệu, phục vụ các bài toán sau.
  • Phân lớp (classify) hay gom cụm (cluster) dữ liệu vào các nhóm tương ứng, từ đó khám phá các mối liên kết giữa các đối tượng và các biến. Sau khi gom nhóm thì những đối tượng thuộc cùng một nhóm thường có thuộc tính gần giống nhau.
  • Dự đoán (predict) và giải thích (explain) với dữ liệu mới. Với các nhóm có sẵn ở bước trước, với một đối tượng mới, ta muốn xem nó thuộc nhóm nào, đồng thời giải thích được tại sao nó thuộc nhóm đó.

Trong Máy học, với một mô hình bất kì, ta cũng luôn có 2 việc phải làm, tương ứng với 3 bài toán trên, được gọi là huấn luyện (learning, training hay model/density/parameter estimation – tương ứng với 2 bài toán đầu tiên nói trên) và thử nghiệm (testing hay predicting). Đặc biệt, bài toán classification trong thống kê thì trong ML gọi là supervised learning, và clustering của thống kê được gọi là unsupervised lerning trong ML.

Tương ứng với 3 bài toán này, có hàng lô lốc các phương pháp đã được đề xuất:

  • Biểu diễn/giảm chiều: Principal Component Analysis (PCA), Correspondence Analysis (CA), Multiple Correspondence Analysis (MCA), Factorial Discriminant Analysis (FDA)
  • Phân lớp: K-means, MeanShift…
  • Dự đoán: Discriminant Analysis, cây quyết định, mạng neuron…

Những phương pháp in nghiêng sẽ được cover trong course này.

2. Types of variables

Thông thường các phần tử trên mỗi cột của ma trận dữ liệu sẽ có kiểu giống nhau (nghĩa là giá trị của cùng một biến thì có kiểu giống nhau), chẳng hạn trong ví dụ ở phần 1 thì biến Legs có kiểu số rời rạc. Trong thống kê, các biến có thể thuộc 3 loại sau:

  • Categorical variable: gồm 2 loại:
    • Nominal: giới tính, quốc tịch, loại máu (nóng hay lạnh)…
    • Ordinal: trình độ văn hóa (lớp 1,  2… 12), sở thích (không thích, hơi thích, thích, rất thích…)
  • Numeric variable: gồm 2 loại:
    • Discrete: số chân của động vật, số ngày trong tháng
    • Continuous: trọng lượng của mỗi người, thu nhập
  • Text variable

Điều quan trọng là không được nhầm lẫn giữa loại biến và kiểu dữ liệu lưu trữ nó. Chẳng hạn giới tính có thể lưu bằng số nguyên (0: masculine, 1:ferminine) nhưng giới tính lúc nào cũng là categorical variable.

Nói chung ta sẽ không làm việc với dữ liệu text. Trong KHMT đa số là numeric, nhưng trong thống kê thì rất thường có categorical. Với các phương pháp sẽ học trong course này:

  • PCA chỉ làm việc với biến numeric.
  • CA chỉ làm việc với dữ liệu được biểu diễn bằng 2 biến categorical.
  • MCA làm việc với dữ liệu có nhiều hơn 2 biến categorical.
  • FDA làm việc với biến numeric và một biến categorical.

3. Conclusion

Bài này trình bày động lực của việc nghiên cứu phân tích dữ liệu nhiều biến. Tất nhiên hiểu biết các kĩ thuật cụ thể là rất quan trọng, nhưng đôi khi động lực  nghiên cứu và quá trình phát triển của chúng sẽ mang lại cái nhìn sâu hơn về mỗi chủ đề.

Advertisements

8 comments

  1. chào anh!

    Các bài viết của anh đều rất tuyệt, và em thực sự cảm thấy thích thú 😀 Hy vọng trong tương lai sẽ có nhiều chủ đề liên quan đến xác suất – thống kê và máy học.

    Chúc anh luôn mạnh khỏe.

  2. Chào anh Vũ!
    Anh có tài liệu nào về phân tích tương ứng không (tiếng Việt càng tốt)
    Em đang cần nghiên cứu ứng dụng của nó trong phân tích chất lượng dịch vụ. Anh giúp em với nhé

    1. Hi Mai Anh,
      Anh google “phân tích tương ứng” thì ra nhiều kết quả bằng tiếng Việt mà. Không biết em cần giúp thế nào?

  3. Chào anh VŨ
    Em có đọc tài liệu về phân tích tương ứng và muốn ứng dụng nó trong phân tích chất lượng dịch vụ . Và theo em hiểu thì đây thực chất chỉ là một vận dụng của phân tích nhân tố bằng thành phần chính mà thôi. Số liệu của em là điều tra thử khách hàng sử dụng dịch vụ của 1 ngân hàng ở 3 thành phố,e sử dụng thang đo chất lượng dịch vụ SERVQUAL.Tuy nhiên em cũng chưa biết cách ứng dụng nó như thế nào trong nghiên cứu của mình vì mục đích đề tài này là em muốn xây dựng hướng phân tích chung cho nghiên cứu CLDV nói chung. A có thể gợi ý giúp em được không ạ ?
    Cảm ơn anh.

    1. Cảm ơn vì bài viết.
      Trong bài viết bạn không đề cập vì không cần thiết hay là bạn đang nhầm lẫn giữa Multivariate và Multivariable ?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s