Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Giả sử tôi có một khung dữ liệu được hiển thị bên dưới:

| Văn bản

| Storm in Ri tệ hơn cơn bão cuối cùng

| Xuất hiện đường màu xanh lá cây ở Chicago

| Triển vọng thời tiết nguy hiểm

Tôi đã tạo mô hình Word2VEC bằng mã dưới đây:

def sent_to_words(sentences):
    for sentence in sentences:
        yield(gensim.utils.simple_preprocess(str(sentence), deacc=True))

text_data = sent_to_words(df['Text'])
w2v_model = gensim.models.Word2Vec(text_data, size=100, min_count=1, window=5, iter=50)

Bây giờ làm thế nào tôi sẽ chuyển đổi văn bản có trong cột 'văn bản' thành các vectơ bằng mô hình Word2VEC này?

Bài viết này đã được xuất bản như một phần của & NBSP; Data Science Blogathon

Giới thiệu

Bài viết này là một phần của loạt blog đang diễn ra về xử lý ngôn ngữ tự nhiên (NLP). Cho đến phần trước của loạt bài viết này, chúng tôi gần như đã hoàn thành các bước cần thiết liên quan đến việc làm sạch văn bản và xử lý trước chuẩn hóa. Sau đó, chúng tôi sẽ chuyển đổi văn bản được xử lý thành các vectơ tính năng số để chúng tôi có thể cung cấp nó cho máy tính cho các ứng dụng học máy.

Lưu ý: Một số khái niệm được bao gồm trong đường ống tiền xử lý văn bản chưa được thảo luận như phân tích cú pháp, ngữ pháp, nhận dạng thực thể được đặt tên, v.v. Bằng cách sử dụng tất cả các khái niệm được đề cập cho đến bây giờ trong loạt bài này và tăng sự hiểu biết của bạn về tất cả các khái niệm. Some concepts included in the pipeline of text preprocessing aren’t discussed yet such as Parsing, Grammar, Named Entity Recognition, etc which we will cover after complete the concepts of word embedding so that you can try to make a small project on NLP by using all the concepts covered till now in this series and increase your understanding of all the concepts.

Vì vậy, trong bài viết này, chúng tôi sẽ hiểu từ nhúng với các loại của chúng và thảo luận về tất cả các kỹ thuật được đề cập trong từng loại từ nhúng từ. Ngày nay, các phương pháp nhúng từ gần đây được sử dụng để thực hiện hầu hết các tác vụ NLP xuôi dòng. Vì vậy, trong bài viết này cho phép chúng ta xem xét từ trước khi nhúng ERA của các phương pháp tiếp cận vectơ văn bản.

Đây là phần 5 của loạt blog trên hướng dẫn từng bước để xử lý ngôn ngữ tự nhiên.

Mục lục

1. Làm quen với các thuật ngữFamiliar with Terminologies

2. Từ nhúng từ là gì?What is Word Embedding?

3. Các loại từ khác nhau nhúng Different Types of Word Embeddings

  • Từ nhúng từ ERA - Tần suất hoặc các cách tiếp cận từ dựa trên thống kê
  • Từ gần đây nhúng kỷ nguyên - các phương pháp nhúng từ dựa trên dự đoán

4. Từ nhúng từ kỹ thuật thời đạiPre word embedding era Techniques

  • Mã hóa một lần (OHE)
  • Đếm Vectorizer
  • Túi của những từ (cung)
  • N-grams
  • Tần suất tài liệu có tần số thời hạn (TF-IDF)

Quen thuộc với các thuật ngữ

Trước khi hiểu vector hóa, dưới đây là một vài thuật ngữ mà bạn cần hiểu.

Tài liệu

Một tài liệu là một điểm dữ liệu văn bản duy nhất. Ví dụ, đánh giá một sản phẩm cụ thể của người dùng.For Example, a review of a particular product by the user.

CORPUS

