Я пытаюсь спрогнозировать классификацию с помощью логистической регрессии на основе данных обучения для ряда точек данных тестирования.
Я получаю выходные данные без ошибок, но Мне сказали, что результаты неверны (неправильный вывод будет считаться ошибкой, но при запуске кода ошибок нет).
Обучающие данные представляют собой набор из 4 различных категорий. в 375 точках имеется 3 вариации на точку, поэтому строим график на трехмерном графике. Я запустил программу подсчета на наборе и обнаружил, что более 50% точек относятся к категории 2. Мои первоначальные результаты заключались в том, что все точки тестирования относились к классу 2. Я попробовал сортировать тренировочные данные по нескольким различным наборам: случайный выбор 125 записей (это размер тестовых данных), поиск минимального количества всех категорий и создание обучающего набора с использованием одинакового количества точек из каждой категории.
Нет сортировка = все классы 2
случайная сортировка = все классы 2
сортировка по одинаковому номеру класса = дает мне ответ, в котором есть баллы, отнесенные ко всем 4 категориям , но когда я подключаю их к онлайн-форме финального теста, мой показатель точности составляет 26 %, что соответствует случайной случайности. Итак, я неправильно обрабатываю данные и не знаю где. Я надеюсь, что кто-то с большим опытом работы с классификацией регрессии может указать мне в правильном направлении.
Изменить: нужно ли мне переформатировать (преобразовать) массивы train_X, train_y и test_X перед вызовом Логистическая регрессия? Если да, то как? Возможно, я просто передаю ему искаженные данные.
Если вы хотите получить код со списками входных данных, вы можете пойти сюда: текст
Если вы просто хотите посмотреть код, вот вам:
# forming tables to push through logistic regression
train_X = []
train_y = []
for i in range(len(train_table)):
train_X.append(
[train_table.x.iloc, train_table.y.iloc, train_table.z.iloc]
)
train_y.append(train_table.label.iloc)
test_X = []
for k in range(len(test_table)):
test_X.append([test_table.x.iloc[k], test_table.y.iloc[k], test_table.z.iloc[k]])
# Trying with and without normalize
clf = LogisticRegression().fit(normalize(train_X), train_y)
# clf = LogisticRegression().fit(train_X, train_y)
predict = clf.predict(test_X[:])
prob = clf.predict_proba(test_X[:])
results = pd.DataFrame(
sort_results(test_table, predict, prob),
columns=["", "timestamp", "UTC time", "label", "accuracy"],
)
Подробнее здесь: https://stackoverflow.com/questions/790 ... ct-results
Логистическая регрессия Python не возвращает правильные результаты ⇐ Python
Программы на Python
-
Anonymous
1728195439
Anonymous
Я пытаюсь спрогнозировать классификацию с помощью логистической регрессии на основе данных обучения для ряда точек данных тестирования.
Я получаю выходные данные без ошибок, но Мне сказали, что результаты неверны (неправильный вывод будет считаться ошибкой, но при запуске кода ошибок нет).
Обучающие данные представляют собой набор из 4 различных категорий. в 375 точках имеется 3 вариации на точку, поэтому строим график на трехмерном графике. Я запустил программу подсчета на наборе и обнаружил, что более 50% точек относятся к категории 2. Мои первоначальные результаты заключались в том, что все точки тестирования относились к классу 2. Я попробовал сортировать тренировочные данные по нескольким различным наборам: случайный выбор 125 записей (это размер тестовых данных), поиск минимального количества всех категорий и создание обучающего набора с использованием одинакового количества точек из каждой категории.
Нет сортировка = все классы 2
случайная сортировка = все классы 2
сортировка по одинаковому номеру класса = дает мне ответ, в котором есть баллы, отнесенные ко всем 4 категориям , но когда я подключаю их к онлайн-форме финального теста, мой показатель точности составляет 26 %, что соответствует случайной случайности. Итак, я неправильно обрабатываю данные и не знаю где. Я надеюсь, что кто-то с большим опытом работы с классификацией регрессии может указать мне в правильном направлении.
Изменить: нужно ли мне переформатировать (преобразовать) массивы train_X, train_y и test_X перед вызовом Логистическая регрессия? Если да, то как? Возможно, я просто передаю ему искаженные данные.
Если вы хотите получить код со списками входных данных, вы можете пойти сюда: текст
Если вы просто хотите посмотреть код, вот вам:
# forming tables to push through logistic regression
train_X = []
train_y = []
for i in range(len(train_table)):
train_X.append(
[train_table.x.iloc[i], train_table.y.iloc[i], train_table.z.iloc[i]]
)
train_y.append(train_table.label.iloc[i])
test_X = []
for k in range(len(test_table)):
test_X.append([test_table.x.iloc[k], test_table.y.iloc[k], test_table.z.iloc[k]])
# Trying with and without normalize
clf = LogisticRegression().fit(normalize(train_X), train_y)
# clf = LogisticRegression().fit(train_X, train_y)
predict = clf.predict(test_X[:])
prob = clf.predict_proba(test_X[:])
results = pd.DataFrame(
sort_results(test_table, predict, prob),
columns=["", "timestamp", "UTC time", "label", "accuracy"],
)
Подробнее здесь: [url]https://stackoverflow.com/questions/79057824/python-logisticregression-not-returning-correct-results[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия