@ lejlot의 답변에 약간의 세부 사항을 추가 할 것이라고 생각했습니다.
필자의 경우 각 청크는 4 개의 피쳐 (f_num)로 구성됩니다. n이 트레이닝 예제의 수이면 각 트레이닝 예제 X (n)은 임의의 개수의 청크 X (c_num)를가집니다. 이들에 대해 적절한 멀티 클래스 분류를 수행하기 위해 각 트레이닝 예제가 모든 트레이닝 예제에서 k = c_num * f_num (c_num = max (X (c_num)) 인 k 개의 항목 목록이되도록 데이터를 조작합니다. 필요한 경우 각 예제는 제로 패딩됩니다.
따라서 내 트레이닝 데이터의 두 가지 예는 다음과 같다 :
dataX = [[0.281716105245517, 0.10665638086841528, 0.040441347270615546, 0.28939545406713674, 0.10708721346704864, 0.03575772540627547, 0.2919388156600431, 0.10567033629920064, 0.03548559505822619, 0.30111236802413277, 0.10374468925995455, 0.03198108511697361, 0.2712227031280739, 0.07861422245376401, 0.024556163928986227, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.29104112097787405, 0.10762980405837547, 0.03363727715955192, 0.31072658779074447, 0.11590693257359923, 0.03705562014318057, 0.3337477701497378, 0.14185185185185187, 0.05529482551143203, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]]
dataY = [2, 1]
dataY 대상 lables는, 제 1 예에 대한 응답으로서 제 2 청크를 나타내고
; 두 번째 예제의 경우 첫 번째 청크. - 그것은 기존 환경의 흥미로운 확장입니다
# import libraries
from sklearn.multiclass import OneVsRestClassifier
from sklearn.svm import LinearSVC
# get data and train
dataX, dataY = getYour(awesome, training, data)
fit = OneVsRestClassifier(LinearSVC(random_state=0)).fit(dataX, dataY)
# fit data and count number of correct
# classifications
correct = 0
prediction = fit.predict(yourNeatTestDataX)
for i in range(len(yourNeatTestDataY)):
if dataY[i] == prediction[i]:
correct += 1
print "Matches:", correct, "of", len(dataY),"=",float(correct)/len(dataY)
나는이에 돌아 오는 유지 :
다음과 같이 그래서, 나는 다음 sklearn 라이브러리에서 OvR classier를 실행 할 데. 정확히이 모델의 결과는 무엇입니까? 전체 문장과 청크 색인입니까? 청크 배열과 색인? "승리 한"덩어리 만? 지금까지 표준 NN 득점에 추가 입력 1 개와 추가 출력 1 개로 보입니다. – Prune최적화가 끝나면 모델의 출력은 모든 학습 데이터에서 올바른 문장의 가장 높은 분류를 산출하는 계수가 바람직하며 이는 테스트 데이터로 이어질 수 있습니다. 즉, chunk (n), n이 1 ... 6 인 테스트 예제를 입력하면 모델은 "올바른"청크를 선택할 가능성이 가장 높습니다. –
알았습니다. 나는 lejiot의 토론 주제를 밀어 넣는 것이 좋습니다. – Prune