Nó là một bộ sưu tập của tất cả các tài liệu có trong bộ dữ liệu của chúng tôi.

Tính năng

Mỗi từ duy nhất trong kho văn bản được coi là một tính năng.

Ví dụ: hãy để xem xét 2 tài liệu được hiển thị dưới đây:Let’s consider the 2 documents shown below:

Sentences:
Dog hates a cat. It loves to go out and play.
Cat loves to play with a ball.

Chúng ta có thể xây dựng một kho văn bản từ 2 tài liệu trên chỉ bằng cách kết hợp chúng.

Corpus = “Dog hates a cat. It loves to go out and play. Cat loves to play with a ball.”

Và các tính năng sẽ là tất cả các từ độc đáo: & nbsp;

Fetaures: [‘and’, ‘ball’, ‘cat’, ‘dog’, ‘go’, ‘hates’, ‘it’, ‘loves’, ‘out’, ‘play’, ‘to’, ‘with’]

Chúng tôi sẽ gọi nó là một vectơ tính năng. Ở đây chúng tôi nhớ rằng chúng tôi sẽ loại bỏ ’một người bằng cách xem xét nó là một ký tự duy nhất.

Từ nhúng là gì?

Nói một cách rất đơn giản, các từ nhúng là các văn bản được chuyển đổi thành số và có thể có các biểu diễn số khác nhau của cùng một văn bản. Nhưng trước khi chúng tôi đi sâu vào các chi tiết của Word nhúng, câu hỏi sau đây sẽ xuất hiện trong tâm trí:

Tại sao chúng ta cần Word nhúng?

Như chúng ta biết rằng nhiều thuật toán học máy và hầu hết tất cả các kiến ​​trúc học sâu không có khả năng xử lý các chuỗi hoặc văn bản đơn giản ở dạng thô của chúng. Theo một nghĩa rộng, chúng yêu cầu các số số làm đầu vào để thực hiện bất kỳ loại nhiệm vụ nào, chẳng hạn như phân loại, hồi quy, phân cụm, v.v. kiến thức từ nó và xây dựng bất kỳ ứng dụng hữu ích.

Nói tóm lại, chúng ta có thể nói rằng để xây dựng bất kỳ mô hình nào trong học máy hoặc học sâu, dữ liệu cấp cuối cùng phải ở dạng số vì các mô hình don lồng hiểu dữ liệu văn bản hoặc hình ảnh trực tiếp như con người.

Vì vậy, một câu hỏi khác cũng có thể xuất hiện trong tâm trí được đưa ra:

Các mô hình NLP đã học các mẫu từ dữ liệu văn bản như thế nào?

Để chuyển đổi dữ liệu văn bản thành dữ liệu số, chúng ta cần một số cách thông minh được gọi là vector hóa hoặc trong thế giới NLP, nó được gọi là từ nhúng.vectorization, or in the NLP world, it is known as Word embeddings.

Do đó, vector hóa hoặc nhúng từ là quá trình chuyển đổi dữ liệu văn bản thành các vectơ số. Sau đó, các vectơ được sử dụng để xây dựng các mô hình học máy khác nhau. Theo cách này, chúng tôi nói rằng đây là các tính năng trích xuất với sự trợ giúp của văn bản với mục đích xây dựng nhiều ngôn ngữ tự nhiên, mô hình xử lý, v.v. Chúng tôi có những cách khác nhau để chuyển đổi dữ liệu văn bản thành các vectơ số mà chúng tôi sẽ thảo luận trong bài viết này sau.extracting features with the help of text with an aim to build multiple natural languages, processing models, etc. We have different ways to convert the text data to numerical vectors which we will discuss in this article later.

Bây giờ hãy xác định từ nhúng chính thức,

Một từ nhúng thường cố gắng ánh xạ một từ bằng cách sử dụng từ điển theo mẫu vectơ của nó.

Vấn đề bài tập về nhà

