Phi tuyến tính trước lớp Softmax cuối cùng trong mạng nơ ron tích chập


11

Tôi đang nghiên cứu và cố gắng thực hiện các mạng nơ ron tích chập, nhưng tôi cho rằng câu hỏi này áp dụng cho các tri giác đa lớp nói chung.

Các nơ-ron đầu ra trong mạng của tôi biểu thị sự kích hoạt của mỗi lớp: nơ-ron hoạt động mạnh nhất tương ứng với lớp dự đoán cho một đầu vào nhất định. Để xem xét chi phí entropy chéo cho đào tạo, tôi đang thêm một lớp softmax ở cuối mạng, để mỗi giá trị kích hoạt của nơ ron được hiểu là giá trị xác suất.

Câu hỏi của tôi là: các nơ ron trong lớp đầu ra có nên áp dụng hàm phi tuyến tính cho đầu vào không? Trực giác của tôi là không cần thiết:

  • nếu đầu vào của nơ ron đầu ra thứ là sản phẩm chấm giữa một vectơ (đến từ lớp trước) và trọng số cho nơ ron đó,x T θ i x θ iTôixTθTôixθTôi
  • và nếu tôi sử dụng một hàm phi tuyến tính đơn điệu như sigmoid hoặc ReLU
  • thì đầu ra kích hoạt lớn hơn vẫn sẽ tương ứng với lớn nhất , do đó, từ quan điểm này, hàm phi tuyến tính sẽ không thay đổi dự đoán.xTθTôi

Có điều gì đó sai với cách giải thích này? Có một số yếu tố đào tạo mà tôi đang xem xét làm cho đầu ra phi tuyến tính cần thiết?

Và nếu tôi đúng, liệu có gì thay đổi nếu thay vì sử dụng hàm sigmoid tôi sử dụng hàm ReLU , không hoàn toàn đơn điệu?

tối đa(0,xTθTôi)

BIÊN TẬP

Liên quan đến câu trả lời của Karel, câu trả lời về cơ bản là "nó phụ thuộc", đây là một mô tả chi tiết hơn về mạng lưới của tôi và nghi ngờ:

Giả sử tôi có N lớp ẩn và lớp đầu ra của tôi chỉ là lớp softmax trên một tập các nơ-ron đại diện cho các lớp (vì vậy đầu ra dự kiến ​​của tôi là xác suất dữ liệu đầu vào thuộc về mỗi lớp). Giả sử các lớp N-1 đầu tiên có các nơ-ron phi tuyến, sự khác biệt giữa việc sử dụng các nơ-ron phi tuyến và tuyến tính trong lớp ẩn N-th là gì?



Các lớp N-2, N-3, .. 1 tuyến tính hay phi tuyến?
Karel Macek

Các lớp từ 1 (gần nhất với đầu vào) đến N-1 là phi tuyến. Lớp N là lớp ẩn cuối cùng (gần với đầu ra). Lớp softmax là lớp N + 1.
rand

1
Một lớp BN ngay trước softmax thì sao? đó là phi tuyến tính ok? (có được tính là phi tuyến tính không?)
Charlie Parker

Câu trả lời:


11

Bạn không nên sử dụng phi tuyến tính cho lớp cuối cùng trước khi phân loại softmax. Tính phi tuyến tính ReLU (hiện được sử dụng gần như độc quyền) trong trường hợp này chỉ đơn giản là vứt bỏ thông tin mà không cần thêm bất kỳ lợi ích nào. Bạn có thể nhìn vào việc triển khai caffe của AlexNet nổi tiếng để tham khảo về những gì được thực hiện trong thực tế.


2
Một lớp BN ngay trước softmax thì sao? đó là phi tuyến tính ok? (có được tính là phi tuyến tính không?)
Charlie Parker

6

Bạn có thể muốn gửi một giá trị âm vào hàm softmax, để chỉ ra rằng một sự kiện có xác suất thấp. Nếu bạn chuyển các giá trị đầu vào vào một relu, thì mạng sẽ không chuyển bất kỳ độ dốc nào qua các đơn vị mà đầu vào cho relu là âm. Vì vậy, trong khi sức mạnh biểu cảm của softmax không thay đổi, nó có thể sẽ khiến việc học khó hơn rất nhiều.


0

Câu trả lời là không hoặc không. Nó hoàn toàn phụ thuộc vào sự mong đợi của bạn về mạng của bạn. Tôi giả định rằng bạn muốn có một bộ phân loại tốt, có thể áp dụng cho một loạt các vấn đề. Do đó, tính phi tuyến tính có thể hữu ích để nắm bắt các lớp không tầm thường. Sự phi tuyến tính có thể được bao gồm trong lớp cuối cùng trước lớp mềm tối đa hoặc nó có thể nằm trong lớp trước.


Bạn có thể xem chỉnh sửa của tôi?
rand
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.