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

Tìm trên CooLWJ

选择搜索范围,输入关键词后按回车。

Ngôn ngữ

Cơ sở dữ liệu vectơ là gì?

I、Toàn bộ quy trình nghiệp vụ mô hình lớn

1.png

  1. Xây dựng cụm AI: xây dựng hạ tầng tính toán, truyền thông và lưu trữ

  2. Dữ liệu mô hình lớn:Bộ dữ liệu mô hình lớn, xử lý dữ liệu, cơ sở dữ liệu vectơ

  3. Thuật toán mô hình lớn: Từ NLP truyền thống đến mô hình ngôn ngữ lớn LLM được tiền huấn luyện

  4. Huấn luyện mô hình lớn:Các phương pháp thuật toán thông thường và phân tích độ ổn định trong huấn luyện mô hình lớn

  5. Song song phân tán: song song mô hình, song song dữ liệu, song song bộ tối ưu hóa, v.v.

  6. Tinh chỉnh mô hình lớn: các thuật toán tinh chỉnh toàn bộ tham số, tinh chỉnh ít tham số và tinh chỉnh theo chỉ dẫn

  7. Suy luận mô hình lớn:nén bằng lượng tử hóa, suy luận mở rộng chuỗi dài, phương pháp Cache

  8. Đánh giá mô hình lớn:Các tác vụ hạ nguồn NLP, các tác vụ hạ nguồn CV, phương án đánh giá

  9. Tác tử mô hình lớn:quy trình RLHF, tác tử, học suốt đời

Hai、Vectơ

Người quen thuộc với loài chó có thể nhanh chóng phân biệt giống của chúng, sở dĩ làm được điều này là vì chúng ta quan sát đặc điểm của chúng từ nhiều góc độ khác nhau, chẳng hạn kích thước cơ thể.
2.pngNếu dùng một trục tọa độ để biểu thị đặc trưng kích thước của chúng, những con chó này sẽ nằm ở các tọa độ khác nhau. Tuy nhiên, chỉ dựa vào đặc trưng thể hình là chưa đủ, vì một số con có thể hình rất gần nhau.
3.pngChúng ta tiếp tục quan sát đặc điểm của chúng, chẳng hạn độ dài lông, rồi tạo thêm một trục tọa độ, như vậy có thể phân biệt được một phần các giống chó có cùng đặc điểm về kích thước
4.pngNhưng vẫn có một phần chồng lấn, nên cần tiếp tục quan sát từ nhiều góc độ hơn, chẳng hạn độ dài của mũi.
5.pngChúng ta còn có thể thêm nhiều chiều hơn, chẳng hạn như kích thước mắt. Chúng ta không thể vẽ trong không gian bốn chiều, nhưng rất dễ thể hiện bằng các giá trị tọa độ, chỉ cần tiếp tục thêm vào phía sau.
6.pngChúng ta còn có thể quan sát đặc điểm của một con chó từ nhiều góc độ hơn, hay nói cách khác là nhiều chiều hơn, chẳng hạn như độ to nhỏ của chân, độ xoăn của lông, thậm chí là những góc độ trừu tượng như mức độ vâng lời, tính hữu dụng như một công cụ, v.v. Càng dùng nhiều chiều, khả năng phân biệt chó của chúng ta càng mạnh. Đồng thời, số chiều của không gian chứa các điểm tọa độ cũng càng cao.
7.pngKhông chỉ chó, thực ra gần như mọi sự vật đều có thể được biểu diễn theo cách này. Có thể là những thứ cụ thể, cũng có thể là những cảm xúc trừu tượng như vui giận buồn vui, buồn vui tan hợp. Những sự vật khác nhau có biểu hiện khác nhau, hay nói cách khác là có giá trị khác nhau, trên các chiều đặc trưng khác nhau, nên cuối cùng đều tương ứng với một điểm tọa độ trong không gian đặc trưng nhiều chiều. Chỉ có điều, trong những phạm vi rộng hơn này, chúng ta có thể cần nhiều chiều đặc trưng hơn để phân biệt tốt các sự vật. Có thể là vài trăm, vài nghìn, cũng có thể lên đến hàng vạn.
8.pngTuy nhiên, vì không thể vẽ hình vượt quá ba chiều nên chúng ta dùng tọa độ hai chiều để giải thích.
9.pngChúng ta sẽ thấy các điểm gần nhau hơn về mặt khái niệm tập trung gần nhau hơn trong không gian, còn các điểm rất khác nhau về mặt khái niệm thì cách nhau rất xa. Tiến thêm một bước, nếu lấy gốc tọa độ làm điểm đầu và các điểm tọa độ này làm điểm cuối, ta sẽ có các vectơ mang hướng và độ lớn.