Bạn có nghĩ rằng từ nhúng và vectơ văn bản là những điều giống nhau hoặc không có sự khác biệt nào giữa hai kỹ thuật này? Nếu có, tại sao và nếu không, thì sự khác biệt chính xác giữa hai kỹ thuật này là gì?

Các loại từ khác nhau nhúng

Nhìn rộng ra, chúng ta có thể phân loại Word nhúng vào hai loại sau:

  • Nhúng từ dựa trên tần số hoặc thống kê
  • Dự đoán từ nhúng từ

Mã hóa một lần (OHE)

Trong kỹ thuật này, chúng tôi đại diện cho từng từ duy nhất trong từ vựng bằng cách đặt một mã thông báo duy nhất có giá trị 1 và rest 0 ở các vị trí khác trong vectơ. Nói một cách đơn giản, một biểu diễn vectơ của một vectơ được mã hóa một lần nóng biểu thị dưới dạng 1 và 0 trong đó 1 là viết tắt của vị trí mà từ tồn tại và 0 ở mọi nơi khác.

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Nguồn hình ảnh: Hình ảnh Google

Hãy để xem xét các câu sau:

Sentence: I am teaching NLP in Python

Một từ trong câu này có thể là NLP ,, Py Python, người dạy học, v.v.

Vì một từ điển được định nghĩa là danh sách tất cả các từ duy nhất có trong câu. Vì vậy, một từ điển có thể trông giống như -

Dictionary: [‘I’, ’am’, ’teaching’,’ NLP’,’ in’, ’Python’] 

Do đó, biểu diễn vectơ trong định dạng này theo từ điển trên là & nbsp;

Vector for NLP: [0,0,0,1,0,0] 
Vector for Python:  [0,0,0,0,0,1]

Đây chỉ là một phương pháp rất đơn giản để thể hiện một từ ở dạng vector.

Nhược điểm của mã hóa một nóng

1. Một trong những nhược điểm của mã hóa một lần nóng là kích thước của vectơ bằng với số lượng từ duy nhất trong từ vựng. One of the disadvantages of One-hot encoding is that the Size of the vector is equal to the count of unique words in the vocabulary.

2. Mã hóa một lần không nắm bắt được các mối quan hệ giữa các từ khác nhau. Do đó, nó không truyền tải thông tin về bối cảnh. One-hot encoding does not capture the relationships between different words. Therefore, it does not convey information about the context.

Đếm Vectorizer

1. Đó là một trong những cách đơn giản nhất để thực hiện vectơ văn bản. It is one of the simplest ways of doing text vectorization.

2. Nó tạo ra một ma trận thuật ngữ tài liệu, là một tập hợp các biến giả cho biết nếu một từ cụ thể xuất hiện trong tài liệu. It creates a document term matrix, which is a set of dummy variables that indicates if a particular word appears in the document.

3. Đếm Vectorizer sẽ phù hợp và tìm hiểu từ vựng và cố gắng tạo một ma trận thuật ngữ tài liệu trong đó các ô riêng lẻ biểu thị tần số của từ đó trong một tài liệu cụ thể, còn được gọi là tần số thuật ngữ và các cột được dành riêng cho mỗi Từ trong kho văn bản. Count vectorizer will fit and learn the word vocabulary and try to create a document term matrix in which the individual cells denote the frequency of that word in a particular document, which is also known as term frequency, and the columns are dedicated to each word in the corpus.

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Nguồn hình ảnh: Hình ảnh Google

Hãy để xem xét các câu sau:

Sentence: I am teaching NLP in Python

Một từ trong câu này có thể là NLP ,, Py Python, người dạy học, v.v.

Document-1: He is a smart boy. She is also smart.
Document-2: Chirag is a smart person.

Vì một từ điển được định nghĩa là danh sách tất cả các từ duy nhất có trong câu. Vì vậy, một từ điển có thể trông giống như -

