Làm thế nào để xử lý một mô hình dự đoán của người Viking đánh bại?


36

Tôi đang xem một bài thuyết trình của một chuyên gia ML từ một nhà bán lẻ lớn, nơi họ đã phát triển một mô hình để dự đoán các sự kiện chứng khoán.

Chúng ta hãy giả sử rằng theo thời gian, mô hình của họ trở nên rất chính xác, bằng cách nào đó có phải là "tự đánh bại" không? Đó là, nếu mô hình thực sự hoạt động tốt, thì họ sẽ có thể dự đoán trước các sự kiện chứng khoán và tránh chúng, cuối cùng đến một điểm mà họ có ít hoặc không có sự kiện chứng khoán nào cả. Nhưng nếu đó là trường hợp, sẽ không có đủ dữ liệu lịch sử để chạy mô hình của họ hoặc mô hình của họ bị trật bánh, bởi vì các yếu tố nhân quả tương tự được sử dụng để chỉ ra một sự kiện chứng khoán không còn làm như vậy nữa.

Các chiến lược để đối phó với một kịch bản như vậy là gì?

Ngoài ra, người ta có thể hình dung ra tình huống ngược lại: Ví dụ, một hệ thống đề xuất có thể trở thành một "lời tiên tri tự hoàn thành" với sự gia tăng doanh số của các cặp vật phẩm được thúc đẩy bởi đầu ra của hệ thống đề xuất, ngay cả khi hai mặt hàng không thực sự là điều đó liên quan.

Dường như với tôi rằng cả hai đều là kết quả của một loại vòng phản hồi xảy ra giữa đầu ra của bộ dự đoán và các hành động được thực hiện dựa trên nó. Làm thế nào người ta có thể đối phó với các tình huống như thế này?


7
(+1) Trong một số tình huống tương tự liên quan đến giáo dục đại học, mọi người nói về một mô hình "tự cần sa". Các quan chức đại học, sử dụng các mô hình, trao hỗ trợ tài chính để đạt được các mục tiêu liên quan đến tuyển sinh và hỗ trợ tài chính nhất định, chỉ để thấy rằng, do đó, cuối cùng, các quyết định tuyển sinh của các sinh viên tương lai ngày càng ít được xác định bởi hoặc có thể dự đoán được từ giải thưởng hỗ trợ tài chính .
rolando2

1
Câu hỏi này rất khó trả lời, vì nó phụ thuộc khá nhiều vào tình huống. Trong trường hợp tồn kho có giải pháp tốt, nhưng trong trường hợp người giới thiệu có thể đơn giản không có vấn đề gì lớn nếu mô hình của bạn trở nên hơi quy định.
Dennis Jaheruddin

Câu trả lời:


15

Có hai khả năng mà một mô hình phát hiện hết hàng (OOS) có thể tự trật bánh:

  1. Mối quan hệ giữa đầu vào và OOS có thể thay đổi theo thời gian. Chẳng hạn, các chương trình khuyến mãi có thể dẫn đến OOS cao hơn (doanh số khuyến mại khó dự đoán hơn so với doanh số thông thường, một phần vì không chỉ doanh số tăng trung bình , mà còn cả phương sai của doanh số và "khó dự đoán" thường dịch thành OOS), nhưng hệ thống và người dùng của nó có thể tìm hiểu điều này và nằm trong kho bổ sung cho các chương trình khuyến mãi. Sau một thời gian, mối quan hệ ban đầu giữa các chương trình khuyến mãi và OOS không còn giữ được nữa.

    Điều này thường được gọi là "thay đổi mô hình" hoặc tương tự . Bạn có thể khắc phục nó bằng cách điều chỉnh mô hình của bạn. Cách phổ biến nhất là cân trọng lượng đầu vào khác nhau, cho trọng lượng thấp hơn đối với các quan sát cũ.

  2. Ngay cả khi mối quan hệ giữa người dự đoán và OOS không thay đổi, phân phối của người dự đoán có thể. Chẳng hạn, nhiều ngày với doanh số bằng 0 của một đơn vị giữ cổ phiếu cụ thể (SKU) có thể báo hiệu một OOS - nhưng nếu mô hình hoạt động tốt, thì OOS có thể bị giảm trên bảng, và đơn giản là không có nhiều chuỗi bán hàng bằng 0 .

    Thay đổi trong phân phối của một công cụ dự đoán không phải là một vấn đề. Mô hình của bạn sẽ chỉ xuất ra xác suất OOS thấp hơn.


