1. Tổng quan
Phòng thí nghiệm này cung cấp các hướng dẫn để nhanh chóng triển khai bản minh hoạ LIT. Mục tiêu là làm quen với công cụ LIT để khám phá hoạt động của mô hình. Bạn sẽ tiến hành phân tích theo cảm nhận và sử dụng tính năng LIT phản thực tế để tìm ra tầm quan trọng của những từ ngữ cụ thể. Bản minh hoạ bao gồm một tập dữ liệu để tiến hành phân tích. Phòng thí nghiệm này đưa ra các bước triển khai LIT trong Google Cloud Platform, phân tích dữ liệu và xoá các dịch vụ đã triển khai.
Công cụ diễn giải học tập (LIT) là gì?
🔥LIT là một công cụ trực quan và tương tác để tìm hiểu mô hình ML, hỗ trợ dữ liệu dạng văn bản, hình ảnh và dạng bảng. Nền tảng này có thể chạy dưới dạng một máy chủ độc lập hoặc chạy trong các môi trường sổ tay như Colab, Jupyter và các sổ tay Vertex AI của Google Cloud.
LIT được xây dựng để trả lời các câu hỏi như:
- Mô hình của tôi hoạt động kém hiệu quả trên những loại ví dụ nào?
- Tại sao mô hình của tôi đưa ra thông tin dự đoán này? Dự đoán này có thể được quy cho hành vi đối nghịch hoặc cho ưu tiên không mong muốn trong tập huấn luyện không?
- Mô hình của tôi có hoạt động nhất quán nếu tôi thay đổi những yếu tố như văn phong, thì động từ hoặc giống của đại từ không?
Công cụ này có trong LIT GitHub Repo. Bạn cũng có thể tìm thấy bài viết về vấn đề này trong ArXiv.
Bạn sẽ làm gì
Bạn sẽ sử dụng Google Cloud Shell để kéo, gắn thẻ, đẩy và triển khai hình ảnh vùng chứa.
Bạn sẽ sử dụng Google Artifact Registry để có thể lưu trữ tập trung các cấu phần phần mềm và xây dựng các phần phụ thuộc trong một trải nghiệm tích hợp Google Cloud. Bạn sẽ tải hình ảnh docker lên Artifact Registry. Bạn có thể tìm hiểu thêm về yêu cầu này trong tài liệu về Google Cloud Artifact Registry.
Bạn sẽ sử dụng Google Cloud Run (một dịch vụ của Knative được quản lý) để triển khai hình ảnh Docker. Đây là một nền tảng điện toán được quản lý, cho phép bạn chạy các vùng chứa ngay trên cơ sở hạ tầng có thể mở rộng của Google.
Tập dữ liệu
Bản minh hoạ sử dụng tập dữ liệu Stanford Sentiment Treebank.
" Stanford Sentiment Treebank Treebank là tập hợp đầu tiên có cây phân tích cú pháp được gắn nhãn đầy đủ cho phép phân tích đầy đủ ảnh hưởng về thành phần của tình cảm trong ngôn ngữ. Tập dữ liệu này dựa trên tập dữ liệu do Pang và Lee (2005) giới thiệu và bao gồm 11.855 câu đơn được trích từ các bài đánh giá phim. Nó được phân tích cú pháp bằng trình phân tích cú pháp của Stanford (Klein và Manning, 2003) và bao gồm tổng cộng 215.154 cụm từ duy nhất từ các cây phân tích cú pháp đó, mỗi cụm từ được chú thích bởi 3 giám khảo." Tài liệu tham khảo
Trước khi bắt đầu
Để xem hướng dẫn tham khảo này, bạn cần có một dự án Google Cloud. Bạn có thể tạo dự án mới hoặc chọn dự án mà bạn đã tạo sẵn.
2. Chạy Google Cloud Console và Cloud Shell
Bạn sẽ chạy một Google Cloud Console và sử dụng Google Cloud Shell ở bước này.
2-a: Ra mắt Bảng điều khiển Google Cloud
Chạy một trình duyệt rồi truy cập vào Google Cloud Console.
Google Cloud Console là một giao diện quản trị web an toàn và mạnh mẽ, giúp bạn quản lý nhanh các tài nguyên của mình trên Google Cloud. Đây là một công cụ DevOps (Phát triển và vận hành) di chuyển.
2-b: Chạy Google Cloud Shell
Khởi chạy Google Cloud Shell. Xem hình ảnh dưới đây để tham khảo.
Bạn sẽ thấy như sau:
Bạn sẽ sử dụng dấu nhắc lệnh trong các bước tiếp theo.
Cloud Shell là môi trường phát triển và vận hành trực tuyến, có thể truy cập từ bất cứ đâu bằng trình duyệt của bạn. Bạn có thể quản lý tài nguyên của mình bằng thiết bị đầu cuối trực tuyến được tải trước bằng các tiện ích như công cụ dòng lệnh gcloud, kubectl, v.v. Bạn cũng có thể phát triển, xây dựng, gỡ lỗi và triển khai các ứng dụng trên đám mây bằng Trình chỉnh sửa Cloud Shell trực tuyến. Cloud Shell cung cấp một môi trường trực tuyến, phù hợp với nhà phát triển với bộ công cụ được cài đặt sẵn yêu thích và 5 GB không gian lưu trữ liên tục.
2-c: Thiết lập dự án trên Google Cloud
Thiết lập dự án trên Google Cloud và vị trí nơi bạn sẽ tạo các dịch vụ của Google Cloud. Bạn sẽ sử dụng thông tin này để tạo Google Cloud Workbench và Artifact Registry. Bạn sẽ sử dụng phần trước để xây dựng và đẩy một vùng chứa. Bạn sẽ sử dụng phần sau để lưu trữ hình ảnh vùng chứa.
Bạn phải đặt biến PROJECT_ID bắt buộc duy nhất. Bạn có thể sửa đổi các biến khác, nhưng giá trị mặc định là đủ để chạy phòng thí nghiệm. Đặt đúng dự án trên Google Cloud. Lệnh gcloud sử dụng lệnh này.
# Set your GCP Project ID.
export PROJECT_ID=[Your project ID]
3. Triển khai Docker Images vào Google Cloud Artifact Registry
3-a: Tạo Sổ đăng ký Google Cloud Artifact
Trước tiên, bạn cần tạo một sổ đăng ký cấu phần phần mềm để lưu trữ hình ảnh Docker.
# Set Google Cloud Location.
export GCP_LOCATION=us-central1
# Set image container artifact repo name.
export ARTIFACT_REPO=lit-demo
# Set lit demo name.
export DEMO_NAME=demo1
# Use below cmd to list all Google Cloud Artifact locations:
# gcloud artifacts locations list
# Create a repo to upload the docker container images.
gcloud artifacts repositories create $ARTIFACT_REPO \
--repository-format=docker \
--location=$GCP_LOCATION \
--description="LIT Demos"
# Validate the repo creation.
gcloud artifacts repositories describe $ARTIFACT_REPO \
--location=$GCP_LOCATION
3-b: Hình ảnh Docker kéo
Thứ hai, liệt kê tất cả hình ảnh docker LIT trong kho lưu trữ công khai bằng cách sử dụng lệnh bên dưới.
# List all the public LIT docker images.
gcloud container images list-tags us-east4-docker.pkg.dev/lit-demos/lit-app/lit-app
Bạn có thể tìm thấy tất cả hình ảnh có sẵn và thẻ của hình ảnh (đề cập đến phiên bản hình ảnh), rồi chọn thẻ mà bạn muốn triển khai.
Kéo hình ảnh docker đã chọn bằng lệnh bên dưới.
# Set your chosen tag.
export TAG=[Your Chosen Tag]
# Pull the chosen docker image.
docker pull us-east4-docker.pkg.dev/lit-demos/lit-app/lit-app:$TAG
3-c: Hình ảnh thẻ Docker
Thứ ba, hãy gắn thẻ hình ảnh bạn vừa kéo vào kho lưu trữ đích.
# Push the pulled docker image to target repository.
docker tag us-east4-docker.pkg.dev/lit-demos/lit-app/lit-app:$TAG $GCP_LOCATION-docker.pkg.dev/$PROJECT_ID/$ARTIFACT_REPO/$DEMO_NAME:$TAG
3-d: Hình ảnh Docker đẩy
Tiếp theo, đẩy hình ảnh docker vào kho lưu trữ đích.
# Push the pulled docker image to the target repository.
docker push $GCP_LOCATION-docker.pkg.dev/$PROJECT_ID/$ARTIFACT_REPO/$DEMO_NAME:$TAG
3-e: Triển khai hình ảnh Docker cho CloudRun
Triển khai hình ảnh Docker để chạy trên đám mây từ kho lưu trữ đích.
Trong lựa chọn triển khai, hãy chọn "Triển khai một bản sửa đổi từ hình ảnh vùng chứa hiện có".
Trong phần Cấu hình, hãy đặt tên Dịch vụ của bạn giống với $BETA_NAME, rồi chọn Khu vực giống với $GCP_LOCATION.
Đối với phần Xác thực, bạn có thể chọn "Cho phép lời gọi chưa được xác thực" hoặc "Yêu cầu xác thực". Nếu bạn chọn "Yêu cầu xác thực", bạn có thể phải hoàn thành các bước bổ sung để truy cập bản minh hoạ. Do đó, bạn nên chọn "Cho phép lời gọi chưa được xác thực" nếu bạn chỉ muốn làm quen với bản minh hoạ.
Trong cấu hình Containers, hãy chọn cổng Container là 5432, Bộ nhớ là 32Gib và CPU là 8.
Sau khi thiết lập cấu hình, hãy tạo thực thể đó.
4. Xem Dịch vụ LIT trên GCP
Sau khi tạo dịch vụ, bạn có thể xem nhật ký trong Google Cloud Console.
Điều hướng: Thanh trên cùng trong Google Cloud Console → Cloud Run (trong thanh tìm kiếm) → chọn ứng dụng demo1 → chọn LOGS. Bạn cũng có thể xem các CHỈ SỐ, v.v.
Trong Google Cloud Console, hãy sử dụng tính năng Tìm kiếm rồi nhập "Cloud Run". Xem hình ảnh dưới đây để tham khảo.
Chọn "bản minh hoạ 1" mà bạn vừa tạo. Xem hình ảnh dưới đây để tham khảo.
Bạn có thể kiểm tra phần NHẬT KÝ. Trong thời gian chờ đợi, bạn có thể tìm thấy URL của tham chiếu. Xem hình ảnh dưới đây để tham khảo.
Bạn có thể xem mục CHỈ SỐ. Xem hình ảnh dưới đây để tham khảo.
5. Duyệt qua URL minh hoạ của LIT
Nếu bạn không thể truy cập URL do lỗi Bị cấm, bạn cần thay đổi dịch vụ và cho phép lệnh gọi chưa được xác thực.
Hoặc bạn có thể proxy dịch vụ cho máy chủ cục bộ bằng lệnh bên dưới.
# Proxy the service to local host.
gcloud run services proxy $DEMO_NAME --project $PROJECT_ID
Đảm bảo rằng khu vực giống với GCP_LOCATION. Sau đó, bạn có thể duyệt qua URL của máy chủ lưu trữ cục bộ.
Bản minh hoạ LIT sẽ có dạng như ảnh chụp màn hình dưới đây:
Bạn sẽ kiểm tra mục Phân tích tình cảm trên tập dữ liệu Stanford Sentiment Treebank. Hãy làm theo các bước dưới đây
- Sử dụng chức năng tìm kiếm trong bảng dữ liệu của LIT để tìm 56 điểm dữ liệu có chứa từ 'not'.
- Kiểm tra độ chính xác của mô hình BERT trong Bảng chỉ số. Mô hình BERT có độ chính xác cao.
- Chọn từng điểm dữ liệu và tìm lời giải thích. Tìm từ "deped" (bệnh trầm cảm).
- Chọn "Đó không phải là phim xã hội đen tối ưu". Kiểm tra Bản đồ lưu lượng truy cập. Bản đồ mức độ mặn cho thấy rằng "không" và "tối đa" đều quan trọng đối với dự đoán.
Bạn có thể dùng thử nhiều tính năng LIT. Bạn có thể tìm thấy video ngắn trên YouTube hoặc LIT ArXiv giải thích về các tính năng LIT.
6. Xin chúc mừng
Bạn đã hoàn thành lớp học lập trình! Thư giãn thôi!
Dọn dẹp
Để dọn dẹp phòng thí nghiệm, hãy xoá tất cả Dịch vụ Google Cloud đã tạo cho phòng thí nghiệm này. Sử dụng Google Cloud Shell để chạy các lệnh sau.
Nếu kết nối với Google Cloud bị mất do không hoạt động, hãy đặt lại các biến này. Thực hiện theo 2-c và 4-1 để thiết lập các biến shell và thiết lập dự án Google Cloud.
# Delete the Cloud Run Service.
gcloud run services delete $DEMO_NAME \
--region=$GCP_LOCATION
# Delete the Artifact Registry.
gcloud artifacts repositories delete $ARTIFACT_REPO\
--location=$GCP_LOCATION
### **Further reading**
Continue learning the LIT tool features with the below materials:
* LIT open source code base: [Git repo](https://github.com/PAIR-code/lit)
* LIT paper: [ArXiv](https://arxiv.org/pdf/2008.05122.pdf)
* LIT feature video demo: [Youtube](https://www.youtube.com/watch?v=CuRI_VK83dU)
### **License**
This work is licensed under a Creative Commons Attribution 2.0 Generic License.