Bạn không cần kiến thức về miền (kiến thức về ý nghĩa của dữ liệu của bạn ) để thực hiện tính năng kỹ thuật (tìm các cách biểu cảm hơn để đóng khung dữ liệu của bạn).
Như Tu N. đã giải thích , bạn có thể tìm thấy các kết hợp các tính năng "nhanh và bẩn" có thể hữu ích khá dễ dàng. Với sản lượng và một tính năng cá nhân x , bạn có thể lấy biến đổi sau, x ' ∈ { e x , log ( x ) , x 2 , x 3 , tanh ( x ) } . Kiểm tra nhanh về tính hữu ích của phép biến đổi là nếu tương quan giữa { y , x ′ } cao hơn tương quan giữayxx′∈{ex,log(x),x2,x3,tanh(x)}{y,x′} .{y,x}
Cảnh báo về tương quan: Tương quan không hiển thị tất cả mọi thứ và tùy thuộc vào mô hình bạn đang sử dụng (rất phi tuyến tính như NN hoặc RF) và tương tác với các biến khác, sự thay đổi trong tương quan có thể không có nghĩa gì.
Tuy nhiên, nếu bạn đang sử dụng một mô hình tuyến tính đơn giản như hồi quy logistic, thì đó là một chỉ số OK về độ hoàn hảo. Tuy nhiên, cách tốt nhất để đánh giá một phép chuyển đổi như vậy, như Fokhruz Zaman lưu ý , là xây dựng một mô hình có và không có tính năng chuyển đổi của bạn, và xem lỗi xác thực (trên các nếp gấp Xác thực chéo của bạn) phát triển như thế nào.
Nó khá dễ dàng để phát hiện các biến đổi tính năng đơn theo cách này. Những dữ liệu này áp dụng cho nhiều dữ liệu, trong đó mối quan hệ rõ ràng hơn giữa đầu vào và đầu ra của bạn có thể ở một quy mô khác. Ví dụ, mối quan hệ giữa Thu nhập và "Hạnh phúc" dường như là logarit, nhưng bạn sẽ không bao giờ ghi lại nhật ký thu nhập của người tham gia trực tiếp.
DD2
Có thể khó diễn giải sự thể hiện bên trong của NN, hoặc thậm chí diễn giải tầm quan trọng của tính năng trong Khu rừng ngẫu nhiên. Một phương pháp dễ dàng hơn và có lẽ phù hợp hơn cho mục đích này, mô hình sẽ là Tăng tốc với các cây quyết định. Có rất nhiều thư viện triển khai Boosting và nếu bạn tham gia vào cuộc thi Kaggle vì bài đăng của bạn dường như ngụ ý, XGBoost dường như được nhiều người tham gia sử dụng, vì vậy bạn có thể tìm thấy một số trợ giúp / hướng dẫn về những gì tôi sẽ mô tả.
Đầu tiên, chạy thuật toán tăng tốc của bạn bằng cách chỉ sử dụng gốc cây , cây quyết định 1 cấp. Stumps rất yếu, nhưng Boosting làm cho nó một mô hình hợp lý. Điều này sẽ hoạt động như là cơ sở của bạn. Tùy thuộc vào thư viện bạn đang sử dụng, bạn sẽ có thể hiển thị khá dễ dàng những tính năng được sử dụng nhiều nhất và bạn nên vẽ chúng theo phản hồi (hoặc thực hiện biểu đồ nếu phản hồi là phân loại) để xác định một số mẫu. Điều này có thể cung cấp cho bạn một trực giác về những gì sẽ là một chuyển đổi tính năng duy nhất tốt.
Tiếp theo, chạy thuật toán Boosting với cây quyết định 2 cấp. Mô hình này phức tạp hơn nhiều so với mô hình trước đó; nếu hai biến được thực hiện cùng nhau có nhiều sức mạnh hơn được thực hiện riêng lẻ, mô hình này sẽ vượt trội hơn so với biến trước đó của bạn (một lần nữa, không phải về lỗi đào tạo, mà là về lỗi xác thực!). Dựa trên điều này, bạn sẽ có thể trích xuất biến nào thường được sử dụng cùng nhau và điều này sẽ dẫn bạn đến các biến đổi đa tính năng tiềm năng.
Về tài liệu liên quan, tôi sẽ tư vấn các video sau vì chúng dễ theo dõi