Nếu chuyển hình ảnh thành vectơ, có thể tìm kiếm các vectơ tương tự để thực hiện chức năng tìm kiếm bằng hình ảnh
Nếu biểu diễn video dưới dạng vectơ, có thể tìm kiếm các vectơ tương tự để đề xuất video tương tự
Nếu biểu diễn sản phẩm thành vectơ, có thể tìm các vectơ tương tự để đưa ra gợi ý liên quan dựa trên sản phẩm người dùng đang xem
Nếu vectơ hóa văn bản, trong một hệ thống hỏi đáp thông minh, ta có thể dựa vào câu hỏi hiện tại của người dùng để tìm những câu hỏi tương tự đã được giải quyết làm tài liệu tham khảo

Ba、Cơ sở dữ liệu vectơ

Cùng với sự xuất hiện của AI, vectơ sẽ trở thành một dạng dữ liệu quan trọng. Cơ sở dữ liệu truyền thống không phù hợp để lưu trữ và truy xuất dữ liệu vectơ, vì vậy cần một loại cơ sở dữ liệu được thiết kế chuyên biệt để xử lý những vấn đề này;đây có lẽ sẽ trở thành hạ tầng dữ liệu trong tương lai. Khác với cơ sở dữ liệu truyền thống lưu các bảng dữ liệu rồi tìm kiếm chính xác bằng câu truy vấn, cơ sở dữ liệu vectơ lưu dữ liệu vectơ, còn quá trình truy vấn là tìm trong cơ sở dữ liệu một số vectơ giống vectơ truy vấn nhất, nên có tính gần đúng nhất định.

Sơ đồ minh họa các điểm dữ liệu vectơ trong không gian ba chiều

1、Truy vấn vectơ

Một tình huống ứng dụng chính của dữ liệu vectơ là:cho một vectơ truy vấn, sau đó tìm một số vectơ tương đồng nhất trong số rất nhiều vectơ. Đây chính là bài toán láng giềng gần nhất, còn thuật toán thực hiện việc này được gọi là thuật toán láng giềng gần nhất. Một phương pháp dễ nghĩ đến nhất có lẽ là tìm kiếm vét cạn, lần lượt so sánh độ tương đồng giữa tất cả các vectơ với vectơ truy vấn, chọn ra vài vectơ có độ tương đồng cao nhất, và có rất nhiều phương pháp cụ thể để so sánh độ tương đồng giữa hai vectơ,Khoảng cách Euclid và độ tương đồng cosin.
10.png

  • Khoảng cách Euclid là khoảng cách đường thẳng giữa hai vectơ. Trong hệ tọa độ hai chiều, giả sử có hai vectơ p và q, khoảng cách Euclid chính là độ dài đoạn thẳng nối p với q. Trong hệ tọa độ ba chiều, mỗi vectơ có ba tọa độ x, y, z, và khoảng cách giữa hai điểm bất kỳ được tính theo công thức. Còn trong hệ tọa độ n chiều, có 100 tọa độ, và khoảng cách giữa hai điểm bất kỳ được tính theo công thức. Khoảng cách càng ngắn thì hai vectơ càng giống nhau ở một số chiều
    11.png

  • Một cách khác là độ tương đồng cosin. Ngoài khoảng cách, chúng ta còn có thể mô tả mối quan hệ giữa các vectơ thông qua góc giữa chúng. Trong hệ tọa độ hai chiều, góc càng nhỏ thì mức độ liên hệ giữa hai vectơ càng cao. Chúng ta có thể dùng công thức để tính độ tương đồng cosin giữa hai vectơ bất kỳ. Trong hệ tọa độ ba chiều, cũng có thể áp dụng cùng nguyên lý để tính góc và độ tương đồng cosin giữa hai vectơ bất kỳ.
    12.png
    Còn nếu dữ liệu vector quá nhiều, phương pháp vét cạn chẳng có kỹ thuật gì này sẽ khiến thời gian tìm kiếm cực kỳ dài. Nhưng chất lượng tìm kiếm này quả thực hoàn hảo, vì nó thực sự so sánh từng vector, nên nếu quy mô dữ liệu trong cơ sở dữ liệu tương đối nhỏ và thời gian duyệt toàn bộ vector có thể chấp nhận được, đây cũng là một phương pháp tốt. Tuy nhiên, quy mô dữ liệu trong ứng dụng thực tế thường không quá nhỏ, nên phải tìm một số cách để tối ưu hóa.

