Caffe2 - Giới thiệu
Vài năm gần đây, Học sâu đã trở thành một xu hướng lớn trong Học máy. Nó đã được áp dụng thành công để giải quyết các vấn đề nan giải trước đây trong Vision, Speech Recognition and Natural Language Processing(NLP). Có rất nhiều lĩnh vực khác mà Deep Learning đang được áp dụng và đã cho thấy tính hữu ích của nó.
Caffe (Convolutional Architecture for Fast Feature Embedding) là một khung học tập sâu được phát triển tại Berkeley Vision and Learning Center (BVLC). Dự án Caffe được tạo ra bởi Yangqing Jia trong thời gian tiến sĩ của ông. tại Đại học California - Berkeley. Caffe cung cấp một cách dễ dàng để thử nghiệm học sâu. Nó được viết bằng C ++ và cung cấp các ràng buộc choPython và Matlab.
Nó hỗ trợ nhiều loại kiến trúc học sâu khác nhau như CNN (Mạng thần kinh hợp pháp), LSTM(Bộ nhớ ngắn hạn dài hạn) và FC (Kết nối đầy đủ). Nó hỗ trợ GPU và do đó, lý tưởng cho các môi trường sản xuất liên quan đến mạng thần kinh sâu. Nó cũng hỗ trợ các thư viện hạt nhân dựa trên CPU nhưNVIDIA, Thư viện Mạng thần kinh sâu CUDA (cuDNN) và Thư viện hạt nhân toán học Intel (Intel MKL).
Vào tháng 4 năm 2017, công ty cung cấp dịch vụ mạng xã hội Facebook có trụ sở tại Hoa Kỳ đã công bố Caffe2, hiện bao gồm RNN (Mạng thần kinh tái tạo) và vào tháng 3 năm 2018, Caffe2 đã được sáp nhập vào PyTorch. Những người sáng tạo Caffe2 và các thành viên cộng đồng đã tạo ra các mô hình giải quyết các vấn đề khác nhau. Những người mẫu này có sẵn cho công chúng như những người mẫu được đào tạo trước. Caffe2 giúp người sáng tạo sử dụng các mô hình này và tạo mạng của riêng mình để đưa ra dự đoán trên tập dữ liệu.
Trước khi đi vào chi tiết của Caffe2, chúng ta hãy hiểu sự khác biệt giữa machine learning và deep learning. Điều này là cần thiết để hiểu cách các mô hình được tạo ra và sử dụng trong Caffe2.
Học máy v / s Học sâu
Trong bất kỳ thuật toán học máy nào, dù là thuật toán truyền thống hay học sâu, việc lựa chọn các tính năng trong tập dữ liệu đóng một vai trò cực kỳ quan trọng để có được độ chính xác dự đoán mong muốn. Trong các kỹ thuật học máy truyền thống,feature selectionđược thực hiện hầu hết bằng sự kiểm tra, phán đoán của con người và kiến thức miền sâu. Đôi khi, bạn có thể tìm kiếm sự trợ giúp từ một số thuật toán đã được thử nghiệm để lựa chọn tính năng.
Luồng học máy truyền thống được mô tả trong hình bên dưới -
Trong học sâu, việc lựa chọn tính năng là tự động và là một phần của chính thuật toán học sâu. Điều này được thể hiện trong hình bên dưới -
Trong thuật toán học sâu, feature engineeringđược thực hiện tự động. Nói chung, kỹ thuật tính năng tốn nhiều thời gian và đòi hỏi chuyên môn giỏi về miền. Để thực hiện trích xuất tính năng tự động, các thuật toán học sâu thường yêu cầu lượng dữ liệu khổng lồ, vì vậy nếu bạn chỉ có hàng nghìn và hàng chục nghìn điểm dữ liệu, kỹ thuật học sâu có thể không mang lại cho bạn kết quả như ý.
Với dữ liệu lớn hơn, các thuật toán học sâu tạo ra kết quả tốt hơn so với các thuật toán ML truyền thống với lợi thế bổ sung là ít hoặc không có kỹ thuật tính năng.