Cuối cùng, có lẽ bạn không cần phải lo lắng quá nhiều. Sẽ không bao giờ có OOS. Các cơ chế phản hồi như những cơ chế trên có xảy ra, nhưng chúng sẽ không hoạt động cho đến khi OOS bị xóa hoàn toàn.

  • Một số OOS đang chờ xử lý có thể đơn giản là không thể chuyển đổi. "Tôi có một đơn vị trên kệ và có thể sẽ phải đối mặt với nhu cầu cho năm trong tuần tới, nhưng giao hàng tiếp theo chỉ là do một tuần kể từ hôm nay."
  • Một số OOS sẽ rất khó dự đoán, ngay cả khi chúng có thể đảo ngược, nếu chúng đã được biết đến kịp thời. "Nếu chúng tôi biết rằng chúng tôi sẽ thả pallet ra khỏi xe nâng và phá hủy tất cả các sản phẩm, chúng tôi sẽ đặt hàng một cái khác."
  • Các nhà bán lẻ hiểu rằng họ cần nhắm đến một mức độ dịch vụ cao, nhưng 100% là không thể đạt được. Mọi người đến và mua toàn bộ cổ phiếu của bạn trên một số sản phẩm. Điều này rất khó để dự báo (xem ở trên) và đủ hiếm khi bạn không muốn lấp đầy các kệ của mình trong trường hợp có thể xảy ra. So sánh luật của Pareto: mức độ dịch vụ 80% (hoặc thậm chí 90%) là khá dễ dàng để đạt được, nhưng 99,9% khó hơn nhiều . Một số OOS được cho phép có ý thức.
  • Một cái gì đó tương tự như luật của Moore nắm giữ: ML càng trở nên tốt hơn, kỳ vọng sẽ tăng lên và những người khó kiếm sống hơn cho mô hình. Trong khi các thuật toán phát hiện (và dự báo) OOS được cải thiện, các nhà bán lẻ đang bận rộn khiến cuộc sống của chúng ta trở nên khó khăn hơn.
    • Ví dụ thông qua sự tăng sinh biến thể. Dễ dàng phát hiện OOS trên bốn hương vị sữa chua hơn so với hai mươi hương vị khác nhau. Tại sao? Bởi vì mọi người không ăn sữa chua nhiều gấp năm lần. Thay vào đó, tổng nhu cầu không thay đổi khá nhiều hiện được phân phối trên năm lần nhiều SKU và mỗi cổ phiếu của SKU cao bằng 1/5 so với trước đây. Đuôi dài đang mở rộng và tín hiệu ngày càng yếu đi.
    • Hoặc bằng cách cho phép thanh toán di động bằng thiết bị của riêng bạn. Điều này có thể làm giảm các rào cản tâm lý đối với việc mua sắm , vì vậy hàng tồn kho hệ thống sẽ còn tồi tệ hơn so với trước đây , và tất nhiên, hàng tồn kho hệ thống có thể là yếu tố dự báo tốt nhất cho OOS, vì vậy nếu chúng bị tắt, mô hình sẽ xấu đi.

Tôi tình cờ đã làm việc trong việc dự báo doanh số bán lẻ trong hơn mười hai năm nay, vì vậy tôi có một chút ý tưởng về những phát triển như thế này.


Tôi có thể bi quan, nhưng tôi nghĩ các hiệu ứng rất giống nhau đang xảy ra đối với các trường hợp sử dụng ML khác ngoài phát hiện OOS. Hoặc có thể đây không phải là bi quan: nó có nghĩa là các vấn đề có thể sẽ không bao giờ được "giải quyết", vì vậy vẫn sẽ có công việc cho chúng tôi thậm chí hàng thập kỷ kể từ bây giờ.


Tôi đặc biệt đồng ý với nhận xét cuối cùng của bạn. Phiên bản trường hợp xấu nhất của kịch bản này có vẻ như là điểm khởi đầu cho việc làm đầy đủ / không có định lý bữa trưa miễn phí. Đó là những gì làm cho một câu hỏi thú vị IMO!
gửi

26

Nếu bạn đang sử dụng một mô hình để hỗ trợ các quyết định can thiệp vào hệ thống, thì về mặt logic, mô hình đó nên tìm cách dự đoán kết quả có điều kiện dựa trên một can thiệp nhất định. Sau đó, riêng biệt, bạn nên tối ưu hóa để chọn can thiệp với kết quả mong đợi tốt nhất. Bạn không cố gắng để dự đoán sự can thiệp của riêng bạn.

