DỮ LIỆU CHÉO LÀ GÌ

Một trong những điều thú vị nhất khi làm việc cùng với dữ liệu là tính muôn hình vạn trạng của nó.

Bạn đang xem: Dữ liệu chéo là gì

Mặc dù thống kê và học máy là 2 chuyên ngành chính nghiên cứu về dữ liệu, có rất nhiều phương pháp phân tích dữ liệu được ra đời từ những nhu cầu phân tích của các ngành khác – nhất là từ tính đặc thù trong dữ liệu của ngành đó. Ví dụ điển hình là kinh tế lượng (econometrics), gần như một ngành học ra đời để phân tích các dữ liệu trong kinh tế, khi dữ liệu phần lớn được thu thập dưới dạng bảng (panel data). Bài viết sau đây của mình sẽ giới thiệu với các bạn những kiểu biến số, tính chất dữ liệu phổ biến, từ đơn giản đến phức tạp và các dạng mô hình tương ứng với những kiểu dạng và tính chất đó.

Trong bài này, dữ liệu được hiểu là processed data, tức là những gì bạn có trong tay trước khi xây dựng mô hình. Khi đó các biến (cả features và response) đều ở dưới dạng các con số (numeric); ví dụ, dữ liệu thô có thể là một bức ảnh 800*600, thì processed data bao gồm các numeric features của 480,000 điểm ảnh. Hay nếu một feature dưới dạng binary (như Yes/No), nó được chuyển về dạng 0-1. Hay nếu bạn phân tích text data, “dữ liệu” trong bài này được hiểu là các term frequency. Trong bài này, các mô hình mình đề cập tới thường là các supervised model, với các features (X) và biến response (y).Bạn đang xem: Cross sectional là gì

A. Phân loại theo giá trị mà biến được nhận

Continuous/Interval Variable – Biến liên tục

Đây là kiểu dữ liệu phổ biến và đơn giản nhất, khi biến số có thể nhận dữ liệu tại bất cứ điểm nào trên trục số, hoặc bất cứ điểm nào trong một khoảng. Ví dụ, chiều cao và cân nặng của một người bất kì có thể nhận bất cứ giá trị lớn hơn 0 nào, doanh thu của một doanh nghiệp trong một năm cũng như vậy. Tất nhiên trên thực tế, bạn luôn luôn có một niềm tin về ngưỡng tối đa hoặc tối thiểu của giá trị, nhưng đặc điểm đặc trưng nhất của loại biến này là nó có thể nhận bất cứ giá trị nào trong ngưỡng đó. Đồng thời, các giá trị của nó có tính thứ tự (ordered), ví dụ bạn có thể so sánh cân nặng 160 kg nhỏ hơn 170 kg. Dữ liệu liên tục kiểu này cho phép bạn mô hình bằng những phân phối liên tục rất quen thuộc, như phân phối chuẩn, phân phối đều, etc. Hay như khi bạn sử dụng các mô hình hồi quy tuyến tính, một điều kiện tiên quyết là biến response y là một biến liên tục. Tuy vậy, kiểu biến liên tục này có nhiều tình huống đặc biệt, dưới đây là một số kiểu như thế:

2. Binary variable – Các biến nhị phân

Biến nhị phân là biến mà chỉ có thể nhận 2 giá trị là 0 và 1 – tương ứng với những đo lường trong một phân loại (category) chỉ có 2 giá trị (levels) cho phép, như Có/Không, Đúng/Sai, etc. Khi các biến này xuất hiện trong mô hình dưới dạng là biến response, bài toán trở thành bài toán phân lớp (classification) với rất nhiều thuật toán phổ biến như logistic regression, SVM, etc. Khác với biến liên tục, biến nhị phân không có tính thứ tự. Ở đây 0 và 1 chỉ đại diện cho 2 nhóm, chứ KHÔNG có tính so sánh như là 030, Nữ >30, Nam

*

Các biến multinomial variable là một sự mở rộng của các biến nhị phân, khi phân loại (category) có nhiều hơn 2 phân lớp (levels). Ví dụ một phân loại về xu hướng chính trị ở Mỹ có thể có Democrats/Republican/Neutral, etc. Khi được code vào trong máy tính, các levels cũng hay được đánh số như 1, 2, 3. Tuy vậy, điều nhấn mạnh quan trọng ở đây là các levels này không có tính thứ tự (unordered), tức là bạn không thể lấy tổng hay hiệu của các con số này, và đừng bao giờ quên đọc mô tả về ý nghĩa của các biến trước khi phân tích.