Unique Words: [‘He’, ’She’, ’smart’, ’boy’, ’Chirag’, ’person’]

Do đó, biểu diễn vectơ trong định dạng này theo từ điển trên là & nbsp;

Đây chỉ là một phương pháp rất đơn giản để thể hiện một từ ở dạng vector.

Nhược điểm của mã hóa một nóng1. Một trong những nhược điểm của mã hóa một lần nóng là kích thước của vectơ bằng với số lượng từ duy nhất trong từ vựng.2. Mã hóa một lần không nắm bắt được các mối quan hệ giữa các từ khác nhau. Do đó, nó không truyền tải thông tin về bối cảnh.Đếm Vectorizer1. Đó là một trong những cách đơn giản nhất để thực hiện vectơ văn bản.2. Nó tạo ra một ma trận thuật ngữ tài liệu, là một tập hợp các biến giả cho biết nếu một từ cụ thể xuất hiện trong tài liệu.
3. Đếm Vectorizer sẽ phù hợp và tìm hiểu từ vựng và cố gắng tạo một ma trận thuật ngữ tài liệu trong đó các ô riêng lẻ biểu thị tần số của từ đó trong một tài liệu cụ thể, còn được gọi là tần số thuật ngữ và các cột được dành riêng cho mỗi Từ trong kho văn bản.1 1 2 1 0 0
Công thức ma trận0 0 1 0 1 1

Hãy xem xét một tập đoàn C chứa các tài liệu d {d1, d2, ..dd} từ đó chúng tôi trích xuất n mã thông báo duy nhất. Bây giờ, từ điển bao gồm các mã thông báo N này và kích thước của ma trận vectơ đếm được hình thành được cho bởi d x n. Mỗi hàng trong ma trận m mô tả tần số của các mã thông báo có trong tài liệu d (i).

Hãy xem xét ví dụ sau: for the above matrix formed, let’s see the word vectors generated.

Vector for ‘smart’ is [2,1], 
Vector for ‘Chirag’ is [0, 1], and so on.

Từ điển được tạo ra chứa danh sách các token (từ) duy nhất có mặt trong kho văn bản

  • Ở đây, d = 2, n = 6
  • Vì vậy, ma trận đếm m có kích thước 2 x 6 sẽ được biểu diễn dưới dạng -

Anh ta

Sentences:
Dog hates a cat. It loves to go out and play.
Cat loves to play with a ball.
0

Cô ấy

thông minh

Chàng trai

Chirag

người

D1

  • D2
  • Bây giờ, một cột cũng có thể được hiểu là một vectơ từ cho từ tương ứng trong ma trận M.

Ví dụ, đối với ma trận trên được hình thành, hãy để Lôi xem các vectơ từ được tạo.

Các hàng và cột chỉ ra điều gì trong ma trận đếm trên?

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Nguồn hình ảnh: Hình ảnh Google

Bag-of-Words(BoW)

Các hàng chỉ ra các tài liệu trong kho văn bản và

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Nguồn hình ảnh: Hình ảnh Google

Các cột chỉ ra các mã thông báo trong từ điển.

  • Một cách khác để đọc D2 hoặc hàng thứ hai trong ma trận trên được hiển thị bên dưới:
  • Một số biến thể trong chuẩn bị ma trận

Một cách khác để đọc D2 hoặc hàng thứ hai trong ma trận trên được hiển thị bên dưới:

Một số biến thể trong chuẩn bị ma trận

Tạo vectơ cho mỗi câu

Ở đây, kích thước vectơ cho một tài liệu cụ thể bằng với số lượng từ duy nhất có trong kho văn bản. Đối với mỗi tài liệu, chúng tôi sẽ điền vào từng mục của một vectơ với tần số từ tương ứng trong một tài liệu cụ thể.

Hãy cùng hiểu rõ về sự trợ giúp của ví dụ sau:

Sentences:
Dog hates a cat. It loves to go out and play.
Cat loves to play with a ball.
1

