Học máy: Đầu vào đơn cho số lượng đầu ra thay đổi


8

Có một thuật toán học máy ánh xạ một đầu vào duy nhất vào một danh sách đầu ra có độ dài thay đổi không? Nếu vậy, có bất kỳ triển khai thuật toán cho sử dụng công cộng? Nếu không, bạn đề nghị gì như một cách giải quyết?

Trong trường hợp của tôi, đầu vào là một vô hướng và đầu ra là một danh sách các vô hướng có độ dài thay đổi. Ví dụ: giả sử tôi muốn xuất ra một danh sách các danh sách có độ dài của danh sách làm đầu vào. Sau đó, <đầu vào, đầu ra> có thể là <1, [1]>, <2, [1, 1]>, v.v. Một điều chỉnh nhỏ sẽ cung cấp căn bậc hai của độ dài trong trường hợp <2, [1, 1 , 1, 1]> sẽ là một câu trả lời. Lưu ý: đầu vào không cần phải được gắn trực tiếp với đầu ra.


Đối với một ví dụ phức tạp hơn, giả sử tôi muốn tìm hiểu trình tự nhìn và nói . Các cặp <đầu vào, đầu ra> hợp lệ sẽ là: <1, [1]>, <2, [1, 1]>, <3, [2, 1]>, <4, [1, 2, 1, 1] >, <5, [1, 1, 1, 2, 2, 1]>, v.v ... Vấn đề của tôi cũng tương tự ở chỗ tôi có thể tạo ra nhiều ví dụ hơn; Tôi không bị giới hạn trong một tập hợp các ví dụ hữu hạn.


Bạn có thể cho một ví dụ về những gì bạn có ý nghĩa? Tôi bối rối không biết bạn đang hỏi về một biến đầu vào duy nhất được ánh xạ tới nhiều biến đầu ra khác nhau hay một biến đầu vào duy nhất được ánh xạ tới một danh sách của cùng một biến.
NBartley

2
Tất cả các ví dụ mà bạn đã chỉ ra cho đến nay đều có một đầu ra duy nhất có thể được ánh xạ xác định vào một danh sách độ dài thay đổi. Đây là đầu vào / đầu ra đơn: <1,1>, <2,2>, <2,4> và một tập lệnh xác định đơn giản có thể biến điều này thành <1, [1]>, <2, [1,1 ]>, <2, [1,1,1,1]>. Tôi đề nghị bạn chia vấn đề thành phần học máy và phần xác định.
AN6U5

Cảm ơn vì đã cho thêm thông tin. Tuy nhiên, tôi không nghĩ rằng có đủ thông tin được cung cấp để hình thành một phản hồi vượt ra ngoài một cuộc thảo luận heuristic cấp cao như đã thấy trong câu trả lời được cung cấp. Các ràng buộc không giới hạn loại trừ các thuật toán phân loại như được thảo luận dưới đây, vì vậy điều này trông giống như một vấn đề đối với Mô hình Markov ẩn. Nhưng ví dụ bạn cung cấp vẫn thiếu một thành phần thống kê chỉ ra giải pháp bằng phương pháp học thống kê. Là "chuỗi tìm và nói" là vấn đề thực sự hay có một bộ dữ liệu được phân phối thống kê mà bạn đang thực sự làm việc với?
AN6U5

Vấn đề thực sự tôi quan tâm là Conjuecture Collatz . Cụ thể, những hiểu biết nào tôi có thể đạt được từ một thuật toán học tập cố gắng học < số Mersenne , chuỗi hailstone>.
ricksmt

1
Off-topic vì câu hỏi là một vấn đề toán học thuần túy xác định được đúc lại trong vỏ bọc của máy học. Một mẫu thống kê không được cung cấp, thay vào đó, một tập hợp nhỏ các trường hợp từ một chuỗi toán học vô hạn được tham chiếu. OP đang hy vọng khôi phục mối quan hệ phi tuyến giữa tính năng đầu vào và danh sách các số nguyên tố tương ứng với Số Mersenne của tính năng đầu vào. Điều này không được đặt ra tốt, cũng không nằm trong danh sách chủ đề khoa học dữ liệu.
AN6U5