Khi các biến multinomial variable xuất hiện là các biến response, bài toán thường trở thành bài toán phân lớp nhiều tầng (multilevel classification). Khi các biến này xuất hiện dưới dạng các features, chúng thường được represented bởi một vài biến nhị phân; ví dụ, trong ví dụ về xu hướng chính trị ở trên, với 3 lớp Democrats/Republican/Neutral, thay vì được represented là 1,2,hay 3, nó có thể được represented bởi 2 biến nhị phân X1 = Democrats/Not Democrats và X2 = Republican/Not Republican. Theo cách này, một người Democrats sẽ được code là (1,0), một người Republican được code là (0,1), và một người Neutral được code là (0,0). Vì thế, các phân tích như trong biến binary variable (ANOVA/ANCOVA) có thể được áp dụng.

Một tình huống hay gặp khi làm việc với các biến nhị phân và multinomial variable là việc extremely unbalanced data giữa các phân lớp, tức là số lượng dữ liệu ở các level rất khác nhau. Ví dụ, khi muốn xây dựng mô hình dự đoán liệu một người có ý định mua ô tô trong 3 tháng sắp tới, số lượng biến response nhận giá trị No (không mua) chiếm đại đa số (một dataset mình đã nhìn thấy tỉ lệ này khoảng 95%). Nếu một mô hình phân lớp được xây dựng với toàn bộ dataset này, nếu bạn không để ý hiện tượng này, bạn sẽ thấy độ chính xác (accuracy rate) rất cao, nhưng thực ra lại không có nhiều ý nghĩa. Bởi vì, kể cả chẳng làm mô hình gì, chỉ từ việc quan sát dữ liệu, nếu một người dự đoán tất cả đều là No, độ chính xác đã lên tới 95%. Điều quan trọng trong các mô hình này không phải là độ chính xác, mà là false negative rate – tỉ lệ số người bạn dự đoán không mua xe mà họ đã mua xe thực sự. Một kĩ thuật phổ biến với các extremely unbalanced data là việc sử dụng undersampling và oversampling để làm cho data set trở nên balanced. Ví dụ bạn có 1000 quan sát với 950 No và 50 Yes, undersampling chọn ra ngẫu nhiên 50 quan sát No, và ghép lại với 50 Yes để tạo ra một balance dataset với 50 quan sát ở mỗi phân lớp. Ngược lại oversampling thì replicate mỗi 50 quan sát Yes 19 lần, tạo ra một balance với 950 quan sát ở mỗi phân lớp. Các mô hình phân lớp trên các oversampled/undersampled dataset cho ta một bức tranh tốt hơn về khả năng dự đoán của các mô hình.

Tuy vậy, những cách under/over sampling này cũng có nhiều điểm yếu, như làm thay đổi phân phối của dữ liệu và chi phí cho việc làm này đặc biệt lớn trong big data; một số cách làm khác, như theo comment của bạn Nguyễn Tiến Đức, mang tính kĩ thuật hơn, đó là việc thay đổi các tham số của hàm mất mát (loss function), hay sử dụng area under the curve (AUC) của ROC để điều chỉnh precision/recall của classification.

Xem thêm: ​Làm Nhang Từ Lá Cỏ Vườn Nhà, Nhang Hương Và Nguyên Liệu Làm Nhang

Hoặc một cách khác, đó là việc sử dụng các algorithm mà work well với unbalanced data – như support vector machine (SVM). Tóm lại, bạn sẽ luôn cần cẩn thận với việc chọn algorithm và criteria để đánh giá các algorithm khi có unbalanced data.

4. Count variable (Biến đếm)

Một tình huống phổ biến khác là chúng ta có dữ liệu về số lần/số lượng một sự kiện xảy ra trong một khoảng thời gian nhất định, ví dụ số lượng tai nạn giao thông trong một năm, số lượng ca mắc bệnh mới, etc. Đó là ví dụ về count data (biến đếm).

Khi biến đếm xuất hiện dưới dạng các features, thông thường nó được sử dụng như một biến liên tục. Bởi vì mặc dù các giá trị của nó luôn là số nguyên, nó luôn có tính thứ tự và có tính so sánh (một sự kiện xảy ra 2 lần thì ít hơn 3 lần). Trong các mô hình đơn giản như mô hình hồi quy tuyến tính, ý nghĩa của hệ số với các biến count có thể được diễn giải như với các biến liên tục hoàn toàn hợp lí. Ví dụ, khi bạn muốn hồi quy về nồng độ CO2 trong không khí và số lượng cây xanh trong vùng, bạn hoàn toàn có thể nói cứ thêm một cây xanh nồng độ CO2 tăng/giảm một lượng nhất định.

Tuy nhiên, khi biến đếm xuất hiện là một response variable, điều kiện biến đếm phải là số nguyên không âm là một điều kiện ràng buộc. Ví dụ, trong lĩnh vực bảo hiểm, bạn muốn mô hình số lượng tai nạn giao thông của một người dựa trên các yếu tố như thu nhập, nghề nghiệp, tuổi tác, giới tính, etc. Nếu bạn sử dụng những mô hình cho biến liên tục như mô hình hồi quy tuyến tính, dự đoán của bạn có thể dự đoán số lượng tai nạn giao thông là số âm. Hơn nữa các biến count data thường bị lệch rất nhiều – tức là số lượng các giá trị thấp như 0,1,2 chiếm phần lớn, nhưng cũng có 1 ít các giá trị cao (như 15,16,…) – trong khi mô hình hồi quy tuyến tính thông thường với phân phối chuẩn giả định các response khá đối xứng.

