Scikit learn функция train_test_split не работает должным образом

Я использую функцию разделения теста поезда для разделения данных для обучения и тестирования, но функция назначает неправильную метку для разделенных данных теста поезда. Вместо присвоения метки из ожидаемой строки он назначает метку из 2-й строки из ожидаемой строки. Пожалуйста, дайте мне знать, где я ошибаюсь?

data = pd.read_csv('To_Tanaji.csv')
print(data.columns)
print(data.shape)
#plt.hist(train["DiffCorrectLatRawLat"])
#test = pd.read_csv('test.csv')

#np.polyfit(data['DistanceRaw2GPS'], data['DistanceCorrected2GPS'], 2)
Output= data.DistanceCorrected2GPS
Input=data.DistanceRaw2GPS

X_train, X_test, y_train, y_test = train_test_split(Input, Output, test_size=0.2)
Оптимизация производительности модели: Руководство по настройке гиперпараметров в Python с Keras
Оптимизация производительности модели: Руководство по настройке гиперпараметров в Python с Keras
Настройка гиперпараметров - это процесс выбора наилучшего набора гиперпараметров для модели машинного обучения с целью оптимизации ее...
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
Udacity Nanodegree Capstone Project: Классификатор пород собак
Udacity Nanodegree Capstone Project: Классификатор пород собак
Вы можете ознакомиться со скриптами проекта и данными на github .
Определение пород собак с помощью конволюционных нейронных сетей (CNN)
Определение пород собак с помощью конволюционных нейронных сетей (CNN)
В рамках финального проекта Udacity Data Scietist Nanodegree я разработал алгоритм с использованием конволюционных нейронных сетей (CNN) для...
Почему Python - идеальный выбор для проекта AI и ML
Почему Python - идеальный выбор для проекта AI и ML
Блог, которым поделился Harikrishna Kundariya в нашем сообществе Developer Nation Community.
0
0
3 705
2

Ответы 2

Функция train_test_split по умолчанию перетасует ваши данные. Если вы этого не хотите, используйте shuffle = False.

https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html

Если возможно, предоставьте свои входные данные (зашифрованные или нет), чтобы воспроизвести проблему.

Спасибо. Это действительно полезно для меня.

Kamble Tanaji 17.05.2019 13:20

Я не предлагаю отключать параметр shuffle в вашей функции train_test_split, а лучше оставьте переменную random_state фиксированной для воспроизводимых разделений. Лучше разделить случайным образом, чем разделить, скажем, верхние 20% набора данных, это может исказить ваши данные.

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(Input, Output, test_size = 0.20, random_state = 0)

Если метки разделения неправильные, вы должны убедиться, что переменные вывода и ввода назначены правильно или нет.

Понятно. мои фактические записи в таблице начинаются со строки № 2 и далее. Первая строка предназначена для индексации столбцов. Вторая строка предназначена для имени атрибутов столбца. Фактическая запись начинается со строки номер 2, но панды считают ее нулевой строкой.

Kamble Tanaji 07.12.2018 06:05

Это не действительная проблема означает

krishna 25.05.2019 20:06

Другие вопросы по теме