Danh mục sản phẩm

Công nghệ

Review

Hướng dẫn

Tuyển dụng

Tin tức khuyến mại

Tin tức build PC

Làm thế nào để lựa chọn một nền tảng AI phù hợp nhất?

khanhninh 02-01-2021, 4:51 am

Ngày càng có nhiều ứng dụng AI. Hầu hết framework hoặc nền tảng phát triển là mã nguồn mở. Làm thế nào để người mới bắt đầu có thể chọn một môi trường phát triển phù hợp với họ?

  • Đối với môi trường phát triển sử dụng Linux làm hệ điều hành, nó có thể được chia thành phần mềm quản lý, nền tảng phát triển (development platforms) và  frameworks theo hệ thống phân cấp.
  • Phần mềm quản lý thường đề cập đến quản lý phần cứng, Python và các hệ thống giám sát và quản lý phiên bản công cụ khác, trong đó phổ biến nhất là Kubernetes, Docker hoặc Anaconda.
  • Nền tảng phát triển là một hệ thống cấp cao hơn. Chức năng chính của nó là cung cấp môi trường để người dùng viết chương trình dễ dàng. Thông thường, nó bao gồm Jupyter Notebook, JupyterLab, PyCharm hoặc Visual Studio Code.
  • Framework là một bộ công cụ phát triển triển khai học máy hoặc học sâu ở cấp độ cao hơn. Có rất nhiều loại framework, và có những nền tảng phù hợp theo thói quen cá nhân hoặc loại ứng dụng, chẳng hạn như TensorFlow, PyTorch hoặc Caffe, sẽ được giới thiệu dưới đây tùy theo môi trường người dùng khác nhau.

Có rất nhiều phần mềm quản lý, nền tảng phát triển hoặc framework, vì vậy chúng tôi sẽ không giới thiệu tất cả từng cái một trong bài viết này. Chúng tôi sẽ chỉ tập trung vào môi trường AI phù hợp nhất cho các loại người dùng khác nhau.

Nhà phát triển cá nhân - Individual Developer

Môi trường nhà phát triển cá nhân chủ yếu cài đặt hệ thống ở đầu cục bộ. Người ta thường thiết lập Anaconda trong hệ thống để chuyển đổi giữa và quản lý các dự án. Anaconda cài đặt khung học sâu thông qua cài đặt pip.

Ưu điểm:

  • Có thể chuyển đổi giữa các phiên bản Python hoặc framework khác nhau

Nhược điểm:

  • Yêu cầu dung lượng ổ cứng lớn
  • Một số Preinstallation Kit được cài đặt sẵn có thể hoàn toàn không được sử dụng
  • Khi các phiên bản của CUDA Toolkit có thể được sử dụng cho nhiều phiên bản của framework khác nhau, nhà phát triển phải chuyển đến môi trường ảo của từng phiên bản framework để định cấu hình cài đặt môi trường CUDA Toolkit.

Những nhược điểm trên rất dễ gặp phải bởi các nhà phát triển cá nhân. Ví dụ: dự án trước có thể sử dụng TensorFlow 1.12 và CUDA Toolkit phiên bản 10.0, nhưng dự án mới sử dụng TensorFlow 1.15. Tại thời điểm này, bạn phải nâng cấp phiên bản CUDA Toolkit lên 10.2. Khi cả dự án cũ và dự án mới có thể được thực hiện cùng một lúc, phiên bản CUDA Toolkit được sử dụng bởi cả hai phải được đặt riêng biệt trong hai môi trường ảo.

Do đó, theo Leadtek AI Expert, họ khuyên nên sử dụng Docker làm phần mềm quản lý. Docker bao gồm những lợi thế của Anaconda và nó giúp tiết kiệm những phức tạp khi thiết lập môi trường.

