Chuyển đến nội dung chính

Deep Learning với Jupyter Notebook trên đám mây

Hướng dẫn từng bước này sẽ chỉ bạn cách thiết lập và sử dụng Jupyter Notebook trên GPU EC2 của Amazon Web Services (AWS) cho deep learning.
Đã cập nhật 5 thg 10, 2026  · 10 phút đọc

Khám phá cùng AI

ChatGPTClaudePerplexity

   

Mặc dù khóa học Introduction to Deep Learning in Python trên DataCamp cung cấp cho bạn mọi thứ cần để thực hiện deep learning trên laptop hoặc máy tính cá nhân, sớm muộn bạn cũng sẽ muốn chạy các mô hình deep learning trên GPU (Graphics Processing Unit). 

Bài viết này sẽ giúp bạn thực hiện những bước tiếp theo!

Đa số người dùng không có GPU trên máy của riêng mình, vì vậy bài viết sẽ hướng dẫn bạn cách chạy GPU từ đám mây Amazon Web Services (AWS).

Chạy mô hình trên GPU như mô tả có chi phí khoảng $0,90 mỗi giờ. Vì thế, nếu laptop hoặc máy tính cá nhân của bạn có GPU, bạn có thể thiết lập để sử dụng GPU đó và tiết kiệm chi phí.

Có khá nhiều bước để thiết lập môi trường điện toán đám mây lần đầu. Nhưng khi đã thiết lập xong, bạn sẽ thấy việc tiếp tục sử dụng về sau rất dễ dàng.

Tạo tài khoản Amazon Web Services

Truy cập https://aws.amazon.com/ để đăng ký tài khoản AWS. Làm theo liên kết Create an AWS Account.

Chọn nút I am a new user và nhập email của bạn. Bạn sẽ được hướng dẫn điền một số biểu mẫu với thông tin như tên, địa chỉ email và mật khẩu.

amazon web services

Thiết lập máy chủ điện toán đám mây

Quy trình thiết lập máy chủ có khá nhiều bước. May mắn là chúng tôi sẽ hướng dẫn bạn cách dừng phiên bản (instance), để bạn không phải trả phí khi không sử dụng, và có thể khởi động lại nhanh chóng sau khi đã thiết lập.

Bây giờ bạn đã có tài khoản, bạn có thể dùng bất cứ lúc nào bằng cách quay lại https://aws.amazon.com/ và nhấp Sign In To Console.

Sign In To Console

Amazon cung cấp vô số dịch vụ điện toán đám mây, điều này có thể khiến người mới choáng ngợp. Bạn sẽ tập trung vào dịch vụ EC2 (viết tắt của Elastic Cloud Compute). Góc trên bên trái cửa sổ trình duyệt có menu dịch vụ.

Jupyter notebook aws

Mở menu này và chọn EC2, thường là tùy chọn đầu tiên. Bạn sẽ đến trang hiển thị trạng thái tất cả các instance EC2 bạn đang chạy. Chọn nút ở giữa trang để Launch Instance.

launch instances

Mỗi instance đi kèm sẵn các phần mềm khác nhau (trong “machine images”), và bạn cần quyết định muốn có sẵn những gì. Ở đây, chúng ta sẽ dùng một image từ AWS Marketplace được tối ưu cho deep learning.

Chọn AWS Marketplace ở thanh menu bên trái.

Sau đó nhập deep learning ubuntu vào ô tìm kiếm:

the marketplace

Danh sách sẽ hiển thị một số tùy chọn, bao gồm Deep Learning AMI Ubuntu Version chính thức của Amazon. Chọn mục này.

ubuntu

Bây giờ bạn sẽ thấy menu các loại instance. Mỗi loại có mức giá và năng lực tính toán khác nhau.

Các instance có GPU là những loại bắt đầu bằng g2 hoặc p2. Chúng tôi khuyến nghị p2.xlarge, có giá chưa đến một đô mỗi giờ. Nếu muốn rẻ hơn, g2.2xlarge khoảng $0,65/giờ, dù không nhanh hoặc mạnh bằng.

Sau khi chọn loại instance, chọn Configure Instance Details ở cuối trang. Sau đó chọn 6. Configure Security Group trên menu gần đầu trang.

Tại đây, chúng ta sẽ thiết lập instance để dễ truy cập từ máy của bạn.