Câu trả lời:


2

Tôi sẽ cố gắng thiết lập một thuật toán phân loại đa nhãn và tạo tiêu chuẩn đầu ra bằng cách thêm các số không. Vì vậy, nếu dữ liệu của bạn như thế này: <1, 1 >, <2, [1, 1]>, <3, [2, 1]>, <4, [1, 2, 1, 1]>, <5 , [1, 1, 1, 2, 2, 1]>. Số lượng đầu ra tối đa là 6. Vì vậy, bạn có thể chuyển đổi dữ liệu của mình thành một cái gì đó như: <1, [1,0,0,0,0,0]>, <2, [1, 1,0,0,0, 0]>, <3, [2, 1,0,0,0,0]>, <4, [1, 2, 1, 1,0,0]>, <5, [1, 1, 1, 2, 2, 1]>

Một tùy chọn khác xảy ra với tôi là thêm giới hạn động. Giả sử bạn có tập huấn luyện và kiểm tra. Bạn có thể tìm kiếm độ dài lớn nhất và tạo một thuật toán thêm các số không vào cả hai tập dữ liệu. Sau đó, giả sử một dữ liệu mới mà bạn muốn dự đoán có độ dài lớn hơn, sau đó bạn sẽ cần tính toán lại tất cả các khóa đào tạo và kiểm tra cho dự đoán mới này. Bạn thậm chí có thể kiểm tra việc mở rộng giới hạn ảnh hưởng đến mô hình của bạn như thế nào.


Điều này không khả thi nếu không có độ dài tối đa, đúng không?
ricksmt

vâng, đó là một vấn đề nếu bạn không có giới hạn. Hãy để tôi chỉnh sửa câu trả lời
hoaphumanoid

Đó là một cách giải quyết hợp lý. Bất kỳ câu trả lời cho câu hỏi đầu tiên? Có một thuật toán có thể tạo ra một số lượng đầu ra khác nhau không?
ricksmt

Tôi xin lỗi nhưng nó không xảy ra với tôi. Tôi không biết làm thế nào một đầu ra biến có thể được quản lý theo toán học. Tôi đã luôn làm việc với đầu vào và đầu ra cố định.
hoaphumanoid

Đừng lo lắng. Tôi chưa bao giờ nghe nói về một thuật toán như vậy, vì vậy tôi không ngạc nhiên khi nó chưa được thực hiện. Và theo như tôi biết, hầu hết các tập dữ liệu mà mọi người quan tâm đều có thể hoặc có thể được thiết lập với độ dài đầu vào và đầu ra cố định. Tôi sẽ đợi vài ngày trong trường hợp người khác biết điều gì đó chúng tôi không biết, nhưng đây là những gì tôi mong đợi.
ricksmt

1

Vì vậy, một vài cách có thể được hình thành:

  1. @Miguel Gonzalez-Câu trả lời của Fierro về đệm 0. có lẽ là dễ thực hiện nhất và có ý nghĩa
  2. Nếu phần đệm không hợp lý cho vấn đề của bạn, nếu đầu ra của bạn là một chuỗi thời gian, bạn có thể tìm hiểu mô hình dịch thuật thần kinh các loại và có mã thông báo STOP / END trong đầu ra của bạn.
  3. Có một mô hình dựa trên trình tạo (như thay đổi trên VAE) và sau đó tạo ra một loạt các đầu vào có thể, và bạn có thể lấy bất kỳ số lần rút nào đủ tiêu chí (như chế độ có ít thay đổi có một số thông tin có điều kiện được tính toán).

Có lẽ có những người khác, nhưng tôi không thể nghĩ về họ ngay bây giờ.

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.