Articles

[podstawy ML] [regresja] jak stwierdzić, czy zbiór danych jest liniowy, czy nie?

Cóż, pytanie jest dość proste w tej sprawie.

skąd wiesz, czy dany zbiór danych ma charakter liniowy czy nieliniowy? Oczywiście wybór modeli do wykorzystania będzie zależał od tego.

no to zaczynajmy.

Po pierwsze, różnica między funkcjami liniowymi i nieliniowymi:

(Left)funkcje liniowe (prawe)funkcje nieliniowe

funkcja liniowa: może być po prostu zdefiniowana jako funkcja, która zawsze postępuje zgodnie z zasadą:

Wejście/Wyjście = stała.

równanie liniowe jest zawsze wielomianem stopnia 1 (na przykład x+2Y+3=0). W przypadkach dwuwymiarowych zawsze tworzą linie; w innych wymiarach mogą również tworzyć płaszczyzny, punkty lub hiperplany. Ich „kształt”jest zawsze idealnie prosty, bez żadnych krzywych. Dlatego nazywamy je równaniami liniowymi.

funkcja nieliniowa: każda funkcja, która nie jest liniowa, jest po prostu nieliniowa. Wielomiany wyższego stopnia są nieliniowe. Funkcje trygonometryczne (jak sin czy cos) są nieliniowe. Pierwiastki kwadratowe są nieliniowe.

to wszystko jest w porządku i elegancko, ale jak znajdziemy, czy zbiór danych jest liniowy, czy nie. Wykresy są łatwe, jeśli mamy jeden wymiar (nie zawsze, jak zobaczymy tutaj), ale jak poradzić sobie z wielowymiarowymi zbiorami danych?