Mỗi hàng mô tả quy tắc truy cập vào instance của bạn.

Chúng ta sẽ dùng Jupyter notebooks, được phục vụ trên cổng 8888. Nếu bạn chưa hiểu, bạn sẽ thấy cách thiết lập ngay sau đây.

Hiện tại, nhấp nút Add Rule. Ở cột mới chọn TCP làm giao thức, 8888 làm Port, và 0.0.0.0/0 cho cột cuối cùng, là nguồn (source).

security

Cuối cùng, nhấp nút Review and Launch ở cuối màn hình. Sau đó nhấn Launch lần nữa.

Bây giờ đến bước bảo mật cuối cùng… là chọn cặp khóa (key pair). Khóa là một tệp trên máy bạn, phải khớp với tệp lưu trên máy chủ. Đây là cách bạn ngăn người khác dùng máy chủ vừa thiết lập. Vì vậy, đừng chia sẻ khóa hoặc đăng tệp ở nơi công cộng.

Chọn Create a new key pair và nhập tên khóa. Sau đó nhấn Download Key Pair để tải bản sao khóa, bạn sẽ cần để truy cập máy chủ.

Sớm thôi bạn sẽ được chuyển đến màn hình trông như thế này:

launch status

Dãy ký tự dài màu xanh là tên instance của bạn. Bạn có thể chọn nó để xem bảng điều khiển EC2, nơi hiển thị máy chủ này đang chạy.

Chúc mừng! Bạn đã có một máy chủ deep learning chạy trên đám mây.

Kết nối tới máy chủ

Bây giờ chúng ta sẽ kết nối tới máy chủ bằng giao thức ssh. Từ đó, chúng ta sẽ khởi động máy chủ Jupyter notebook để sử dụng qua trình duyệt.

Trên máy mac hoặc linux, bạn có thể dùng lệnh ssh. Trên Windows, nhiều người dùng ứng dụng PuTTY cho kết nối ssh.

Bạn có thể cần thay đổi quyền truy cập cho tệp khóa của mình. Trên MacOS và Linux có thể thực hiện bằng lệnh

chmod 400 my_private_key.pem

Sau đó, vẫn ở dòng lệnh, chỉ định rằng bạn muốn dùng khóa này để xác thực khi đăng nhập vào máy chủ bằng

ssh-add my_private_key.pem

Để đăng nhập vào máy chủ, chúng ta cần địa chỉ IP của máy. Bạn có thể tìm trên bảng điều khiển EC2 trong trình duyệt.

dashboard

Đăng nhập tại dòng lệnh với lệnh

ssh ubuntu@34.208.222.118

Bạn sẽ muốn thay 34.208.222.118 bằng địa chỉ IP của máy chủ bạn.

Sau khi đăng nhập vào máy chủ, dùng lệnh ipython để khởi động shell IPython. Trong IPython, thử import keras để kiểm tra mọi thứ hoạt động. Bạn sẽ thấy một số thông báo cho biết CUDA đang được dùng… nghĩa là keras đang truy cập GPU.

Nếu bạn quen với Linux, IPython và một trình soạn thảo văn bản trên Linux, bạn có thể làm việc từ đây. Một số người chọn dùng hai cửa sổ: một cửa sổ ssh vào máy chủ để dùng IPython, và một cửa sổ ssh khác để dùng trình soạn thảo.

Thiết lập Jupyter Notebook

Tuy nhiên, hầu hết mọi người sẽ thấy dễ hơn khi thiết lập Jupyter notebooks và lập trình qua trình duyệt. Để làm vậy, chúng ta sẽ đặt một mật khẩu mới.

Bước đầu tiên là lấy hash của mật khẩu bạn muốn dùng. Bạn thực hiện trong IPython như sau:

Sao chép hash được xuất ra sau khi bạn đặt mật khẩu. Bạn sẽ cần lại ngay sau đây.

Gõ exit để thoát IPython.

Bây giờ chúng ta cần báo cho Jupyter sử dụng mật khẩu bạn chọn. Để làm vậy, chạy các lệnh sau

jupyter notebook --generate-configmkdir certscd certssudo openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mycert.pem -out mycert.pem

Sau đó dùng trình soạn thảo văn bản để chỉnh ~/.jupyter/jupyter_notebook_config.py. Tôi thích vim và sẽ dùng lệnh:

vim ~/.jupyter/jupyter_notebook_config.py

Ở đầu tệp đó, dán nội dung sau:

c = get_config()c.IPKernelApp.pylab = 'inline' c.NotebookApp.certfile = u'/home/ubuntu/certs/mycert.pem' c.NotebookApp.ip = '*' c.NotebookApp.open_browser = False # Your password below will be whatever you copied earlier c.NotebookApp.password = u'sha1:941c93244463:0a28b4a9a472da0dc28e79351660964ab81605ae' c.NotebookApp.port = 8888

Bạn có thể sao chép nguyên như vậy và chỉ thay mật khẩu. Nhớ rằng, đừng dùng mật khẩu thật của bạn. Hãy dán hash của mật khẩu mà bạn đã tạo trước đó.

Kết nối tới Jupyter trong trình duyệt

Mở trình duyệt bạn muốn và nhập địa chỉ của instance (có trong bảng điều khiển EC2) kèm theo :8888.

Tại thời điểm này bạn có thể thấy thông báo bảo mật. Bạn không cần lo lắng về điều này. Trên Chrome, bạn có thể nhấp nút “advanced” trong cửa sổ trình duyệt chính để bỏ qua cảnh báo bảo mật.

security message

Bây giờ bạn sẽ được yêu cầu nhập mật khẩu.

Nhập mật khẩu của bạn. Đây không phải là hash của mật khẩu, mà là mật khẩu thô bạn đã gõ trong IPython để lấy giá trị hash.

Chúc mừng, bạn đã đăng nhập!

Sử dụng Notebook

Trong trình duyệt, chọn mục trên menu để tạo một notebook Python mới.

new notebook

Ôi… Không hề đơn giản. Nhưng về sau sẽ dễ thôi

Để có được khả năng dùng notebook, bạn đã phải thiết lập khá nhiều. May mắn là phần lớn chỉ làm một lần. Bây giờ bạn có thể dừng máy chủ trong bảng điều khiển EC2 khi không dùng đến, và bạn sẽ không còn phải trả phí nữa.

launch instance

Dừng một instance sẽ giữ lại toàn bộ công sức thiết lập của bạn, nhưng instance sẽ ngừng hoạt động cho đến khi bạn khởi động lại. Ở một khía cạnh nào đó, nó giống nút tạm dừng. Nếu chọn terminate thì toàn bộ thông tin về instance đó sẽ bị mất và bạn sẽ phải thiết lập lại lần sau.

Vì bạn chọn stop, bạn có thể quay lại bảng điều khiển ec2 vào ngày khác và nhấp start.

start instance

Sau khi nhấp start, việc khởi động lại khá dễ dàng. Instance của bạn sẽ có địa chỉ IP mới. Bạn sẽ cần ssh vào địa chỉ IP mới đó

ssh ubuntu@34.208.26.73

Trong cửa sổ bạn đã truy cập máy chủ qua ssh, gõ

jupyter notebook

Sau đó bạn có thể quay lại trình duyệt và bắt đầu làm việc ngay.

Thiết lập ban đầu khá mất công, nhưng hy vọng bạn sẽ tận dụng được rất nhiều khi tiếp tục luyện tập và thực hiện thêm các dự án deep learning thú vị.

Nếu bạn quan tâm học thêm, hãy xem các khóa học của DataCamp sau:

Chủ đề
Học Sâu
Khoa học Dữ liệu
Phân tích dữ liệu
Machine Learning

Tìm hiểu thêm về Python và Deep Learning

Khóa học

Viết hàm trong Python

4 giờ
114.9K
Học cách sử dụng các luyện tập tốt nhất để viết các hàm phức tạp có thể bảo trì, tái sử dụng và có tài liệu hướng dẫn đầy đủ.
Xem chi tiếtRight Arrow
Bắt Đầu Khóa Học
Xem thêmRight Arrow
Liên quan

blog

Claude Opus 4.6: Tính năng, Điểm chuẩn, Bài kiểm tra thực hành và hơn thế nữa

Mô hình mới nhất của Anthropic dẫn đầu ở mã hóa tác tử và lập luận phức tạp. Thêm vào đó, nó có cửa sổ ngữ cảnh 1M.
Matt Crabtree's photo

Matt Crabtree

10 phút

Xem ThêmXem Thêm