2、Chỉ mục vectơ

Phần trước đã trình bày nguyên lý truy xuất của cơ sở dữ liệu vectơ, nhưng trên thực tế, khi đối sánh độ tương đồng trong cơ sở dữ liệu vectơ, không thể hoàn toàn tính theo công thức, vì lượng dữ liệu trong cơ sở dữ liệu vectơ thường rất lớn, số chiều cũng rất cao. Nếu dùng công thức để tính độ tương đồng giữa hai vectơ 1000 chiều, khối lượng tính toán sẽ khá lớn, đồng thời đòi hỏi CPU xử lý tính toán chuyên sâu ở mức cao. Nếu có một trăm triệu vectơ và phải tính lần lượt từng vectơ, chi phí thời gian và tính toán sẽ còn cao hơn. Vì vậy, ở đây chúng ta đưa vào một khái niệm gọi là chỉ mục vectơ.
Chỉ mục vectơ tương tự chỉ mục trong cơ sở dữ liệu quan hệ, nhưng có một điểm khác. Trong cơ sở dữ liệu vectơ, kết quả tìm được thông qua chỉ mục vectơ là kết quả gần đúng, thay vì kết quả chính xác 100%.Chỉ mục vectơ mô tả mức độ tương đồng cao hay thấp. Vì vậy, chúng ta gọi đó là tìm kiếm láng giềng gần nhất xấp xỉ(ANS). Nếu không có chỉ mục vectơ, việc tìm độ tương tự của một vectơ cũng giống như quét toàn bảng trong cơ sở dữ liệu quan hệ. Tuy nhiên, ngoài việc quét toàn bảng còn phải thêm một lớp tính toán, nên chi phí cao hơn nhiều so với quét toàn bảng trong cơ sở dữ liệu quan hệ.
Theo cách triển khai, chỉ mục vectơ ANNS có thể chia thành bốn nhóm lớn:

  • Chỉ mục dựa trên cây

  • Chỉ mục dựa trên đồ thị

  • Chỉ mục dựa trên hàm băm

  • Chỉ mục dựa trên lượng tử hóa

1、Phương pháp dựa trên cây

Ý tưởng chính của các phương pháp dựa trên cây là phân chia dữ liệu, tương tự cây tìm kiếm nhị phân, thu hẹp không gian tìm kiếm khi truy vấn để đạt mục đích truy xuất nhanh. Tuy nhiên, cách này không phù hợp với không gian nhiều chiều. Các phương pháp dựa trên cây chủ yếu gồm KDTree(K-Dimensional Tree)và Annoy(Approximate Nearest Neighbors Oh Yeah).
1.1 KDTree
Việc xây dựng KDTree cũng dựa trên ý tưởng phân chia đệ quy, trước tiên chọn chiều có phương sai lớn nhất, lấy trung vị của toàn bộ dữ liệu trên chiều đó làm điểm chia, cắt vùng siêu chữ nhật thành hai vùng con, dữ liệu nhỏ hơn trung vị được chia sang bên trái, dữ liệu nhỏ hơn trung vị được chia sang bên phải, xây dựng đệ quy cây con bên trái và bên phải cho đến khi toàn bộ dữ liệu được phân chia xong.
13.png

Quy trình tìm kiếm dựa trên KDTree:
1、Với dữ liệu truy vấn p và chiều phân chia d của nút hiện tại, so sánh giá trị tọa độ của p trên chiều d với giá trị của nút; nếu lớn hơn thì đi sang nút con trái, nhỏ hơn thì đi sang nút con phải;
2、Duyệt cho đến nút lá, đánh dấu là đã truy cập, tính khoảng cách tới nút lá làm khoảng cách gần nhất;
3、Thực hiện truy hồi tại nút lá, mỗi lần truy hồi đều kiểm tra khoảng cách giữa p và nhánh chưa được duyệt ở nút cha.
a)Nếu khoảng cách từ nút nhánh đó đến p lớn hơn khoảng cách gần nhất hiện tại, tiếp tục truy ngược lên trên cho đến nút gốc;
b)Nếu khoảng cách giữa nút nhánh này và p nhỏ hơn khoảng cách gần nhất hiện tại, hãy dùng nhánh này, thực hiện bước 1 và bước 2 cho đến nút lá, rồi cập nhật khoảng cách gần nhất giữa nút lá và Q.
14.png

