Использование линейной регрессии для вычисления положения центроида системы координат

Я все еще новичок в кодировании, и я надеюсь, что это быстрое решение. До сих пор мне удавалось использовать линейную регрессию, чтобы найти центроид x и центроид y 5-сторонних фигур отдельно. Как выяснилось, центроиды x и y различаются друг от друга, поэтому мне нужно использовать некоторую форму линейной регрессии, чтобы использовать x и y в одном и том же алгоритме регрессии.

У меня есть 2 формы (больше фигур будет использоваться при запуске алгоритма), которые имеют координаты x и y. Они приведены в «а» ниже. Значения от «b» - это положения центроидов этих фигур.

#a = [[[ax1,ay1],[ax2,ay2],[ax3,ay3],[ax4,ay4],[ax5,ay5]],[[bx1,by1],[bx2,by2],[bx3,by3],[bx4,by4],[bx5,by5]]]
a = [[[6,4],[0,5],[0,4],[4,-5],[7,-3]],[[7,5],[1,6],[1,5],[5,-4],[8,-2]]]

#b = [[a_cx,a_cy],[b_cx,b_cy]]
b = [[3.88,0.59],[4.88,1.59]]

LR = LinearRegression()
LR.fit(a,b)
new_shape = [[[9,12],[2,8],[1,4],[16,2],[14,8]]]
centroid = LR.predict(new_shape)
print("results = ",centroid)

Я получаю сообщение об ошибке:

'ValueError: Found array with dim 3. Estimator expected <= 2.'

Я не уверен, как пройти эту ошибку, и буду признателен за любую помощь или советы!


person JKerr    schedule 18.12.2018    source источник
comment
Вы не должны использовать для этого линейную регрессию. В линейной регрессии вы определяете линейную зависимость. Таким образом, для каждого набора признаков x вы предсказываете y, где y=f(x), а f — линейная функция. В вашем примере у вас есть много очков для одного прогноза y. Более того, вам не нужно предсказывать центроид, если вы знаете все точки, вы можете просто вычислить его. см. в качестве примера здесь   -  person Zoe    schedule 18.12.2018
comment
Привет @Zoe - спасибо за ответ. Я пытаюсь использовать форму «машинного обучения» для вычисления центроида, поскольку мой проект будет продвигаться дальше с концепцией определения различных точек и т. д., поэтому я не хочу использовать только расчет. Можно ли использовать многомерную линейную регрессию? Я не могу найти много информации в Интернете о том, как использовать его для чисел   -  person JKerr    schedule 18.12.2018