Mô hình phổ biến cho các biến count data ở response variable là Poisson regression (mô hình hồi quy Poisson), negative binomial regression, và các phiên bản của 2 mô hình này để điều chỉnh cho overdispersion. Một trường hợp cũng hay gặp là mô hình của các sự kiện hiếm hoặc rất hiếm (rare event – extremely rare event) – những sự kiện này thường được quan tâm lớn vì tuy nó ít khi xảy ra, nhưng khi xảy ra, chi phí hoặc loss thường rất cao, vì thế đòi hỏi mô hình có độ chính xác lớn. Ví dụ nếu bạn muốn mô hình số lượng tai nạn máy bay nghiêm trọng xảy ra trong 1 năm, bạn sẽ cần sử dụng các rare event models.

5. Ordinal variable

Trường hợp phổ biến của biến kiểu này là các likert scale, khi dữ liệu thu được theo kiểu các câu hỏi “Đánh giá mức độ hài lòng với sản phẩm trên thang điểm từ 1 đến 10”. Nếu các biến này xuất hiên dưới dạng các features, thông thường có thể sử dụng nó như một biến liên tục.Tuy vậy, nếu các biến này là các response, các biến này có thể xem như một sự lai tạp giữa các biến multinomial và biến liên tục. Nhìn qua, các biến này có vẻ gần giống với biến multinomial ở chỗ, các bạn có thể xem như mỗi mức thang (từ 1 đến 10) như 1 level; tuy vậy, không giống như các biến multinomial, các levels này có tính thứ tự. Ngược lại, nó không hoàn toàn như biến liên tục, vì các giá trị của nó luôn là số nguyên, và các scale của nó có thể hơi tuỳ tiện (lúc thì thang điểm từ 1 đến 5, lúc thang điểm lại từ 5 đến 10, v.v). Kiểu dữ liệu này đem tới những mô hình trung gian giữa hồi quy (regression) và phân lớp (classification).

Một mô hình phổ biến của trường hợp này là các mô hình với biến ẩn (latent variable model). Quay lại với ví dụ ở trên về mức độ hài lòng. Mô hình biến ẩn này cho rằng, mức độ hài lòng thật là một biến liên tục từ 0 đến 10, và các giá trị số nguyên trong likert scale sẽ tương ứng với một khoảng của biến liên tục này. Ví dụ, nếu biến liên tục có giá trị từ 0 đến 1.8, trên likert scale sẽ là 1, từ 1.8 đến 2.9, trên likert scale sẽ là 2. Bài toán trở thành tìm các điểm giới hạn cho mỗi likert score trên các biến liên tục (như các số 1.8 hay 2.9 trong ví dụ ở trên). Rõ ràng, biến liên tục này không quan sát được, nên được gọi là biến ẩn.

Phần ở trên mình nói về các kiểu dữ liệu thường gặp phân loại theo các giá trị nó có thể nhận, tiếp sau đây sẽ là các tính chất dữ liệu thông qua tính chất của quá trình thu thập.

B. Phân loại theo tính chất của quá trình thu thập

Cross-sectional data (Dữ liệu cắt ngang)

Cross-sectional data là kiểu dữ liệu đơn giản nhất, khi các biến số chỉ được thu thập tại một thời điểm nhất định, hoặc giá trị của các biến số gần như không thay đổi theo thời gian hay không gian trong phạm vi của nghiên cứu. Mục đích chính của việc sử dụng cross-sectional data là khi bạn quan tâm nhiều hơn tới các biến số và mối quan hệ giữa chúng dựa trên bản chất của nó, chứ không quan tâm tới liệu các biến số và các mối quan hệ thay đổi theo thời gian/không gian như thế nào. Ví dụ, bạn sẽ sử dụng một cross-sectional data nếu muốn tìm hiểu mối quan hệ giữa thu nhập và trình độ học vấn nói chung, không kể tơi việc thu nhập và học vấn thay đổi theo thời gian như thế nào.

Đặc điểm quan trọng nhất của các quan sát trong cross-sectional data là có thể coi nó độc lập (independent), và vì thế các quan sát có thể exchangable (trong ví dụ kể trên, bạn thu thập thu nhập và học vấn của người 1 hay người thứ 1000 trước không quan trọng, và định danh của người 1 hay người thứ 1000 is indistinguishable). Nhận dạng cross-sectional data tương đối đơn giản bằng việc bạn không thấy yếu tố thời gian được cung cấp trong các biến số. Các mô hình cho cross-sectional data là các mô hình cơ bản nhất.

2. Time series data và Panel data: (Dữ liệu theo chuỗi thời gian và dữ liệu mảng)