AI人工智能 標記數(shù)據(jù)

2020-09-23 15:01 更新

我們已經(jīng)知道,某種格式的數(shù)據(jù)對于機器學(xué)習(xí)算法是必需的。 另一個重要的要求是,在將數(shù)據(jù)作為機器學(xué)習(xí)算法的輸入發(fā)送之前,必須正確標記數(shù)據(jù)。 例如,如果所說的分類,那么數(shù)據(jù)上會有很多標記。 這些標記以文字,數(shù)字等形式存在。與 sklearn 中的機器學(xué)習(xí)相關(guān)的功能期望數(shù)據(jù)必須具有數(shù)字標記。 因此,如果數(shù)據(jù)是其他形式,那么它必須轉(zhuǎn)換為數(shù)字。 這個將單詞標簽轉(zhuǎn)換為數(shù)字形式的過程稱為標記編碼。

標記編碼步驟

按照以下步驟在 Python 中對數(shù)據(jù)標記進行編碼 -

第1步 - 導(dǎo)入有用的軟件包

如果使用 Python,那么這將是將數(shù)據(jù)轉(zhuǎn)換為特定格式(即預(yù)處理)的第一步。 它可以做到如下 -

import numpy as np
from sklearn import preprocessing

第2步 - 定義樣本標簽

導(dǎo)入包后,我們需要定義一些樣本標簽,以便可以創(chuàng)建和訓(xùn)練標簽編碼器。 現(xiàn)在將定義以下樣本標簽 -

## Sample input labels
input_labels = ['red','black','red','green','black','yellow','white']

第3步 - 創(chuàng)建和訓(xùn)練標簽編碼器對象

在這一步中,我們需要創(chuàng)建標簽編碼器并對其進行訓(xùn)練。 以下是 Python 代碼的實現(xiàn) -

## Creating the label encoder
encoder = preprocessing.LabelEncoder()
encoder.fit(input_labels)

以下是運行上面的 Python 代碼后的輸出 -

LabelEncoder()

第4步 - 通過編碼隨機排序列表來檢查性能

此步驟可用于通過編碼隨機排序列表來檢查性能。 下面的 Python 代碼可以做同樣的事情 -

## encoding a set of labels
test_labels = ['green','red','black']
encoded_values = encoder.transform(test_labels)
print("\nLabels =", test_labels)

標簽將如下打印 -

Labels = ['green', 'red', 'black']

現(xiàn)在,可以得到編碼值列表,即將文字標簽轉(zhuǎn)換為數(shù)字,如下所示 -

print("Encoded values =", list(encoded_values))

輸出結(jié)果打印如下 -

Encoded values = [1, 2, 0]
Shell

第5步 - 通過解碼一組隨機數(shù)來檢查性能 -

通過對隨機數(shù)字集進行解碼,可以使用此步驟來檢查性能。 下面的 Python 代碼也可以做同樣的事情 -

## decoding a set of values
encoded_values = [3,0,4,1]
decoded_list = encoder.inverse_transform(encoded_values)
print("\nEncoded values =", encoded_values)

現(xiàn)在,將被打印如下 -

Encoded values = [3, 0, 4, 1]
print("\nDecoded labels =", list(decoded_list))

現(xiàn)在,解碼值將被打印如下 -

Decoded labels = ['white', 'black', 'yellow', 'green']

標記與未標記數(shù)據(jù)

未標記的數(shù)據(jù)主要由自然或人造物體的樣本組成,這些樣本可以很容易從現(xiàn)實世界中獲得。 它們包括音頻,視頻,照片,新聞文章等。

另一方面,帶標簽的數(shù)據(jù)采用一組未標記的數(shù)據(jù),并用一些有意義的標簽或標簽或類來擴充每片未標記的數(shù)據(jù)。 例如,如果有照片,那么標簽可以基于照片的內(nèi)容放置,即它是男孩或女孩或動物或其他任何照片。 標記數(shù)據(jù)需要人類專業(yè)知識或判斷一個給定的未標記數(shù)據(jù)。

有很多情況下,無標簽數(shù)據(jù)豐富且容易獲得,但標注數(shù)據(jù)通常需要人工/專家進行注釋。 半監(jiān)督學(xué)習(xí)嘗試將標記數(shù)據(jù)和未標記數(shù)據(jù)組合起來,以建立更好的模型。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號