3 câu này là các câu ví dụ và kết hợp nó tạo thành một kho văn bản và bước đầu tiên của chúng tôi là thực hiện mã thông báo. Trước khi mã hóa, chúng tôi sẽ chuyển đổi tất cả các câu thành chữ thường hoặc chữ hoa. Ở đây, để bình thường hóa, chúng tôi sẽ chuyển đổi tất cả các từ trong các câu thành chữ thường.

Bây giờ, đầu ra của các câu sau khi chuyển đổi thành chữ thường là:

Sentences:
Dog hates a cat. It loves to go out and play.
Cat loves to play with a ball.
2

Bây giờ chúng tôi sẽ thực hiện mã thông báo.

Sau khi chia các câu thành các từ và tạo một danh sách với tất cả các từ duy nhất theo thứ tự bảng chữ cái, chúng tôi sẽ nhận được đầu ra sau sau bước mã thông báo:

Sentences:
Dog hates a cat. It loves to go out and play.
Cat loves to play with a ball.
3

Bây giờ, bước tiếp theo của chúng tôi là gì?

Tạo vectơ cho mỗi câu với tần suất của các từ. Đây được gọi là ma trận thưa thớt. Dưới đây là ma trận thưa thớt của các câu ví dụ.

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Do đó, như chúng tôi đã thảo luận ở đây, mỗi tài liệu được biểu diễn dưới dạng một mảng có kích thước giống như độ dài của tổng số tính năng. Tất cả các giá trị của mảng này sẽ không ngoài một vị trí và vị trí đó đại diện cho địa chỉ các từ bên trong vectơ tính năng.

Biểu diễn cung cuối cùng là tổng của vectơ tính năng từ.

Bây giờ, việc thực hiện ví dụ trên trong Python được đưa ra dưới đây:

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Nhược điểm của túi từ

1. Phương pháp này không bảo tồn thứ tự từ.This method doesn’t preserve the word order.

2. Nó không cho phép rút ra các suy luận hữu ích cho các tác vụ NLP xuôi dòng. It does not allow to draw of useful inferences for downstream NLP tasks.

Vấn đề bài tập về nhà

Bạn có nghĩ rằng có một số loại mối quan hệ giữa hai kỹ thuật mà chúng tôi đã hoàn thành - đếm vectorizer và túi từ? Tại sao hoặc tại sao không?

Vectơ n-gram

1. Tương tự như kỹ thuật vector hóa đếm, trong phương pháp N-gram, một ma trận thuật ngữ tài liệu được tạo ra và mỗi ô đại diện cho số lượng. Similar to the count vectorization technique, in the N-Gram method, a document term matrix is generated, and each cell represents the count.

2. Các cột biểu thị tất cả các cột của các từ liền kề có độ dài n. The columns represent all columns of adjacent words of length n.

3. Đếm Vectorization là một trường hợp đặc biệt của N-gram trong đó n = 1.Count vectorization is a special case of N-Gram where n=1.

4. N-gram xem xét chuỗi n từ n trong văn bản; trong đó n là (1,2,3 ..) như 1 gram, 2 gram. cho cặp mã thông báo. Không giống như Bow, nó duy trì trật tự từ. N-grams consider the sequence of n words in the text; where n is (1,2,3.. ) like 1-gram, 2-gram. for token pair. Unlike BOW, it maintains word order.

Ví dụ,

Sentences:
Dog hates a cat. It loves to go out and play.
Cat loves to play with a ball.
4

Giá trị n được chọn dựa trên hiệu suất.

Làm thế nào để giá trị của N trong phương thức N-gram tạo ra sự đánh đổi?