Trong trường hợp này, mô hình có thể dự đoán nhu cầu (biến bạn không trực tiếp kiểm soát) và điều này, kết hợp với lựa chọn thả giống, sẽ dẫn đến việc có sự kiện hết hàng hay không. Mô hình nên tiếp tục được "thưởng" để dự đoán chính xác nhu cầu vì đây là công việc của nó. Các sự kiện hết hàng sẽ phụ thuộc vào biến này cùng với lựa chọn thả giống của bạn .


2
Đây chính xác là cách nó được giải quyết trong thực tế. Một mô hình hộp đen sẽ không cung cấp sự hiểu biết về các yếu tố lái xe mà chỉ dự đoán rằng một kho dự trữ sẽ xảy ra vào thứ tư sẽ được sử dụng rất hạn chế nếu mọi người không thể hiểu các giả định. (Với một giả định quan trọng là mô hình không đúng chỗ).
Dennis Jaheruddin

@DennisJaheruddin: Mặt khác, tạo một mô hình có thể dự đoán khi nào sản phẩm sẽ hết hàng mặc dù đã đặt hàng lại kịp thời và bạn có thể giết chết.
Joshua

1
Nó phức tạp hơn một chút so với điều đó, bởi vì trong mô hình họ sử dụng, tín hiệu nhu cầu chỉ là một yếu tố. Nhưng họ cũng sử dụng các yếu tố khác, dựa trên điều kiện cửa hàng, để tính đến các tình huống có hàng trong kho chứ không phải trên kệ (Ví dụ: trong phòng sau, hoặc tại một trong các máy tính tiền hoặc bàn dịch vụ vì khách hàng đã thay đổi tâm trí của họ vào phút cuối). Vì thế, họ không chỉ sử dụng nhu cầu mà còn cả những tài xế nhân quả khác.
Phục hồi lại

@Alex rằng sự phức tạp chỉ chiếm một mạng lưới các cơ chế cung / cầu đơn giản chi phối các địa điểm khác nhau, cho dù mô hình đó có đại diện cho chúng rõ ràng hay không. Mục tiêu của mô hình được mô tả chính xác hơn là dự đoán mức cổ phiếu, không phải nhu cầu, nhưng điều đó chỉ trở nên phù hợp nếu bạn đặc biệt xem xét có các yếu tố không được kiểm soát trong cả cung và cầu tại điểm trong mạng (giá) mức độ quan trọng. Các can thiệp như đặt mua thêm cổ phiếu hoặc có nhân viên bổ sung kệ thường xuyên hơn vẫn cần phải là những yếu tố trong mô hình.
Sẽ

Bạn có thể muốn đề cập đến khả năng nhu cầu thay đổi theo chứng khoán.
Yakk

9

Có lẽ bạn có thể theo dõi khi các sự kiện restock xảy ra. Sau đó, đó chỉ là vấn đề số học để giải quyết khi cổ phiếu sẽ cạn kiệt nếu mô hình không được sử dụng để bổ sung hàng tồn kho.

Điều này giả định rằng bất kỳ mức cổ phiếu tích cực là độc lập với mức doanh số. Một nhà bình luận nói rằng giả định này không có trong thực tế. Tôi cũng không biết - tôi không làm việc trên các tập dữ liệu bán lẻ. Nhưng như một cách đơn giản hóa, phương pháp đề xuất của tôi cho phép người ta đưa ra những suy luận bằng cách sử dụng lý luận trái ngược; việc đơn giản hóa này có quá phi thực tế hay không để đưa ra cái nhìn sâu sắc có ý nghĩa tùy thuộc vào bạn.


Tôi đoán tôi không thấy cách này trả lời câu hỏi. Các vấn đề theo tôi hiểu là: (a) Sau khi triển khai mô hình trong sản xuất, chức năng dự đoán tối ưu cho hàng tồn kho bây giờ hoàn toàn khác so với trước đây, vì chúng tôi đã thay đổi phân phối dữ liệu; (b) Mô hình của chúng ta càng tốt thì càng có nhiều sự kiện chứng khoán hiếm, và do đó càng khó dự đoán chính xác chúng sẽ tiến lên. Biết rằng "khi nào cổ phiếu sẽ cạn kiệt thì mô hình không được sử dụng để kho lại hàng tồn kho" cũng không có ở đây vì mô hình này đang được sản xuất từ ​​bây giờ
Jake Westfall

