Vì vậy, tôi đã cố gắng tìm hiểu các mạng lưới thần kinh kể từ khi tôi bắt gặp blog của Adam Geitgey về học máy. Tôi đã đọc nhiều nhất có thể về chủ đề này (mà tôi có thể nắm bắt được) và tin rằng tôi hiểu tất cả các khái niệm rộng và một số hoạt động (mặc dù rất yếu về toán học), tế bào thần kinh, khớp thần kinh, trọng số, chức năng chi phí, truyền bá vv Tuy nhiên, tôi đã không thể tìm ra cách dịch các vấn đề trong thế giới thực thành một giải pháp mạng thần kinh.
Trường hợp cụ thể, Adam Geitgey đưa ra như một ví dụ sử dụng, một hệ thống dự đoán giá nhà trong đó được cung cấp một bộ dữ liệu có chứa Số phòng ngủ , Sq. feet , Vùng lân cận và giá bán bạn có thể đào tạo một mạng lưới thần kinh để có thể dự đoán giá của một ngôi nhà. Tuy nhiên, ông dừng việc thực hiện một giải pháp khả thi trong mã. Ví dụ gần nhất anh ta có được là một chức năng cơ bản thể hiện cách bạn thực hiện các trọng số:
def estimate_house_sales_price(num_of_bedrooms, sqft, neighborhood):
price = 0
# a little pinch of this
price += num_of_bedrooms * 1.0
# and a big pinch of that
price += sqft * 1.0
# maybe a handful of this
price += neighborhood * 1.0
# and finally, just a little extra salt for good measure
price += 1.0
return price
Các tài nguyên khác dường như tập trung nhiều hơn vào toán học và ví dụ mã cơ bản duy nhất tôi có thể thấy rằng tôi hiểu (nghĩa là không phải tất cả ca hát, tất cả các cơ sở phân loại hình ảnh nhảy múa) là một triển khai đào tạo một mạng lưới thần kinh để trở thành một XOR cổng chỉ giao dịch trong 1 và 0.
Vì vậy, có một lỗ hổng trong kiến thức của tôi mà tôi dường như không thể thu hẹp. Nếu chúng ta quay trở lại vấn đề dự đoán giá nhà , có phải ai cũng làm cho dữ liệu phù hợp để đưa vào mạng lưới thần kinh không? Ví dụ:
- Số phòng ngủ: 3
- Sq. chân: 2000
- Khu phố: Khu phố bình thường
- Giá bán: 250.000 USD
Bạn có thể chỉ cần cung cấp 3 và 2000 trực tiếp vào mạng thần kinh vì chúng là số? Hay bạn cần phải biến đổi chúng thành một cái gì đó khác? Tương tự như vậy về giá trị của Normaltown , đó là một chuỗi, làm thế nào để bạn dịch nó thành một giá trị mà mạng lưới thần kinh có thể hiểu được? Bạn có thể chọn một số, như một chỉ mục, miễn là nó nhất quán trong toàn bộ dữ liệu?
Hầu hết các ví dụ về mạng thần kinh mà tôi đã thấy các số chuyển qua giữa các lớp là 0 đến 1 hoặc -1 đến 1. Vì vậy, khi kết thúc quá trình xử lý, làm thế nào để bạn chuyển đổi giá trị đầu ra thành thứ gì đó có thể sử dụng được như $ 185.000 ?
Tôi biết ví dụ dự đoán giá nhà có lẽ không phải là một vấn đề đặc biệt hữu ích vì nó đã được áp dụng ồ ạt chỉ với ba điểm dữ liệu. Nhưng tôi chỉ cảm thấy rằng nếu tôi có thể vượt qua rào cản này và viết một ứng dụng cực kỳ cơ bản, đào tạo bằng cách sử dụng dữ liệu thực tế giả và đưa ra một câu trả lời giả thực hơn là tôi đã phá vỡ mặt sau của nó và có thể đá trên và đi sâu vào học máy.