Tôi đang cố gắng ước tính hàm sin() sử dụng mạng nơ-ron mà tôi đã tự viết. Tôi đã thử nghiệm mạng thần kinh của tôi trên một vấn đề OCR đơn giản đã và nó đã làm việc, nhưng tôi gặp khó khăn khi áp dụng nó để ước tính sin(). Vấn đề của tôi là trong quá trình huấn luyện, lỗi của tôi hội tụ chính xác 50%, vì vậy tôi đoán nó hoàn toàn ngẫu nhiên.Chức năng gần đúng với mạng nơron
Tôi đang sử dụng một nơron đầu vào cho đầu vào (0 đến PI) và một nơron đầu ra cho kết quả. Tôi có một lớp ẩn duy nhất trong đó tôi có thể thay đổi số lượng tế bào thần kinh nhưng hiện tại tôi đang thử khoảng 6-10.
Tôi có cảm giác vấn đề là vì tôi đang sử dụng hàm truyền hình sigmoid (yêu cầu trong ứng dụng của tôi) chỉ xuất ra từ 0 đến 1, trong khi đầu ra cho sin() là giữa -1 và 1. Để cố gắng sửa lỗi này, tôi đã thử nhân đầu ra với 2 và sau đó trừ đi 1, nhưng điều này không khắc phục được sự cố. Tôi nghĩ rằng tôi phải làm một số loại chuyển đổi ở đâu đó để thực hiện công việc này.
Bất kỳ ý tưởng nào?
Nếu bạn quan tâm thấy việc triển khai nghiên cứu về xấp xỉ dựa trên NN, hãy xem [bài khảo sát về tính toán gần đúng] của tôi (https://www.academia.edu/20201007/A_Survey_Of_Techniques_for_Approximate_Computing) có thể trả lời chi tiết câu hỏi của bạn. – user984260