@JakeWestfall Loại phân tích này được gọi là lý luận trái ngược. Nếu bạn biết hàng tồn kho mọi lúc và bạn biết khi nào nó được bổ sung, thì bạn có thể tạo ra một phản ứng giả định rằng việc kho lại không xảy ra: chỉ cần trừ đi kho lại từ kho sau khi xảy ra việc bổ sung. Bây giờ bạn có một chuỗi thời gian phản ánh giả định bạn không bao giờ giới hạn. Thực hiện chuỗi thời gian này về phía trước cho đến khi xuất kho. Bây giờ bạn biết khi nào một stockout sẽ xảy ra mà không cần kho lại. Làm thế nào để phản tác dụng này có một phân phối dữ liệu khác nhau?
Sycorax nói Phục hồi lại

Tôi hiểu tất cả những điều đó. Điều tôi không hiểu là làm thế nào để giải quyết các vấn đề được nêu ra trong OP. Ví dụ: giả sử một người dự đoán mạnh mẽ về chứng khoán là liệu đó có phải là ngày đầu tiên của tháng hay không (khi nhiều người được trả tiền). Sử dụng mô hình mới của chúng tôi, giờ đây chúng tôi có thể tránh các sự kiện chứng khoán này bằng cách đặt hàng trước nhiều đơn vị hơn vào cuối mỗi tháng. Vì vậy, bây giờ "ngày đầu tiên của tháng" sẽ không còn là một công cụ dự đoán hữu ích cho việc dự trữ trong tương lai. Chúng tôi thực sự có thể tính toán xác suất chính xác của một chứng khoán vào đầu tháng mà chúng tôi đã không đặt hàng trước, nhưng chính xác thì điều này giúp chúng tôi như thế nào?
Jake Westfall

2
Điều này giúp chúng tôi bởi vì nó cung cấp cho bạn một xác suất chính xác của một kho dự trữ đã không xảy ra việc bổ sung. OP đang hỏi "làm thế nào để đối phó" với thực tế là một mô hình làm giảm sự xuất hiện của chứng khoán sẽ không có nhiều lần xuất kho trong dữ liệu thô. Quan điểm của tôi là bạn có thể đưa ra những suy luận về sự xuất hiện trái ngược của hàng tồn kho, và sử dụng nó như một sự thay thế. Bạn muốn giúp đỡ kiểu gì?
Sycorax nói Phục hồi lại

1
@Sycorax: Bạn cho rằng hành vi của người mua không bị ảnh hưởng bởi số lượng mặt hàng có thể nhìn thấy trên kệ. Đó là một giả định không hợp lệ. Ảnh hưởng có thể yếu, nhưng nó không vắng mặt.
Ben Voigt

8

Kịch bản của bạn mang rất nhiều điểm tương đồng với Lucas Critique về kinh tế. Trong học máy, đây được gọi là " dịch chuyển dữ liệu ".

Bạn có thể khắc phục nó, như @Sycorax nói, bằng cách mô hình hóa nó một cách rõ ràng.


2

Một điều cần nhớ là ML là một mục tiêu công cụ. Cuối cùng, chúng tôi không muốn dự đoán về các sự kiện chứng khoán, chúng tôi muốn ngăn chặn các sự kiện chứng khoán. Dự đoán ra khỏi các sự kiện chứng khoán chỉ đơn giản là một phương tiện để kết thúc đó. Vì vậy, liên quan đến lỗi Loại II, đây không phải là vấn đề. Hoặc là chúng ta tiếp tục có OOSE, trong trường hợp đó chúng ta có dữ liệu để huấn luyện mô hình của mình, hoặc chúng ta không, trong đó vấn đề mà mô hình được tạo ra để giải quyết đã được giải quyết. Điều có thể là một vấn đề là lỗi loại I. Thật dễ dàng để rơi vào một đội tuần tra gấungụy biện, nơi bạn có một hệ thống X được xây dựng để ngăn chặn Y, bạn không thấy Y, vì vậy bạn kết luận rằng X ngăn chặn Y và mọi nỗ lực để tắt X đều bị loại bỏ trên cơ sở "Nhưng đó là một công việc tốt như vậy ngăn cản Y! " Các tổ chức có thể bị khóa trong các chương trình đắt tiền vì không ai muốn mạo hiểm rằng Y sẽ quay lại và thật khó để tìm hiểu liệu X có thực sự cần thiết hay không mà không cho phép khả năng đó.

Sau đó, nó trở thành một sự đánh đổi về mức độ đôi khi bạn sẵn sàng tham gia (theo mô hình của bạn) hành vi dưới mức tối ưu để có được một nhóm kiểm soát. Đó là một phần của bất kỳ hoạt động thăm dò tích cực nào: nếu bạn có một loại thuốc mà bạn cho là hiệu quả, bạn phải có một nhóm kiểm soát không nhận được thuốc để xác nhận rằng nó thực sự có hiệu quả.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.