Как подойти к конкурсу numer.ai с анонимными масштабированными числовыми предикторами?


9

Numer.ai существует уже какое-то время, и, похоже, в сети только несколько сообщений или других обсуждений.

Время от времени система менялась, и сегодня ее установка такова:

  1. обучающие (N = 96K) и тестовые (N = 33K) данные с 21 признаком с непрерывными значениями в [0,1] и двоичной целью.
  2. Данные чистые (без пропущенных значений) и обновляются каждые 2 недели. Вы можете загрузить свои прогнозы (на тестовом наборе) и увидеть потерю журнала. Часть тестовых данных - это даже живые данные, и вам платят за хорошие прогнозы.

Что я хотел бы обсудить:

Поскольку функции являются полностью анонимными, я думаю, что мы не можем сделать много функций. Так что мой подход очень механический:

  1. Вдохновленный этим, я использую алгоритм классификации, чтобы отфильтровать те тренировочные данные, которые лучше всего соответствуют моим тестовым данным.
  2. Разберитесь с хорошей предварительной обработкой
  3. обучить хорошие алгоритмы классификации
  4. строить из них ансамбли (укладывать, ..).

Конкретный вопрос:

По поводу шага 1: есть ли у вас опыт такого подхода? Допустим, я заказываю вероятность того, что образцы поездов принадлежат тесту (обычно ниже 0,5), а затем беру наибольшую K вероятностей. Как бы вы выбрали K? Я пытался с 15K ... но главным образом иметь небольшой набор данных тренировки, чтобы ускорить обучение на шаге 3.

Относительно шага 2: данные уже в масштабе 0,1. Если бы я применил любое (как PCA) линейное преобразование, то я бы сломал эту шкалу. Что бы вы попробовали в предварительной обработке, если бы у вас были такие числовые данные и вы не знали, что это на самом деле.

PS: я знаю, что, поскольку numer.ai платит, люди, обсуждающие это, могут помочь мне заработать немного денег. Но так как это публично, это помогло бы кому-то там ...

PPS: Сегодняшняя таблица лидеров имеет интересную картину: две верхние с лог-лоссом 0,64хх, затем номер 3 с 0,66хх, а затем большинство предсказателей достигают 0,6888х.

Таким образом, кажется, что очень малая верхняя часть поля и множество умеренно успешных парней (включая меня).

Ответы:


2

Я посмотрел на подход и выбрал бы K, попробовав диапазон, то есть 5k, 10k, 15k и т. Д., А затем исследуя диапазон, в котором падает лучший результат, скажем, лучший - 15k, тогда я мог бы сделать 13, 14, 15, 16, 17 и так далее.

До сих пор я не нашел никакой предварительной обработки эффективной.

Отвечая на комментарий:

Я пытался использовать LogisticRegression, SVM, нейронные сети, RandomForests, Multinomial NB, дополнительные деревья. Все, кроме нейронных сетей, использующих реализации в sklearn. PyBrain для NN.


Может быть, вы можете добавить больше деталей? Да, мы пробуем данные тренировок разных размеров. Какую предварительную обработку вы пробовали? какие классификаторы? Спасибо!
Ричард
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.