Tôi đã có cùng một vấn đề và giải quyết với điều này Show
Thêm
Tìm thấy trên Tài liệu CẬP NHẬT Có liên kết mới cho các phiên bản mới Ví dụ: để cài đặt tenorflow v1. 0. 0 trong OSX bạn cần sử dụng
thay vì PyTorch so với TensorFlow. Có gì khác biệt? . Cả hai đều được sử dụng rộng rãi trong nghiên cứu học thuật và mã thương mại. Cả hai đều được mở rộng bởi nhiều API, nền tảng điện toán đám mây và kho lưu trữ mô hình Nếu chúng quá giống nhau, thì cái nào là tốt nhất cho dự án của bạn? Trong hướng dẫn này, bạn sẽ học
Bạn sẽ bắt đầu bằng cách xem xét kỹ cả hai nền tảng, bắt đầu với TensorFlow cũ hơn một chút, trước khi khám phá một số cân nhắc có thể giúp bạn xác định lựa chọn nào là tốt nhất cho dự án của mình. Bắt đầu nào Tiền thưởng miễn phí. Nhấp vào đây để nhận Bảng cheat Python và tìm hiểu kiến thức cơ bản về Python 3, như làm việc với các kiểu dữ liệu, từ điển, danh sách và hàm Python TensorFlow là gì?TensorFlow được Google phát triển và phát hành dưới dạng mã nguồn mở vào năm 2015. Nó phát triển từ phần mềm học máy do Google sản xuất, được tái cấu trúc và tối ưu hóa để sử dụng trong sản xuất Cái tên “TensorFlow” mô tả cách bạn tổ chức và thực hiện các thao tác trên dữ liệu. Cấu trúc dữ liệu cơ bản cho cả TensorFlow và PyTorch là một tensor. Khi bạn sử dụng TensorFlow, bạn thực hiện các thao tác trên dữ liệu trong các tenxơ này bằng cách xây dựng một biểu đồ luồng dữ liệu có trạng thái, giống như một lưu đồ ghi nhớ các sự kiện trong quá khứ Loại bỏ các quảng cáoAi sử dụng TensorFlow?TensorFlow nổi tiếng là một thư viện deep learning cấp sản xuất. Nó có cơ sở người dùng lớn và tích cực, đồng thời phổ biến các công cụ và nền tảng chính thức và bên thứ ba để đào tạo, triển khai và phục vụ các mô hình Sau khi PyTorch được phát hành vào năm 2016, TensorFlow đã giảm mức độ phổ biến. Nhưng vào cuối năm 2019, Google đã phát hành TensorFlow 2. 0, một bản cập nhật lớn giúp đơn giản hóa thư viện và làm cho nó thân thiện hơn với người dùng, dẫn đến sự quan tâm mới trong cộng đồng máy học Kiểu mã và chức năngTrước TensorFlow 2. 0, TensorFlow yêu cầu bạn ghép thủ công một cây cú pháp trừu tượng—biểu đồ—bằng cách thực hiện lệnh gọi API Một đối tượng Trong TenorFlow 2. 0, bạn vẫn có thể xây dựng các mô hình theo cách này, nhưng sẽ dễ dàng hơn khi sử dụng thực thi háo hức, đó là cách Python thường hoạt động. Quá trình thực thi háo hức đánh giá các hoạt động ngay lập tức, vì vậy bạn có thể viết mã của mình bằng luồng điều khiển Python thay vì luồng điều khiển biểu đồ Để thấy sự khác biệt, hãy xem cách bạn có thể nhân hai tenxơ bằng mỗi phương pháp. Đây là một ví dụ sử dụng TensorFlow 1 cũ. 0 phương pháp >>>
Mã này sử dụng TensorFlow 2. API 0 của x để truy cập TensorFlow 1. x và vô hiệu hóa thực thi háo hứcTrước tiên, bạn khai báo các tenxơ đầu vào 1 và 2 bằng cách sử dụng các đối tượng tenxơ 3. Sau đó, bạn xác định thao tác để thực hiện trên chúng. Tiếp theo, sử dụng đối tượng 4 làm trình quản lý bối cảnh, bạn tạo một vùng chứa để đóng gói môi trường thời gian chạy và thực hiện phép nhân bằng cách cung cấp các giá trị thực vào các trình giữ chỗ bằng một 5. Cuối cùng, vẫn còn trong phiên, bạn 6 kết quảVới khả năng thực thi háo hức trong TensorFlow 2. 0, tất cả những gì bạn cần là 7 để đạt được kết quả tương tự>>>
Trong mã này, bạn khai báo các tenxơ của mình bằng cách sử dụng ký hiệu danh sách Python và 7 thực hiện phép nhân theo phần tử ngay lập tức khi bạn gọi nóNếu bạn không muốn hoặc không cần xây dựng các thành phần cấp thấp, thì cách được khuyến nghị để sử dụng TensorFlow là Keras. Nó có các API đơn giản hơn, cuộn các trường hợp sử dụng phổ biến thành các thành phần đúc sẵn cho bạn và cung cấp các thông báo lỗi tốt hơn so với TensorFlow cơ sở Tính năng đặc biệtTensorFlow có cơ sở người dùng lớn và lâu đời cũng như rất nhiều công cụ để giúp sản xuất máy học. Để phát triển thiết bị di động, nó có API cho JavaScript và Swift, đồng thời TensorFlow Lite cho phép bạn nén và tối ưu hóa các mô hình cho thiết bị Internet of Things Bạn có thể bắt đầu sử dụng TensorFlow một cách nhanh chóng nhờ có nhiều dữ liệu, mô hình được đào tạo trước và sổ ghi chép Google Colab mà cả Google và các bên thứ ba đều cung cấp Nhiều bộ dữ liệu và thuật toán học máy phổ biến được tích hợp vào TensorFlow và sẵn sàng sử dụng. Ngoài các bộ dữ liệu tích hợp sẵn, bạn có thể truy cập bộ dữ liệu Nghiên cứu của Google hoặc sử dụng Tìm kiếm bộ dữ liệu của Google để tìm thêm Keras giúp thiết lập và chạy các mô hình dễ dàng hơn, vì vậy bạn có thể thử các kỹ thuật mới trong thời gian ngắn hơn. Thật vậy, Keras là framework deep learning được sử dụng nhiều nhất trong số năm nhóm chiến thắng hàng đầu trên Kaggle Một nhược điểm là bản cập nhật từ TensorFlow 1. x sang TensorFlow 2. 0 đã thay đổi rất nhiều tính năng mà bạn có thể cảm thấy bối rối. Nâng cấp mã là tẻ nhạt và dễ bị lỗi. Nhiều tài nguyên, chẳng hạn như hướng dẫn, có thể chứa lời khuyên lỗi thời PyTorch không có cùng một vấn đề lớn về khả năng tương thích ngược, đó có thể là lý do để chọn nó thay vì TensorFlow Loại bỏ các quảng cáoHệ sinh thái kéo căngMột số điểm nổi bật về API, tiện ích mở rộng và công cụ hữu ích của hệ sinh thái mở rộng TensorFlow bao gồm
PyTorch là gì?PyTorch được phát triển bởi Facebook và được phát hành lần đầu tiên vào năm 2016. Nó được tạo ra để cung cấp các tối ưu hóa sản xuất tương tự như TensorFlow trong khi làm cho các mô hình dễ viết hơn Vì các lập trình viên Python thấy việc sử dụng nó rất tự nhiên nên PyTorch đã nhanh chóng có được người dùng, truyền cảm hứng cho nhóm TensorFlow áp dụng nhiều tính năng phổ biến nhất của PyTorch trong TensorFlow 2. 0 Ai sử dụng PyTorch?PyTorch nổi tiếng là được sử dụng rộng rãi trong nghiên cứu hơn là sản xuất. Tuy nhiên, kể từ khi được phát hành vào năm sau TensorFlow, PyTorch đã chứng kiến sự gia tăng mạnh mẽ về mức độ sử dụng của các nhà phát triển chuyên nghiệp Danh sách các “Khuôn khổ, Thư viện và Công cụ khác” phổ biến nhất báo cáo rằng 10. 4 phần trăm các nhà phát triển chuyên nghiệp chọn TensorFlow và 4. 1 phần trăm chọn PyTorch. Trong , tỷ lệ phần trăm là 7. 6 phần trăm cho TensorFlow và chỉ 1. 6 phần trăm cho PyTorch Đối với nghiên cứu, PyTorch là một lựa chọn phổ biến và các chương trình khoa học máy tính như của Stanford hiện sử dụng nó để dạy học sâu Kiểu mã và chức năngPyTorch dựa trên Torch, một khung để thực hiện tính toán nhanh được viết bằng C. Torch có trình bao bọc Lua để xây dựng mô hình PyTorch kết thúc cùng một mặt sau C trong giao diện Python. Nhưng nó không chỉ là một cái bao bọc. Các nhà phát triển đã xây dựng nó từ đầu để làm cho các mô hình dễ viết cho các lập trình viên Python. Mã C và C++ cơ bản, cấp thấp được tối ưu hóa để chạy mã Python. Vì sự tích hợp chặt chẽ này, bạn có được
Điều đó có nghĩa là bạn có thể viết trực tiếp các thành phần mạng thần kinh tùy chỉnh cao bằng Python mà không phải sử dụng nhiều hàm cấp thấp. Khả năng thực thi háo hức của PyTorch, đánh giá các hoạt động tensor ngay lập tức và linh hoạt, đã truyền cảm hứng cho TensorFlow 2. 0, vì vậy các API cho cả hai trông rất giống nhau Việc chuyển đổi các đối tượng NumPy thành tensors được đưa vào cấu trúc dữ liệu cốt lõi của PyTorch. Điều đó có nghĩa là bạn có thể dễ dàng chuyển đổi qua lại giữa 9 đối tượng và 0 đối tượngVí dụ: bạn có thể sử dụng hỗ trợ riêng của PyTorch để chuyển đổi mảng NumPy thành tensors để tạo hai đối tượng 0, biến mỗi đối tượng thành một đối tượng 9 bằng cách sử dụng 3, sau đó lấy tích phần tử thông minh của chúng>>>
Sử dụng 4 cho phép bạn in ra kết quả của phép nhân ma trận—là đối tượng 9—dưới dạng đối tượng 0Sự khác biệt quan trọng nhất giữa đối tượng 9 và đối tượng 0 là lớp 9 có các phương thức và thuộc tính khác nhau, chẳng hạn như , tính toán độ dốc và khả năng tương thích CUDALoại bỏ các quảng cáoTính năng đặc biệtPyTorch thêm một mô-đun C++ để tự động phân biệt vào phụ trợ Torch. Autodifferentiation tự động tính toán độ dốc của các chức năng được xác định trong Theo mặc định, PyTorch sử dụng tính toán chế độ háo hức. Bạn có thể chạy một mạng lưới thần kinh khi bạn xây dựng nó, từng dòng một, giúp gỡ lỗi dễ dàng hơn. Nó cũng cho phép xây dựng mạng lưới thần kinh với việc thực thi có điều kiện. Việc thực thi động này trực quan hơn đối với hầu hết các lập trình viên Python Hệ sinh thái PyTorchMột số điểm nổi bật về API, tiện ích mở rộng và công cụ hữu ích của hệ sinh thái mở rộng PyTorch bao gồm
Hướng dẫn quyết định PyTorch vs TensorFlowViệc sử dụng thư viện nào tùy thuộc vào phong cách và sở thích của riêng bạn, dữ liệu và mô hình của bạn cũng như mục tiêu dự án của bạn. Khi bạn bắt đầu dự án của mình với một nghiên cứu nhỏ về thư viện nào hỗ trợ tốt nhất ba yếu tố này, bạn sẽ sẵn sàng để thành công Phong cáchNếu bạn là một lập trình viên Python, thì PyTorch sẽ dễ dàng tiếp nhận. Nó hoạt động theo cách bạn mong đợi, ngay lập tức Mặt khác, nhiều ngôn ngữ lập trình được hỗ trợ trong TensorFlow hơn trong PyTorch, vốn có API C++. Bạn có thể sử dụng TensorFlow trong cả JavaScript và Swift. Nếu bạn không muốn viết nhiều mã cấp thấp, thì Keras sẽ tóm tắt rất nhiều chi tiết cho các trường hợp sử dụng phổ biến để bạn có thể xây dựng các mô hình TensorFlow mà không cần tốn nhiều chi tiết Dữ liệu và Mô hìnhNhững mô hình bạn đang sử dụng? . Một số mô hình được đào tạo trước chỉ có sẵn trong thư viện này hoặc thư viện kia và một số mô hình có sẵn trên cả hai. Model Garden và các trung tâm PyTorch và TensorFlow cũng là những tài nguyên tốt để kiểm tra Bạn cần dữ liệu gì? . Kiểm tra các tài liệu để xem—nó sẽ giúp quá trình phát triển của bạn diễn ra nhanh hơn Mục tiêu dự ánMô hình của bạn sẽ sống ở đâu? . Đối với các mô hình phục vụ, TensorFlow tích hợp chặt chẽ với Google Cloud, nhưng PyTorch được tích hợp vào TorchServe trên AWS. Nếu bạn muốn tham gia các cuộc thi Kaggle, thì Keras sẽ cho phép bạn nhanh chóng lặp lại các thử nghiệm Hãy suy nghĩ về những câu hỏi và ví dụ này khi bắt đầu dự án của bạn. Xác định hai hoặc ba thành phần quan trọng nhất và TensorFlow hoặc PyTorch sẽ nổi lên như một lựa chọn đúng đắn Phần kết luậnTrong hướng dẫn này, bạn đã được giới thiệu về PyTorch và TensorFlow, xem ai sử dụng chúng và API nào chúng hỗ trợ, đồng thời học cách chọn PyTorch và TensorFlow cho dự án của bạn. Bạn đã thấy các ngôn ngữ lập trình, công cụ, bộ dữ liệu và mô hình khác nhau mà mỗi ngôn ngữ lập trình hỗ trợ và học cách chọn ngôn ngữ nào phù hợp nhất với phong cách và dự án độc đáo của bạn Trong hướng dẫn này, bạn đã học
Bây giờ bạn đã quyết định sử dụng thư viện nào, bạn đã sẵn sàng bắt đầu xây dựng mạng lưới thần kinh với chúng. Kiểm tra các liên kết trong Đọc thêm để biết ý tưởng Loại bỏ các quảng cáoĐọc thêmCác hướng dẫn sau đây là một cách tuyệt vời để thực hành với PyTorch và TensorFlow
Đánh dấu là đã hoàn thành 🐍 Thủ thuật Python 💌 Nhận một Thủ thuật Python ngắn và hấp dẫn được gửi đến hộp thư đến của bạn vài ngày một lần. Không có thư rác bao giờ. Hủy đăng ký bất cứ lúc nào. Được quản lý bởi nhóm Real Python Gửi cho tôi thủ thuật Python » Giới thiệu về Ray Johns Ray là một Pythonista cuồng nhiệt và viết cho Real Python » Thông tin thêm về RayMỗi hướng dẫn tại Real Python được tạo bởi một nhóm các nhà phát triển để nó đáp ứng các tiêu chuẩn chất lượng cao của chúng tôi. Các thành viên trong nhóm đã làm việc trong hướng dẫn này là Aldren David Geir Arne Joanna Gia-cốp Bậc thầy Kỹ năng Python trong thế giới thực Với quyền truy cập không giới hạn vào Python thực Tham gia với chúng tôi và có quyền truy cập vào hàng nghìn hướng dẫn, khóa học video thực hành và cộng đồng các Pythonistas chuyên gia Nâng cao kỹ năng Python của bạn » Chuyên gia Kỹ năng Python trong thế giới thực Tham gia với chúng tôi và có quyền truy cập vào hàng ngàn hướng dẫn, khóa học video thực hành và cộng đồng Pythonistas chuyên gia Nâng cao kỹ năng Python của bạn » Bạn nghĩ sao? Đánh giá bài viết này Tweet Chia sẻ Chia sẻ EmailBài học số 1 hoặc điều yêu thích mà bạn đã học được là gì? Mẹo bình luận. Những nhận xét hữu ích nhất là những nhận xét được viết với mục đích học hỏi hoặc giúp đỡ các sinh viên khác. và nhận câu trả lời cho các câu hỏi phổ biến trong cổng thông tin hỗ trợ của chúng tôi TensorFlow là Python hay Java?Chúng tôi khuyên dùng Python để sử dụng TensorFlow một cách hiệu quả nhất . Các ngôn ngữ lập trình khác (chẳng hạn như C++ và Java) tương thích nhưng có thể không ổn định bằng. May mắn thay, ngày nay có rất nhiều thư viện Python ML để lựa chọn. Bạn cũng cần có kiến thức chuyên sâu phù hợp về học máy.
TensorFlow là C++ hay Python?TensorFlow là một thư viện mã nguồn mở thân thiện với Python để tính toán số giúp máy học và phát triển mạng lưới thần kinh nhanh hơn và dễ dàng hơn
Ngôn ngữ nào sử dụng TensorFlow?TensorFlow là một khung máy học mã nguồn mở và Python là ngôn ngữ lập trình máy tính phổ biến. Đó là một trong những ngôn ngữ được sử dụng trong TensorFlow. Python là ngôn ngữ được đề xuất cho TensorFlow, mặc dù nó cũng sử dụng C++ và JavaScript .
TensorFlow có được sử dụng với C++ không?Tensorflow được xây dựng bằng C++ và nó cung cấp API để giúp việc triển khai các mô hình (và thậm chí đào tạo các mô hình nếu bạn muốn) trong C++ trở nên tương đối dễ dàng hơn. |