Методы машинного обучения: линейная регрессия, логистическая регрессия, деревья решений, случайные леса и SVM.

  1. Линейная регрессия.
    Линейная регрессия — это базовый и широко используемый метод машинного обучения для прогнозирования числовых значений на основе входных признаков. Вот пример фрагмента кода на Python с использованием scikit-learn:

    from sklearn.linear_model import LinearRegression
    # Training data
    X_train = [[1], [2], [3]]
    y_train = [2, 4, 6]
    # Create and train the model
    model = LinearRegression()
    model.fit(X_train, y_train)
    # Predict
    X_test = [[4], [5]]
    y_pred = model.predict(X_test)
    print(y_pred)  # Output: [8, 10]
  2. Логистическая регрессия.
    Логистическая регрессия используется для задач двоичной классификации, целью которых является предсказание одного из двух возможных классов. Вот пример использования scikit-learn:

    from sklearn.linear_model import LogisticRegression
    # Training data
    X_train = [[1], [2], [3], [4]]
    y_train = [0, 0, 1, 1]
    # Create and train the model
    model = LogisticRegression()
    model.fit(X_train, y_train)
    # Predict
    X_test = [[5], [6]]
    y_pred = model.predict(X_test)
    print(y_pred)  # Output: [1, 1]
  3. Деревья решений.
    Деревья решений — это универсальные модели машинного обучения, которые можно использовать как для задач классификации, так и для регрессии. Вот пример использования scikit-learn:

    from sklearn.tree import DecisionTreeClassifier
    # Training data
    X_train = [[1], [2], [3], [4]]
    y_train = [0, 0, 1, 1]
    # Create and train the model
    model = DecisionTreeClassifier()
    model.fit(X_train, y_train)
    # Predict
    X_test = [[5], [6]]
    y_pred = model.predict(X_test)
    print(y_pred)  # Output: [1, 1]
  4. Случайные леса.
    Случайные леса — это ансамблевый метод обучения, который объединяет несколько деревьев решений для прогнозирования. Вот пример использования scikit-learn:

    from sklearn.ensemble import RandomForestClassifier
    # Training data
    X_train = [[1], [2], [3], [4]]
    y_train = [0, 0, 1, 1]
    # Create and train the model
    model = RandomForestClassifier()
    model.fit(X_train, y_train)
    # Predict
    X_test = [[5], [6]]
    y_pred = model.predict(X_test)
    print(y_pred)  # Output: [1, 1]
  5. Машины опорных векторов (SVM).
    SVM — это мощный метод классификации, который находит оптимальную гиперплоскость для разделения данных на разные классы. Вот пример использования scikit-learn:

    from sklearn.svm import SVC
    # Training data
    X_train = [[1], [2], [3], [4]]
    y_train = [0, 0, 1, 1]
    # Create and train the model
    model = SVC()
    model.fit(X_train, y_train)
    # Predict
    X_test = [[5], [6]]
    y_pred = model.predict(X_test)
    print(y_pred)  # Output: [1, 1]