Việc đánh đổi được tạo ra trong khi chọn các giá trị N. Nếu chúng ta chọn N làm số nhỏ hơn, thì nó có thể không đủ để cung cấp thông tin hữu ích nhất. Nhưng ngược lại, nếu chúng ta chọn N là giá trị cao, thì nó sẽ mang lại một ma trận khổng lồ với rất nhiều tính năng. Do đó, N-gram có thể là một kỹ thuật mạnh mẽ, nhưng nó cần được chăm sóc nhiều hơn một chút.

Nhược điểm của n-gram

1. Nó có quá nhiều tính năng.It has too many features.

2. Do quá nhiều tính năng, bộ tính năng trở nên quá thưa thớt và rất tốn kém về mặt tính toán. Due to too many features, the feature set becomes too sparse and is computationally expensive.

3. Chọn giá trị tối ưu của N không phải là nhiệm vụ dễ dàng.Choose the optimal value of N is not that easy task.

Vector hóa TF-idf

Như chúng ta đã thảo luận trong các kỹ thuật trên rằng phương pháp cung rất đơn giản và hoạt động tốt, nhưng vấn đề với điều đó là nó đối xử với tất cả các từ như nhau. Kết quả là, nó không thể phân biệt các từ rất phổ biến hoặc từ hiếm. Vì vậy, để giải quyết vấn đề này, TF-idf đi vào hình ảnh!

Tần suất tài liệu có tần số có thời hạn (TF-IDF) đưa ra một biện pháp đưa ra tầm quan trọng của một từ để xem xét tùy thuộc vào tần suất xảy ra trong tài liệu và một kho văn bản.

Để hiểu TF-IDF, trước hết chúng tôi sẽ hiểu riêng hai thuật ngữ:

  • Tần số thời hạn (TF)
  • Tần số tài liệu nghịch đảo (IDF)

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & NBSP; Nguồn hình ảnh: Hình ảnh Google

Tần số thời hạn

Tần số thuật ngữ biểu thị tần số của một từ trong một tài liệu. Đối với một từ được chỉ định, nó được định nghĩa là tỷ lệ của số lần một từ xuất hiện trong một tài liệu với tổng số từ trong tài liệu.

Hoặc, nó cũng được định nghĩa theo cách sau:

Đó là tỷ lệ phần trăm của số lần một từ (x) xảy ra trong một tài liệu cụ thể (y) chia cho tổng số từ trong tài liệu đó.

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Công thức tìm kiếm tần số thời hạn được đưa ra như:

Sentences:
Dog hates a cat. It loves to go out and play.
Cat loves to play with a ball.
5

Ví dụ: xem xét tài liệu sau đây Consider the following document

Sentences:
Dog hates a cat. It loves to go out and play.
Cat loves to play with a ball.
6

Đối với câu trên, giá trị tần số thuật ngữ cho Word Cat sẽ là: TF (‘Cat,) = 1/6 tf(‘cat’) = 1 / 6

LƯU Ý: Câu Cat Cat thích chơi với một quả bóng có 7 từ nhưng từ ’A đã bị bỏ qua.Sentence “Cat loves to play with a ball” has 7 total words but the word ‘a’ has been ignored.

Tần số tài liệu nghịch đảo

Nó đo lường tầm quan trọng của từ trong kho văn bản. Nó đo lường mức độ phổ biến của một từ cụ thể trên tất cả các tài liệu trong kho văn bản.

Đó là tỷ lệ logarit của NO. của tổng tài liệu đến không. của một tài liệu với một từ cụ thể.

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Thuật ngữ này của phương trình giúp rút ra các từ hiếm vì giá trị của sản phẩm là tối đa khi cả hai thuật ngữ đều tối đa. Điều đó nghĩa là gì? Nếu một từ xuất hiện nhiều lần trên nhiều tài liệu, thì mẫu số DF sẽ tăng, giảm giá trị của thuật ngữ thứ hai. (Tham khảo công thức được đưa ra dưới đây)

Công thức tìm kiếm tần số tài liệu nghịch đảo được đưa ra như:

Sentences:
Dog hates a cat. It loves to go out and play.
Cat loves to play with a ball.
7

