0
Дек 18
Вопрос состоит как выявить основные переменные влияющий на параметер?
Условие следующее, есть замеренныая данная. Есть условия замера. Задача выявить какие условия наибольше влияют на эту данную.
Я думал использовать нейронные сети на подобии Decision Tree кластеризации. Но так как опыта нет не знаю с чего начать.
Опубликовано
28 Дек 2018
Активность
16
ответов
2199
просмотров
9
участников
6
Рейтинг
Наверное, начать с простых тестов гипотез, если "условия" можно определить дискретно - "делаю так" и "делаю по-другому". Или с анализа чувствительности, учитывая, что могут быть смешанные эффекты (interaction effects). Есть модный термин global sensitivity analysis.
Я думаю градиентного бустинга в любой из реализаций для оценки будет достаточно ) Но лучше иметь скилл хорошего feature engineering, в том числе для уменьшения interaction effects.
PS Но только не надо мешать нейронки, деревья решений и кластеризацию без учителя . Все для разных целей и под различный набор данных. Хотя как говорится в машинном обучении: "No free lunch".
Давайте для начала разберемся сколько переменных в условиях замера?
О,точно! Еще один термин хороший, плюсую: http://www.feat.engineering/
Возможно, автор умышленно ничего не сказал по существу проблемы, преследуя цель максимального охвата вширь
Все может быть, но просто если там всего с десяток переменных, то может и Excel-я хватит
Максимум переменных доходит до 40 при условии что все данные есть. Не все замеры имеют 40 значений, в основном если у одних данных есть одно то у других нет но есть другие в замен.
Причина почему пал выбор на Decision Tree из за того что позволяет кластеризовать данные так как мне надо. Но сейчас понимаю что для этого данные должны быть дискретными в то время как у меня в основном они не дискретные.
Боюсь анализ чувствительности не подходит так как нет самого уровнения. Если было бы можно весь факторный анализ использовать. Хотя можно наверное сделать какую нибудь прокси модель (надо подумать).
"градиентного бустинга" не знаю что такое, но спасибо за наводку постараюсь почитать.
"PS Но только не надо мешать нейронки, деревья решений и кластеризацию без учителя . Все для разных целей и под различный набор данных. Хотя как говорится в машинном обучении: "No free lunch".
Спасибо за совет, буду знать.
Вспомнил, еще одна из причин почему пал выбор на алгоритм деревья решений это выявить не правильные (ошибочные) замеры.
Missing data imputation пригодится
Спасибо! У меня предчувствие, что скорее всего придется избавиться от тех переменных у которых не превышает 3х значений и не пытаться заполнить/востановить все остальные данные.
Что бы было более ясное представления проблемы приведу пример (пример похож на сущестующий случай).
Замер устьевого давления по скважинам. Переменные которые идут с замером можно примерно сказать такими -
Список можно продолжить. Цель выявить не правильные замеры и по ходу параметры влиящющие больше всего на замеры. Кто знает может полнолуние или новолуние влияет наибольше на замеры :)
Возможно это как-то поможет:
http://statsoft.ru/solutions/ExamplesBase/tasks/detail.php?ELEMENT_ID=702
http://statsoft.ru/solutions/ExamplesBase/tasks/detail.php?ELEMENT_ID=258
деревья тоже могут помочь теоретически, но это сложнее анализировать.
Попробуй может на kaggle найти схожую тему типа такой https://www.kaggle.com/learn/embeddings
For supervised learning approach, if you add L1 regularization, then predictive model would be penalized to provide sparse features - i.e. remove certain features by forcing their weights to zero.
For unsupervised learning approach (no target variable), try autoencoder (encoder-decoder) which would learn to compress the data into lower dimensional representation. Either the compressed layer or the outputs of the network can be used for anomaly detection.
Like some people suggested above, certain machine learning algorithms provide feature importance as part of predictor, particularly random forests.
Finally things like LIME or SHAP can reveal the importance of features if you build a predictive model.
For time-dependency things are much harder, particularly data has to be post-processed carefully for algorithms such as LSTM, CNN, transformer etc.
Recently on one dataset I just discovered few categories of events that correlate with the failed devices. No machine learning was applied at all!
Sorry for English - no Russian keyboard with me right now.
P.S.: Be careful with gender and personalities - you may get a biased model due to statistically skewed representation.
https://habr.com/post/172043/
Спасибо всем кто ответил и дал дельные советы. Мне потребуются некоторое время что бы переварить всю информацию.
Но я надеюсь я сумел довести смысл своих действий. "Пол" добавил для наглядности :)