2017-11-20 8 views
-1

나는 기계 학습에 새로운 오전과 내가 정수 시퀀스 모델에 대한 간단한 RNN을 개발하기 위해 노력하고 있어요 (Integer Sequence Learning - Kaggle Competition)얻기 오류 "에 ValueError :없는 비밀 문자열이 떠 있었다"정수 순서로 학습이

은 내 데이터 세트 촬영됩니다 enter image description here

은 내가 어떻게 해결합니까 : 나는 다음과 같이 오류가 발생하는

import numpy 
import matplotlib.pyplot as plt 
import pandas as pd 
import math 
from keras.models import Sequential 
from keras.layers import Dense 
from keras.layers import SimpleRNN 
from sklearn.preprocessing import MinMaxScaler 
from sklearn.metrics import mean_squared_error 
from keras.preprocessing.sequence import pad_sequences 

# convert an array of values into a dataset matrix 
def create_dataset(dataset, window_size=1): 
    dataX, dataY = [], [] 
    for i in range(len(dataset)-window_size-1): 
     a = dataset[i:(i+window_size), 0] 
     dataX.append(a) 
     dataY.append(dataset[i + window_size, 0]) 
    return numpy.array(dataX), numpy.array(dataY) 

# fix random seed for reproducibility 
numpy.random.seed(7) 

# loading data 
dataframe = pd.read_csv('G:/Python/integer_sequencing/train.csv', usecols=[1], engine='python', skipfooter=3) 

dataset = dataframe.values 
#dataset = dataset.astype('float32') 

train_size = int(len(dataset) * 0.67) #67 per cent used for training 
test_size = len(dataset) - train_size # remaining used for testing 
train, test = dataset[0:train_size], dataset[train_size:len(dataset)] 
#print(train_data.head(n=10)) 

# normalize the datasets 
scaler_train = MinMaxScaler(feature_range=(0, 1)) 
scaler_test = MinMaxScaler(feature_range=(0, 1)) 
train = scaler_train.fit_transform(train) 
test = scaler_test.fit_transform(test) 

# reshape input to be [samples, time steps, features] 
trainX = numpy.reshape(trainX, (trainX.shape[0], 1, trainX.shape[1])) 
testX = numpy.reshape(testX, (testX.shape[0], 1, testX.shape[1])) 

print(trainX.shape) 
print(trainY.shape) 

다음 Kaggle 경쟁에서와 다음은 내 코드입니다? ...

PS 도와주세요 - 나는 문제는 당신이 string 순서 네트워크를 공급하고 있다는 예를

답변

0

Time series prediction을 사용하고 있습니다. 입력 데이터의 dtype을 다시 확인하고 그 내부에 숫자가 float 인 열거 형 배열이 있는지 확인하십시오.

+0

내가 사용하는 데이터 세트는 Kaggle 대회에서 제공되는 데이터 세트입니다. 문제는 정수 시퀀스에서 다음 숫자를 예측하는 것입니다. 훈련 데이터는 가능한 모든 정수 시퀀스로 구성됩니다. –

+0

나는 이해하지만, 입력 데이터가'string' 타입이 아니어야합니다. 그렇지 않으면이 오류가 지속됩니다. 시퀀스를 분할하고 각 문자열 번호를'float'으로 변환하십시오. – Dascienz

+0

감사! 나누기가 잘되었다. –