Ở đây ý tưởng chính là tìm những từ phổ biến hoặc hiếm.

Ví dụ, trong bất kỳ kho văn bản nào, một vài từ như ‘là, hay và rất phổ biến, và rất có thể, chúng sẽ có mặt trong hầu hết mọi tài liệu. In any corpus, few words like ‘is’ or ‘and’ are very common, and most likely, they will be present in almost every document.

Hãy nói rằng từ ‘là có mặt trong tất cả các tài liệu là một kho tài liệu gồm 1000 tài liệu. IDF cho điều đó sẽ là:

IDF (is is Hồi) bằng log (1000/1000) = log 1 = 0

Do đó, những từ phổ biến sẽ có tầm quan trọng ít hơn.

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Công thức tìm kiếm TF-IDF được đưa ra là: & nbsp; 

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

ở đâu,

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Sentences:
Dog hates a cat. It loves to go out and play.
Cat loves to play with a ball.
8

Những điểm quan trọng về vectơ TF-idf

1. Tương tự như phương thức vector hóa đếm, trong phương thức TF-IDF, một ma trận thuật ngữ tài liệu được tạo và mỗi cột đại diện cho một từ duy nhất riêng lẻ. Similar to the count vectorization method, in the TF-IDF method, a document term matrix is generated and each column represents an individual unique word.

2. Sự khác biệt trong phương pháp TF-IDF là mỗi ô không chỉ ra tần số thuật ngữ, nhưng chứa giá trị trọng lượng biểu thị mức độ quan trọng của một từ đối với một tin nhắn văn bản hoặc tài liệu riêng lẻ The difference in the TF-IDF method is that each cell doesn’t indicate the term frequency, but contains a weight value that signifies how important a word is for an individual text message or document

3. Phương pháp này dựa trên phương thức tần số nhưng nó khác với vectơ đếm theo nghĩa là nó sẽ được xem xét không chỉ là sự xuất hiện của một từ trong một tài liệu mà trong toàn bộ kho văn bản. This method is based on the frequency method but it is different from the count vectorization in the sense that it takes into considerations not just the occurrence of a word in a single document but in the entire corpus.

4. TF-IDF cho trọng lượng hơn cho các sự kiện ít xảy ra ít xảy ra và ít trọng lượng hơn cho các sự kiện dự kiến. Vì vậy, nó xử phạt các từ thường xuyên xảy ra thường xuyên trong một tài liệu như là The The The, ông, là người khác, nhưng chỉ định trọng lượng lớn hơn cho các từ ít thường xuyên hơn hoặc hiếm. TF-IDF gives more weight to less frequently occurring events and less weight to expected events. So, it penalizes frequently occurring words that appear frequently in a document such as “the”, “is” but assigns greater weight to less frequent or rare words.

5. Sản phẩm của TF X IDF của một từ cho biết tần suất tìm thấy mã thông báo trong tài liệu và mã thông báo độc đáo như thế nào đối với toàn bộ kho tài liệu.The product of TF x IDF of a word indicates how often the token is found in the document and how unique the token is to the whole entire corpus of documents.

Bây giờ, việc thực hiện ví dụ được thảo luận trong Bow in Python được đưa ra dưới đây:

Hướng dẫn convert words to vectors python - chuyển từ sang vector python

Vấn đề bài tập về nhà

Bạn có nghĩ rằng có thể có một số biến thể của kỹ thuật TF-IDF dựa trên một số tiêu chí? Nếu có, sau đó đề cập đến những biến thể đó, và nếu không, vậy thì tại sao?

Lưu ý quan trọng

Tất cả các kỹ thuật này mà chúng tôi đã thảo luận ở đây đều phải chịu vấn đề về sự thưa thớt của vector và kết quả là, nó không xử lý các mối quan hệ từ phức tạp và không thể mô hình hóa các chuỗi văn bản dài. Vì vậy, trong phần tiếp theo của loạt bài này, chúng tôi sẽ cố gắng xem xét các kỹ thuật vector hóa văn bản thời đại mới, cố gắng khắc phục vấn đề này.