1.2Annoy
Annoy dùng siêu phẳng để phân chia không gian; siêu phẳng được xác định bằng cách dùng KMeans(k=2) tìm hai tâm cụm, mặt phẳng vuông góc với đường nối hai tâm chính là siêu phẳng phân chia, rồi liên tục lặp lại cho đến khi số điểm dữ liệu trong mỗi không gian con thấp hơn ngưỡng đã chỉ định.
 15.png16.png17.png

18.png

Để tìm kiếm bất kỳ điểm nào trong không gian này, có thể bắt đầu duyệt cây nhị phân từ gốc. Mỗi nút trung gian (các ô vuông nhỏ trong cây bên trên) đều xác định một siêu phẳng, vì vậy có thể dựa vào siêu phẳng để quyết định tiếp tục với nút con trái hay nút con phải. Việc tìm kiếm một điểm có thể hoàn tất trong thời gian logarit, tương ứng với chiều cao của cây.

Ưu điểm:Độ chính xác khá cao với dữ liệu ít chiều Nhược điểm:Không thể nắm bắt đầy đủ tính phức tạp của dữ liệu, độ chính xác thấp với dữ liệu nhiều chiều

2、Phương pháp dựa trên đồ thị

Phương pháp dựa trên đồ thị chủ yếu sử dụng cấu trúc dữ liệu đồ thị, tận dụng khả năng liên thông giữa các nút lân cận để xây dựng những tuyến đường cao tốc, chuyển bài toán thành việc duyệt đồ thị, từ đó nhanh chóng thu hẹp phạm vi tìm kiếm và tăng tốc truy xuất. Tuy nhiên, cấu trúc dữ liệu đồ thị khá phức tạp. Để đạt tốc độ truy xuất tối đa, thông thường toàn bộ đồ thị được nạp vào bộ nhớ, khiến mức sử dụng bộ nhớ rất cao, nhưng truy xuất nhanh và tỷ lệ thu hồi cao.

Thuật toán tìm kiếm trên đồ thị thường dùng hiện nay chủ yếu là HNSW(Hierarchical Navigating Small World), còn NSW(Navigating Small World)là thuật toán tiền thân của nó, cũng cần tìm hiểu.
2.1 NSW
Trên cơ sở cách dựng đồ thị đơn giản, NSW bổ sung các quy ước sau:Mọi nút đều phải có nút kề; các nút kề phải có cạnh nối; số lượng láng giềng là một siêu tham số do người dùng chỉ định. Chủ yếu dùng để khắc phục một số hạn chế của phương pháp dựng đồ thị đơn giản.
19.pngQuá trình xây dựng đồ thị NSW:
Khi chèn một nút mới, trước tiên tìm m nút gần nút mới nhất, rồi nối nút mới với m nút này.
Quá trình tìm kiếm NSW:
Với dữ liệu truy vấn q, chọn ngẫu nhiên trong đồ thị một nút entry point và các nút láng giềng của nó, tính khoảng cách từ entry point và các nút láng giềng đến p, nếu có nút láng giềng có khoảng cách đến p nhỏ hơn khoảng cách từ p đến entry point, đặt điểm có khoảng cách nhỏ nhất, cho đến khi cuối cùng tìm được một point mà khoảng cách từ tất cả các nút láng giềng của nó đến query đều lớn hơn khoảng cách từ point này đến query.
Như hình trên, để tìm nút gần nút query màu xanh lá nhất trong đồ thị láng giềng đã xây dựng, ta bắt đầu từ các entry points được chọn ngẫu nhiên, ban đầu đi theo long-link màu đỏ để nhanh chóng đến nút gần query, sau đó đi theo short-link màu đen để tìm điểm đáp ứng yêu cầu.
NSW cũng là một phương pháp tính toán gần đúng, không thể bảo đảm tìm được láng giềng gần nhất thực sự. Các điểm được chèn trước có nhiều cạnh dư thừa hơn, có khả năng hình thành đường cao tốc cao hơn; điểm được chèn càng muộn thì khả năng có đường cao tốc càng thấp.
2.1 HNSW
HNSW là một phương án cải tiến dựa trên NSW, chủ yếu vận dụng ý tưởng của danh sách nhảy để triển khai theo phân tầng, mỗi tầng đều là một NSW, nên cũng có thể gọi là phương pháp NSW phân tầng. Càng lên tầng trên, số nút càng thưa, khoảng cách giữa các nút càng xa; càng xuống dưới, số nút càng nhiều, các liên kết cũng tăng, khoảng cách trung bình càng gần.
20.png