Ưu điểm:

  • Các môi trường phát triển khác nhau bao gồm một hệ điều hành nhẹ, như máy ảo; mỗi người có một môi trường phát triển độc lập
  • Có các phiên bản nguồn mở chính thức của các framework chính thống có thể được tải xuống trực tiếp từ Docker Hub, loại bỏ các quy trình cài đặt phức tạp
  • NVIDIA cung cấp công cụ plugin nvidia-docker và các dịch vụ Docker có thể bao gồm tài nguyên GPU.
  • Có thể kết hợp với các nền tảng phát triển chung như Jupyter Notebook hoặc Visual Studio Code.

Có bất kỳ nhược điểm hoặc biện pháp phòng ngừa nào khi sử dụng Docker không?

Môi trường Docker chứa hệ điều hành (nhẹ), nền tảng phát triển và Framework nói trên. Môi trường thường chiếm 4-7GB dung lượng. Nếu tiếp tục cài đặt gói, nhiều dung lượng ổ cứng sẽ bị tiêu tốn. Đây là điều quan trọng cần lưu ý trong việc thiết lập bất kỳ môi trường ảo nào.

Đối với lựa chọn Jupyter Notebook hoặc Visual Studio Code cho lớp trên, cả hai đều có người dùng riêng. Ưu điểm của Visual Studio Code là nó kế thừa những ưu điểm của nền tảng Visual Studio và dễ gỡ lỗi, còn Jupyter Notebook có chức năng phát triển và chú thích mạnh mẽ để dễ dàng hướng dẫn. Ngày nay, Visual Studio Code có thể được kết hợp với Jupyter Notebook, đây là một điểm cộng lớn cho các nhà phát triển.

(tham khảo Jupyter Notebook : https://code.visualstudio.com/docs/python/jupyter-support )

Đối với các framework học sâu, mỗi framework đều có những người dùng và chức năng theo thói quen, điều này sẽ không được giới thiệu chi tiết trong bài viết này. Tuy nhiên, các framework mà hầu hết các nhà phát triển hiện đang sử dụng đều là TensorFlow và PyTorch. Trước đây được phát triển và duy trì bởi nhóm Google; nó cũng hỗ trợ nhiều ngôn ngữ và hiện là Framework được sử dụng nhiều nhất. Sau này được phát triển cho nhóm AI của Facebook. Cũng có nhiều người ủng hộ, nên nó đã phát triển nhanh chóng trong hai năm qua và có động lực để bắt kịp với TensorFlow. Bất kể framework nào được sử dụng, Python vẫn là ngôn ngữ lập trình được yêu cầu nhiều nhất để phát triển AI.

Đơn vị nghiên cứu nhỏ

Các đơn vị nghiên cứu nhỏ thường có nhóm phát triển AI từ 2 đến 10 người. Học sâu tiêu tốn một lượng lớn tài nguyên phần cứng trong quá trình xây dựng mô hình, trong đó phần cứng quan trọng nhất là GPU. Tài nguyên GPU rất quan trọng đối với tiến trình làm việc nhóm trôi chảy.

Phần mềm quản lý được đề xuất nhiều nhất cho các nhóm nhỏ cũng là Docker. Ngoài việc phân bổ tài nguyên phần cứng như GPU, CPU và RAM cho các vùng chứa ảo, Docker cũng bao gồm quản lý phiên bản ứng dụng và framwork. Nếu không có phần mềm quản lý phần cứng, tài nguyên hệ thống đa GPU rất khó phân bổ (nếu không chỉ định GPU, hoạt động thường được thực thi bởi GPU có ID 0) hoặc nhóm cần giao tiếp tài nguyên phần cứng đã sử dụng trước, nếu không thì dễ dàng rằng một số GPU sẽ được sử dụng trước hoặc chạy không tải.

Docker có thể giải quyết tình huống này thông qua việc cấp phát tài nguyên phần cứng trước (như hình bên dưới). Khác với Kubernetes thường được sử dụng trong các doanh nghiệp lớn, các máy ảo Docker khác nhau có thể được cấu hình trên cùng một bộ phần cứng GPU, do đó tài nguyên phần cứng có thể được sử dụng hiệu quả hơn.

Đối với sự lựa chọn nền tảng phát triển, nó giống như tình huống của các nhà phát triển cá nhân. Người dùng có thể chọn Visual Studio Code hoặc Jupyter Notebook tùy theo thói quen phát triển cá nhân.

Nếu cân nhắc rằng các chương trình đang phát triển sẽ được đưa vào giảng dạy, Jupyter Notebook có thể được sử dụng làm tài liệu giảng dạy vì nó có thể thực thi mã theo khối và dễ dàng viết chú thích.

Tuy nhiên, nếu nó dựa trên sự phát triển hệ thống dự án, thì chức năng gỡ lỗi của Visual Studio Code phù hợp hơn để phát triển hệ thống.

Bất kể các bạn chọn nền tảng hoặc công cụ nào, điều quan trọng nhất là các nhà phát triển có thể tập trung vào R & D và phát triển các mô hình và hệ thống. Phần cứng hoặc phần mềm quản lý khác có thể được giao cho quản trị viên hệ thống của nhóm. Do đó, Docker là một lựa chọn rất phù hợp. Liên kết cài đặt Docker cũng được đính kèm bên dưới. Hãy nhớ cài đặt Docker Engine trước khi cài đặt gói nvidia-docker.

Hướng dẫn cài đặt Docker Engine:  https://docs.docker.com/install/

Hướng dẫn cài đặt nvidia-docker :  https://github.com/NVIDIA/nvidia-docker

 

Bài viết liên quan

TOP 5 mainboard PCIe 4.0 giá tốt đáng mua nhất đầu năm 2024

TOP 5 mainboard PCIe 4.0 giá tốt đáng mua nhất đầu năm 2024

11-04-2024, 2:14 pm

Mặc dù các dòng mainboard mới ra mắt gần đây đều đã hỗ trợ chuẩn giao tiếp PCIe 5.0 mới nhất, tuy nhiên các dòng mainboard sử dụng chuẩn PCIe 4.0 vẫn giữ được sức hút bởi mức giá phù hợp và thừa khả năng đáp ứng mạnh mẽ cho các card đồ họa cũng như ổ cứng ngày nay.

Hướng dẫn cách chọn RAM phù hợp với Main và CPU

Hướng dẫn cách chọn RAM phù hợp với Main và CPU

27-03-2024, 9:07 am

Hiểu được cách chọn RAM phù hợp với Main và CPU, bạn có thể tiết kiệm được chi phí, đồng thời loại bỏ nguy cơ không tương thích khi kết nối RAM với hệ thống linh kiện và phát huy được tối đa được sức mạnh chiếc laptop/PC để phục vụ cho mục đích sử dụng của mình.

FAKE IP là gì? Top 4 phần mềm FAKE IP hiệu quả nhất hiện nay 2024

FAKE IP là gì? Top 4 phần mềm FAKE IP hiệu quả nhất hiện nay 2024

22-03-2024, 10:47 am

Làm thế nào để an toàn khi truy cập website? Làm cách nào để bảo vệ thông tin cá nhân khỏi sự theo dõi của những kẻ tấn công trực tuyến? Một trong những giải pháp phổ biến là sử dụng phần mềm Fake IP. Fake IP là quá trình kết nối đến một trang web thông qua một Server Proxy trung gian, nhằm che giấu địa chỉ IP thực tế của máy tính. Dưới đây hẫy cùng Nguyễn Công PC tổng hợp các phần mềm Fake IP free dành cho mọi trình duyệt qua bài viết dưới đây nhé!

Cách kiểm tra bảo hành Laptop Dell bằng Service Tag vô cùng đơn giản

Cách kiểm tra bảo hành Laptop Dell bằng Service Tag vô cùng đơn giản

20-03-2024, 9:58 am

Trong thời đại số hóa hiện nay, laptop đã trở thành một công cụ quan trọng không thể thiếu trong cuộc sống của chúng ta. Đặc biệt, laptop Dell luôn được biết đến với chất lượng và độ bền hàng đầu.

Microsoft Copilot dành cho bảo mật ra mắt vào tháng 4, giúp nhân viên an ninh mạng viết báo cáo sự cố, theo dõi tin tặc bằng AI

Microsoft Copilot dành cho bảo mật ra mắt vào tháng 4, giúp nhân viên an ninh mạng viết báo cáo sự cố, theo dõi tin tặc bằng AI

14-03-2024, 4:43 pm

Microsoft Copilot for Security , một giải pháp AI tổng hợp mới (đầu tiên trong ngành) có thể hỗ trợ các chuyên gia CNTT và bảo mật thực hiện công việc của họ bằng cách tạo ra các bản tóm tắt về các sự cố đáng ngờ, theo dõi tin tặc, v.v.,

Hướn dẫn cách sắp xếp trong Excel theo thứ tự tăng dần, giảm dần

Hướn dẫn cách sắp xếp trong Excel theo thứ tự tăng dần, giảm dần

12-03-2024, 1:46 pm

Sắp xếp trong Excel là tính năng hữu ích hỗ trợ người dùng trong quá trình sử dụng. Với bài viết sau đây chúng tôi sẽ hướng dẫn chi tiết cách sắp xếp, các hàm sắp xếp thứ tự, a b c, sắp xếp tăng dần hay giảm dần trong Excel.

MBR VS GPT: Cái nào tốt hơn cho SSD?

MBR VS GPT: Cái nào tốt hơn cho SSD?

25-12-2020, 3:54 am

Mình có một SSD mới, nên tạo bảng phân vùng của SSD này dưới dạng MBR hay GPT thì sẽ tốt hơn? Mình có một ổ SSD mới để thay thế ổ cứng cũ, mình muốn khởi động từ SSD và chạy các ứng dụng trên nó, vậy nên khởi tạo kiểu phân vùng nào cho nó?

Sử dụng GPU để tăng tốc tính toán như thế nào?

Sử dụng GPU để tăng tốc tính toán như thế nào?

21-12-2020, 5:05 am

Kể từ khi GPU được cho phép để lập trình, phạm vi ứng dụng của nó ngày càng rộng hơn. Ngoài các ứng dụng AI phổ biến nhất hiện nay, vẫn còn nhiều lĩnh vực yêu cầu GPU để giảm thời gian tính toán.

Laptop dòng  intel core thế hệ 11 không nhận ổ cứng nguyên nhân và cách khắc phục

Laptop dòng intel core thế hệ 11 không nhận ổ cứng nguyên nhân và cách khắc phục

16-12-2020, 6:29 am

Intel đã chính thức giới thiệu dòng CPU Tiger Lake (core I thế hệ 11) dành cho laptop với nhiều trang bị mới, chip đồ họa tích hợp Iris Xe, hỗ trợ Thunderbolt 4, Wifi 6... nhưng không nhận ổ cứng nguyên nhân là do...

Top 10 cấu hình máy tính vừa đồ họa vừa gaming theo ngân sách 2021

Top 10 cấu hình máy tính vừa đồ họa vừa gaming theo ngân sách 2021

07-12-2020, 6:13 am

Nguyễn Công PC sẽ giới thiệu đến bạn 10 cấu hình máy tính vừa đồ họa vừa gaming theo ngân sách năm 2021 mà bạn nên tham khảo.

Lựa chọn RAM liệu có đơn giản?

Lựa chọn RAM liệu có đơn giản?

25-11-2020, 7:05 am

Trong bài viết này, mình sẽ giải thích sơ lược về những điểm cần chú ý về RAM và giải đáp một số câu hỏi thường gặp để giúp anh em lựa chọn RAM phù hợp với bộ PC của mình nhé.

3 cách tắt / bật Windows Defender dễ và nhanh nhất trên Windows 10

3 cách tắt / bật Windows Defender dễ và nhanh nhất trên Windows 10

01-10-2020, 3:18 am

Không dài dòng lòng vòng đi vào vấn đề chính luôn. Sau đây nguyencongpc xin chia sẻ với các bạn 3 cách tắt / bật Windows Defender dễ và nhanh nhất trên Windows 10.

banner-left
banner-right
mes
Chat Facebook(8h-20h30)
mes
Chat Zalo(8h-20h30)
khuyen-mai

Thêm sản phẩm vào giỏ hàng thành công!