Nhúng: Bài tập tương tác
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Tiện ích sau đây (dựa trên
Embedding Projector của TensorFlow) làm phẳng 10.000
vectơ tĩnh word2vec
thành một không gian 3D. Quá trình thu gọn các chiều này có thể
gây nhầm lẫn, bởi vì có thể các điểm gần nhau nhất trong không gian đa chiều
ban đầu sẽ xuất hiện cách xa nhau hơn trong hình chiếu 3D. Các điểm
n gần nhất được đánh dấu bằng màu tím, với n là điểm được người dùng chọn trong
Isolate __ points. Thanh bên ở bên phải xác định những điểm dữ liệu
láng giềng gần nhất.
Trong các thử nghiệm này, bạn sẽ được thực hành với các vectơ từ word2vec
trong tiện ích
trên.
Nhiệm vụ 1
Hãy thử tìm 20 điểm dữ liệu láng giềng gần nhất với các điểm sau và xem vị trí
của các nhóm này trong đám mây.
iii
, third
và three
tao
và way
orange
, yellow
và juice
Bạn nhận thấy gì về những kết quả này?
Nhấp vào đây để xem câu trả lời của chúng tôi
Mặc dù iii
, third
, và three
tương đồng về mặt ngữ nghĩa, nhưng những từ này xuất hiện trong các bối cảnh khác nhau trong văn bản và
có vẻ như không nằm gần nhau trong không gian nhúng này. Trong
word2vec
, iii
gần iv
hơn so với
third
.
Tương tự, mặc dù way
là bản dịch trực tiếp của tao
,
nhưng những từ này thường xuất hiện với các nhóm từ hoàn toàn khác nhau
trong tập dữ liệu được dùng, do đó, hai vectơ này cách nhau rất xa.
Các điểm dữ liệu láng giềng gần nhất đầu tiên của orange
là các màu sắc, nhưng
juice
và peel
(liên quan đến nghĩa của từ
orange
là một loại trái cây) lại xuất hiện là
điểm dữ liệu láng giềng gần nhất thứ 14 và 18. Tuy nhiên, prince
ở trong cụm từ
Hoàng tử xứ Orange, lại là điểm dữ liệu thứ 17. Trong hình chiếu này, các từ gần với
orange
nhất là yellow
và các
màu sắc khác, trong khi trong số các từ gần nhất với juice
không có orange
.
Nhiệm vụ 2
Hãy thử hình dung một số đặc điểm của dữ liệu huấn luyện. Ví dụ: hãy thử
tìm 100 điểm dữ liệu láng giềng gần nhất với các từ sau, rồi xem vị trí của các nhóm này
trong đám mây:
boston
, paris
, tokyo
, delhi
, moscow
, và seoul
(đây là
câu đố mẹo)
jane
, sarah
, john
, peter
, rosa
và juan
Nhấp vào đây để xem câu trả lời của chúng tôi
Đa số các điểm dữ liệu láng giềng gần nhất với boston
là các thành phố khác ở
Hoa Kỳ. Đa số các điểm dữ liệu gần nhất với paris
là các thành phố khác
ở Châu Âu. Dường như tokyo
và delhi
không có
kết quả giống nhau: một từ thì gắn kết với các thành phố là tụ điểm du lịch trên
khắp thế giới, trong khi từ còn lại gắn kết với india
và các từ
có liên quan. seoul
hoàn toàn không xuất hiện trong tập hợp
vectơ từ đã được rút gọn này.
Có vẻ như trong tập dữ liệu này có nhiều tài liệu liên quan đến địa lý quốc gia
Hoa Kỳ, một số tài liệu liên quan đến địa lý khu vực châu Âu và không có
nhiều thông tin chi tiết về các quốc gia hoặc khu vực khác.
Tương tự, dường như tập dữ liệu này chứa nhiều tên tiếng Anh dành cho nam giới, một số tên tiếng Anh
dành cho nữ và rất ít tên bằng các ngôn ngữ khác. Xin lưu ý rằng Don Rosa
là người từng viết và vẽ minh hoạ truyện tranh Scrooge McDuck cho Disney, có thể đây
là lý do mà "scrooge" và "mcduck" là những điểm dữ liệu láng giềng gần nhất của "rosa".
Thực tế thì các vectơ từ do word2vec
huấn luyện trước
đã được huấn luyện dựa trên
các tin bài trên Google News cho đến năm 2013.
Nhiệm vụ 3
Các mục nhúng không chỉ giới hạn ở từ ngữ. Hình ảnh, âm thanh và những dữ liệu khác cũng có thể được
nhúng. Đối với nhiệm vụ này:
- Hãy mở Embedding Projector của TensorFlow.
- Trong thanh bên ở bên trái có tiêu đề là Dữ liệu, hãy chọn Mnist bằng hình ảnh. Thao tác này
sẽ tạo hình chiếu cho các mục nhúng của
cơ sở dữ liệu
MNIST gồm
các chữ số viết tay.
- Nhấp để dừng xoay và chọn một hình ảnh duy nhất. Phóng to và thu nhỏ
nếu cần.
- Xem thanh bên ở bên phải để biết những điểm dữ liệu láng giềng gần nhất. Bạn có thấy điều gì bất ngờ không?
- Vì sao một số chữ số
7
lại có điểm dữ liệu láng giềng gần nhất là các chữ số 1
? Vì sao một số chữ số 8
lại có điểm dữ liệu láng giềng gần nhất là chữ số 9
?
- Điều gì khiến hình ảnh ở rìa không gian chiếu
có vẻ khác biệt so với hình ảnh ở chính giữa không gian chiếu?
Hãy nhớ rằng mô hình tạo ra các mục nhúng này đang nhận dữ liệu
hình ảnh, tức là các pixel, và chọn thể hiện bằng vectơ số
đối với từng hình ảnh. Mô hình này không tự động tạo ra mối liên kết về mặt tư duy
giữa hình ảnh chữ số viết tay và chính chữ số đó.
Nhấp vào đây để xem câu trả lời của chúng tôi
Do có những điểm tương đồng về hình dạng, điểm dữ liệu biểu diễn bằng vectơ của một số
chữ số 7
mỏng và hẹp hơn sẽ được đặt gần với các vectơ tương ứng với
các chữ số 1
viết tay. Điều tương tự cũng xảy ra đối với một số chữ số 8
và 9
, và cả một số chữ số 5
và 3
.
Có vẻ như các chữ số viết tay ở bên ngoài không gian chiếu
được xác định rõ ràng là một trong chín chữ số hơn và khác biệt rõ ràng
với các chữ số khác.
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-05-16 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-05-16 UTC."],[],[],null,["# Embeddings: Interactive exercises\n\nThe following widget, based on TensorFlow's\n[Embedding Projector](https://projector.tensorflow.org/), flattens 10,000\n`word2vec` static vectors into a 3D space. This collapse of dimensions can be\nmisleading, because the points closest to each other in the original\nhigh-dimensional space may appear farther apart in the 3D projection. The\nclosest *n* points are highlighted in purple, with *n* chosen by the user in\n**Isolate __ points**. The sidebar on the right identifies those nearest\nneighbors. \n\nIn these experiments, you'll play with the `word2vec` embeddings in the widget\nabove.\n\nTask 1\n------\n\nTry to find the 20 nearest neighbors for the following, and see where the\ngroups fall in the cloud.\n\n- `iii`, `third`, and `three`\n- `tao` and `way`\n- `orange`, `yellow`, and `juice`\n\nWhat do you notice about these results? \n**Click here for our answer**\n\nEven though `iii`, `third`, and `three`\nare semantically similar, they appear in different contexts in text and\ndon't appear to be close together in this embedding space. In\n`word2vec`, `iii` is closer to `iv` than to\n`third`.\n\nSimilarly, while `way` is a direct translation of `tao`,\nthese words most frequently occur with completely different groups of words\nin the dataset used, and so the two vectors are very far apart.\n\nThe first several nearest neighbors of `orange` are colors, but\n`juice` and `peel`, related to the meaning of\n`orange` as fruit, show up as the 14th\nand 18th nearest neighbors. `prince`, meanwhile, as in the\nPrince of Orange, is 17th. In the projection, the words closest to\n`orange` are `yellow` and other\ncolors, while the closest words to `juice` don't include\n`orange`.\n\nTask 2\n------\n\nTry to figure out some characteristics of the training data. For example, try\nto find the 100 nearest neighbors for the following, and see where the groups\nare in the cloud:\n\n- `boston`, `paris`, `tokyo`, `delhi`, `moscow`, and `seoul` (this is a trick question)\n- `jane`, `sarah`, `john`, `peter`, `rosa`, and `juan`\n\n**Click here for our answer**\n\nMany of the nearest neighbors to `boston` are other cities in\nthe US. Many of the nearest neighbors to `paris` are other cities\nin Europe. `tokyo` and `delhi` don't seem to have\nsimilar results: one is associated with cities around the world that are\ntravel hubs, while the other is associated with `india` and related\nwords. `seoul` doesn't appear in this trimmed-down set of\nword vectors at all.\n\nIt seems that this dataset contains many documents related to US national\ngeography, some documents relate to European regional geography, and not\nmuch fine-grained coverage of other countries or regions.\n\nSimilarly, this dataset seems to contain many male English names, some female\nEnglish names, and far fewer names from other languages. Note that Don Rosa\nwrote and illustrated Scrooge McDuck comics for Disney, which is the likely\nreason that \\`scrooge\\` and \\`mcduck\\` are among the nearest neighbors for \\`rosa\\`.\n\nThe pre-trained word vectors offered by `word2vec` were in fact\ntrained on\n[Google News articles up to 2013](https://code.google.com/archive/p/word2vec/).\n\nTask 3\n------\n\nEmbeddings aren't limited to words. Images, audio, and other data can also be\nembedded. For this task:\n\n1. Open TensorFlow's [Embedding Projector](https://projector.tensorflow.org/).\n2. In the left sidebar titled **Data** , choose **Mnist with images** . This brings up a projection of the embeddings of the [MNIST](https://developers.google.com/machine-learning/glossary#mnist) database of handwritten digits.\n3. Click to stop the rotation and choose a single image. Zoom in and out as needed.\n4. Look in the right sidebar for nearest neighbors. Are there any surprises?\n\n- Why do some `7`s have `1`s as their nearest neighbor? Why do some `8`s have `9` as their nearest neighbor?\n- Is there anything about the images on the edges of the projection space that seem different from the images in the center of the projection space?\n\nKeep in mind that the model that created these embeddings is receiving image\ndata, which is to say, pixels, and choosing a numerical vector representation\nfor each image. The model doesn't make an automatic mental association\nbetween the image of the handwritten digit and the numerical digit itself. \n**Click here for our answer**\n\nDue to similarities in shape, the vector representations of some of the\nskinnier, narrower `7`s are placed closer to the vectors for\nhandwritten `1`s. The same thing happens for some `8`s\nand `9`s, and even some of the `5`s and `3`s.\n\nThe handwritten digits on the outside of the projection space appear\nmore strongly definable as one of the nine digits and strongly differentiated\nfrom other possible digits.\n| **Key terms:**\n|\n| - [Embedding vector](/machine-learning/glossary#embedding-vector)\n- [Embedding space](/machine-learning/glossary#embedding-space) \n[Help Center](https://support.google.com/machinelearningeducation)"]]