Ưu điểm: Có thể tìm được các láng giềng gần tương tự trong dữ liệu nhiều chiều, từ đó cải thiện hiệu suất tìm kiếm, nhược điểm: Cách dựng đồ thị phức tạp, ảnh hưởng đến hiệu quả sử dụng bộ nhớ.

3、Phương pháp dựa trên hàm băm

Phương pháp dựa trên hàm băm chủ yếu tận dụng đặc tính của hàm băm: dữ liệu có độ tương đồng cao thì giá trị băm cũng tương tự nhau. Hàm băm có thể chuyển dữ liệu nhiều chiều thành dữ liệu ít chiều, giúp tăng đáng kể hiệu suất xây dựng. Tuy nhiên, hàm băm cũng có một hạn chế khác: dữ liệu có giá trị băm tương tự chưa chắc đã tương tự nhau, khiến độ thu hồi của phương pháp này không cao. Phương pháp dựa trên hàm băm chủ yếu là LSH (Locality-Sensitive Hashing, băm nhạy cảm theo tính cục bộ). Giả sử hai vectơ tương tự nhau thì giá trị băm của chúng cũng tương tự nhau. Dùng hàm băm để ánh xạ các vectơ tương tự vào cùng một nhóm. Khi truy vấn, trước tiên tìm nhóm tương tự nhất với vectơ truy vấn, sau đó truy vấn dữ liệu trong nhóm và tính ra topk tương tự nhất.
21.pngLSH(băm nhạy cảm với vị trí)cũng là một phương pháp dựa trên phân chia không gian. Cách thực hiện như hình dưới: tạo ngẫu nhiên một đường thẳng, đường này phân biệt hai phía dương và âm. Nếu một vectơ nằm ở phía dương của đường thẳng thì nó là 1, phía âm là 0, sau đó tạo ngẫu nhiên một đường thẳng khác, tương tự phía dương là 1, phía âm là 0; cứ như vậy, chúng ta tạo nhiều đường thẳng như thế, rồi tính được cho mỗi vectơ 4 giá trị 0 hoặc 1, mỗi vectơ nhận được một mã nhị phân dài 4 bit. Bây giờ chúng ta quan sát mức độ tương tự giữa 4 mã nhị phân này.
22.png23.png24.png25.png26.png27.png

Ưu điểm:rất nhanh khi mở rộng sang dữ liệu lớn, nhược điểm:độ chính xác ở mức trung bình

5、Chỉ mục dựa trên lượng tử hóa (Quantized)

5.1、Phân cụm
Nếu có thể khoanh vùng tìm kiếm sơ bộ cho vectơ truy vấn rồi mới tiến hành tìm kiếm, tốc độ tìm kiếm có thể tăng đáng kể. Trước tiên, chúng ta chọn số nhóm muốn phân loại, chẳng hạn 4 nhóm trong hình bên dưới, rồi tạo ngẫu nhiên 4 điểm tâm. Các vectơ gần điểm tâm nào nhất sẽ được xếp vào nhóm của điểm tâm đó. Sau đó, dùng các vectơ hiện được xếp vào cùng một nhóm để tính ra một điểm vectơ trung bình, chuyển vị trí tâm đến điểm vectơ trung bình ấy, rồi lại xác định tâm nào gần mỗi điểm vectơ nhất để phân nhóm lại. Quá trình lặp đi lặp lại như vậy gọi là huấn luyện; cuối cùng các điểm tâm sẽ dần ổn định, hay còn gọi là hội tụ. Khi tìm kiếm, chỉ cần tìm tâm cụm gần vectơ truy vấn nhất rồi tìm trong các vectơ thuộc cụm đó. Như vậy sẽ đạt được mục đích thu hẹp phạm vi tìm kiếm
29.png29.png

5.2、Lượng tử hóa (Quantization)
Nhưng với dữ liệu vectơ khổng lồ, ngoài tốc độ tìm kiếm, mức tiêu thụ bộ nhớ cũng là một thách thức lớn. Trong các tình huống ứng dụng thực tế, vectơ có hàng nghìn chiều và dữ liệu gồm hàng trăm triệu vectơ đều không hiếm, nên mức tiêu thụ bộ nhớ sẽ rất lớn.
30.png

