2015-06-09 5 views
2

Я работаю над предиктором для изучения наиболее вероятного периода сбора урожая винограда, в зависимости от погоды и характеристик винограда, а именно уровня сахара, Ph, кислотности. У меня есть два набора данных, и я думаю о том, как объединить их вместе: один - данные анализа урожая некоторых итальянских виноградников в период 2003-2013 годов, а другой - погода в это десятилетие. То, что я хочу сделать, - это учиться на моих образцах, когда собирать урожай, учитывая диапазон для оптимального уровня сахара, Ph и кислотность и учитывая прогноз погоды. Я думал, что может быть использован некоторый подход к обучению подкрепления. Поскольку анализ до сбора урожая проводится примерно в 5 раз в течение периода созревания винограда, я думал, что это могут быть состояния, в которые я вхожу, в то время как погодные условия могут быть «вероятностями» перехода из состояния в другое. Но я не уверен, какой алгоритм был бы лучшим, поскольку каждое состояние и каждая «вероятность» зависят от нескольких переменных. Мне сказали, что спрятанная модель Маркова будет работать, но мне кажется, что моя проблема не идеально подходит для модели. Есть ли у вас какие-либо предложения? Thx заранееКакой алгоритм машинного обучения был бы уместным?

ответ

3

Это не имеет никакого отношения к фактическому алгоритму, но проблема, с которой вы столкнетесь, заключается в том, что погода крайне локальная. Один виноградник может иметь совершенно другую погоду, чем другая, находящаяся в одной миле от него, верьте или нет. Если вы нанесете дождевые датчики на каждый виноградник, вы это узнаете. Чтобы получить действительно хорошие результаты, вам нужно иметь мини-метеостанцию ​​на каждом винограднике. При отсутствии этого наилучшим вариантом является использование только виноградников в непосредственной близости от метеорологических измерений. Например, если ваши данные из аэропорта, используйте только виноградники прямо рядом с аэропортом.

Усиление обучения подходит, если вы можете контролировать действие. Это похоже на кнопки обезьяны. Вы нажимаете кнопку и оказываетесь в шоке, поэтому вы не нажимаете эту кнопку еще раз. Здесь вы имеете пассивный набор данных и не можете проводить экспериментальные действия, поэтому обучение усилению не применяется.

Здесь у вас есть комплексный набор неконтролируемых входов, данные о погоде, управляемый вход (время сбора урожая) и несколько параметров выхода, сахар и т. Д. Учитывая эти данные, вы хотите предсказать, какое время сбора урожая использовать для будущего , неизвестный прогноз погоды.

В целом, что вы делаете, это sensitivity analysis: пытаясь выяснить, как ваши факторы повлияли на результат, который произошел. Сложная часть состоит в том, что результаты могут быть вызваны некоторой неочевидной моделью. Например, возможно, 3 недели засухи, а затем 2 недели сильного дождя подразумевают, что лучший урожай составит 65 дней, или что-то в этом роде.

Итак, что вам нужно сделать, это охарактеризовать данные, чтобы охарактеризовать их вероятными способами, а затем провести анализ чувствительности. Если анализ имеет сильную корреляцию, то вы нашли решение. Если это не так, то вам нужно найти другой способ для детализации данных. Например, ваша featurization может быть числом дней с дождем на 2 дюйма, или это может быть больше всего дней без дождя, или это может быть общее количество дней с ярким солнечным светом. Возможно, несколько функций могут сочетаться, чтобы сделать решение. Варианты ограничены только вашим воображением.

Конечно, как я уже говорил выше, муха в мазе состоит в том, что ваши данные о погоде будут приблизительно приблизительно соответствовать реальной и фактической погоде на конкретном винограднике, поэтому в данных будет шум, возможно, столько шума чтобы сделать хороший результат невозможным.

Почему вы на самом деле не все равно слишком много о погоде

Возвращаясь к данным, имея ненадежный информацию о погоде на самом деле не является проблемой, потому что вы на самом деле не все равно слишком много о погоде , Причина двоякая.Прежде всего, вопрос, на который вы пытаетесь ответить, заключается не в том, когда собирать виноград, а ли ждать урожая или нет. Винтнер всегда может измерять текущий сахар винограда. Таким образом, он просто должен решить: «Я должен собирать виноград сейчас с сахаром X%, или я должен ждать и, возможно, получить лучший сахар Z% позже? Чтобы ответить на этот вопрос, нужны реальные данные, а не погода, это серия отсчетов сахара/кислотности, принятая во времени. То, что вы хотите предсказать, заключается в том, улучшится ли виноград или ухудшится ли он.

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

0

Я согласен с Тайлером в том, что с приемлемой точки зрения погода может нанести ущерб вашему анализу. Тем не менее, я думаю, это для вас, чтобы проверить и узнать! - могут быть некоторые интересные данные, которые выходят из него.

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

Если у вас есть ручка на этом, я бы, как вам кажется, раньше предлагали, попробуйте HMM-, поскольку он скажет вам, какой день, вероятно, был лучшим для урожая. Здесь погода может повредить, но вы узнаете больше о своих данных из более простых экспериментов.

Думаю, что я узнал о механическом обучении, так это то, что, хотя есть рекомендации по выбору алгоритма, который он не всегда задает в камне, и вы можете немного изменить свой вопрос и попробовать новый подход к проблеме, в зависимости от того, насколько свободу, которую вы должны играть с данными. Удачи и приятного времяпровождения!

Смежные вопросы