Điều này kết thúc phần 5 của chúng tôi về loạt blog về xử lý ngôn ngữ tự nhiên!

Các bài đăng trên blog khác của tôi

Bạn cũng có thể kiểm tra các bài viết trên blog trước đây của tôi.

Bài viết blog khoa học dữ liệu trước đây.

LinkedIn

Đây là hồ sơ LinkedIn của tôi trong trường hợp bạn muốn kết nối với tôi. Tôi sẽ rất vui khi được kết nối với bạn.my Linkedin profile in case you want to connect with me. I’ll be happy to be connected with you.

E-mail

Đối với bất kỳ truy vấn nào, bạn có thể gửi thư cho tôi trên gmail.Gmail.

Ghi chú kết thúc

Cảm ơn vì đã đọc!

Tôi hy vọng rằng bạn đã thích bài báo. Nếu bạn thích nó, hãy chia sẻ nó với bạn bè của bạn. Một cái gì đó không được đề cập hoặc muốn chia sẻ suy nghĩ của bạn? Hãy bình luận bên dưới và tôi sẽ liên hệ lại với bạn. 😉

Các phương tiện truyền thông được hiển thị trong bài viết này không thuộc sở hữu của Analytics Vidhya và được sử dụng theo quyết định của tác giả.

Làm thế nào các từ được đại diện như các vectơ?

Các từ được biểu diễn bằng các vectơ dày đặc trong đó một vectơ đại diện cho hình chiếu của từ vào một không gian vectơ liên tục. Đó là một cải tiến hơn các sơ đồ mã hóa mô hình túi truyền thống truyền thống trong đó các vectơ lớn thưa thớt được sử dụng để đại diện cho từng từ.dense vectors where a vector represents the projection of the word into a continuous vector space. It is an improvement over more the traditional bag-of-word model encoding schemes where large sparse vectors were used to represent each word.

TF IDF có phải là một từ nhúng không?

Các kỹ thuật nhúng từ được sử dụng để thể hiện các từ về mặt toán học.Một mã hóa nóng, TF-IDF, Word2VEC, Fasttext thường được sử dụng các phương thức nhúng từ.Một trong những kỹ thuật này (trong một số trường hợp, một số) được ưa thích và sử dụng theo trạng thái, kích thước và mục đích xử lý dữ liệu.One Hot Encoding, TF-IDF, Word2Vec, FastText are frequently used Word Embedding methods. One of these techniques (in some cases several) is preferred and used according to the status, size and purpose of processing the data.

Một vectơ từ trong NLP là gì?

Word nhúng hoặc vector từ là một phương pháp trong NLP để ánh xạ các từ hoặc cụm từ từ từ vựng đến một vectơ tương ứng của các số thực được sử dụng để tìm dự đoán từ, tương tự từ/ngữ nghĩa.Quá trình chuyển đổi từ thành các số được gọi là vector hóa.a methodology in NLP to map words or phrases from vocabulary to a corresponding vector of real numbers which used to find word predictions, word similarities/semantics. The process of converting words into numbers are called Vectorization.

Từ nhúng trong Python là gì?

Nhúng từ là một kỹ thuật mô hình ngôn ngữ được sử dụng để ánh xạ các từ vào các vectơ của các số thực.Nó đại diện cho các từ hoặc cụm từ trong không gian vector với một số chiều.Word nhúng có thể được tạo bằng các phương pháp khác nhau như mạng thần kinh, ma trận đồng xuất, mô hình xác suất, v.v.a language modeling technique used for mapping words to vectors of real numbers. It represents words or phrases in vector space with several dimensions. Word embeddings can be generated using various methods like neural networks, co-occurrence matrix, probabilistic models, etc.