Từ phần phân cụm ở trên, ta biết điểm trung tâm thực ra được gọi là tâm cụm. Liệu có thể dùng tâm cụm để đại diện cho các điểm trong cụm không. Có lẽ là được, thực ra phương pháp này chính là dạng điển hình của Nén có mất mát ,nếu minh họa bằng hình ảnh thì sẽ như sau:
31.png32.png

Tuy cách này làm mất một phần giá trị của vector, nhưng xét đến mức độ tương quan giữa tâm cụm và các vector trong cụm của nó, một phần thông tin gốc vẫn được giữ lại ở mức độ lớn. So với việc mất một phần chi tiết do nén có mất mát này, lợi ích mang lại là rất đáng kể. Có thể lưu trữ theo hình dưới đây; như vậy khi sử dụng một vector nào đó, ta dùng mã của nó để tìm tâm cụm tương ứng trong bảng mã, rồi khôi phục các giá trị cụ thể tương ứng với tâm cụm. Biểu diễn vector bằng mã tâm cụm chính là cái gọi là lượng tử hóa vector(Quantization)
33.png

5.3、Lượng tử hóa tích PQ(Product Quantization)
Sau khi lượng tử hóa vectơ, lại phát sinh thêm một bảng mã. Chi phí bộ nhớ của bản thân vectơ chắc chắn đã giảm, nhưng bảng mã này sẽ tạo ra chi phí bộ nhớ mới, hơn nữa còn khá lớn. Điều này chưa rõ rệt ở số chiều thấp, nhưng với vectơ có hàng trăm, hàng nghìn chiều trong thực tế, bảng mã sẽ trở nên cực kỳ đáng ngại. Khi số lượng cố định, để bảo đảm chất lượng lượng tử hóa, vectơ có phân bố càng thưa thì càng cần nhiều vectơ cụm.
34.png35.png36.png37.png39.png39.png


Với các vectơ có hàng trăm, hàng nghìn chiều trong ứng dụng thực tế, dữ liệu sẽ rất thưa. Vì vậy, trong không gian nhiều chiều, để bảo đảm chất lượng lượng tử hóa, chúng ta có thể cần số lượng cụm rất lớn. Một trường hợp điển hình được minh họa trong hình dưới: một vectơ 128 chiều có thể cần 2 lũy thừa 64 tâm cụm, khiến bảng mã dùng để ghi mã hóa các trọng tâm trở nên vô cùng lớn. Bộ nhớ tiêu tốn để lưu bảng mã này đã vượt xa lượng bộ nhớ tiết kiệm được nhờ chính việc lượng tử hóa
40.pngCách giải quyết vấn đề này là trước tiên chia vectơ nhiều chiều thành một số vectơ con ít chiều, rồi lượng tử hóa độc lập trên các vectơ con ít chiều ấy. Ví dụ, chia vectơ 128 chiều thành 8 vectơ con 16 chiều, sau đó huấn luyện phân cụm độc lập trên từng vectơ trong 8 vectơ con 16 chiều.
42.png42.png

Vì vậy, mỗi véc-tơ có thể dùng kết quả huấn luyện của 8 không gian con để lượng tử hóa 8 véc-tơ con tương ứng của mình, hơn nữa số chiều của mỗi véc-tơ con là 16, không quá cao, nên mỗi không gian con 16 chiều chỉ cần 256 cụm là có thể đạt hiệu quả lượng tử hóa khá tốt. Do đó, giá trị mã hóa của mỗi véc-tơ con nằm trong phạm vi 0-255. Ghép các mã lượng tử hóa của 8 véc-tơ con lại sẽ có được mã lượng tử hóa cuối cùng của véc-tơ ban đầu, nghĩa là lúc này một véc-tơ được lượng tử hóa thành 8 giá trị mã hóa. Tương tự, mỗi không gian con cũng sẽ xây dựng bộ mã con riêng. Trong quá trình sử dụng, dùng 8 giá trị mã hóa để lần lượt tra ra 8 véc-tơ con 16 chiều từ các bộ mã con, rồi ghép chúng lại để khôi phục một véc-tơ 128 chiều
45.png45.png45.png46.png


Bình luận

Đang gửi

Chọn giao diện yêu thích

Giao diện đã chọn áp dụng cho toàn trang.