📌 Какие значения может давать предсказание модели ?



💬 Спрашивают в 14% собеседований



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



1️⃣ Классификация



Модель предсказывает категорию или класс, к которому принадлежит наблюдение.



Типы предсказаний:



Метка класса: Модель возвращает конкретный класс (например, "спам" или "не спам" для задачи классификации электронной почты).



    from sklearn.datasets import load_iris

from sklearn.model_selection import train_test_split

from sklearn.ensemble import RandomForestClassifier



# Загрузка данных

iris = load_iris()

X, y = iris.data, iris.target



# Разделение данных

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)



# Обучение модели

model = RandomForestClassifier(n_estimators=100, random_state=42)

model.fit(X_train, y_train)



# Предсказание метки класса

y_pred = model.predict(X_test)

print(y_pred)





Вероятности классов: Модель возвращает вероятность того, что наблюдение принадлежит каждому из классов.



Пример кода на Python:



    # Предсказание вероятностей классов

y_proba = model.predict_proba(X_test)

print(y_proba)





2️⃣ Регрессия



Модель предсказывает непрерывное значение. Это может быть любая числовая величина, например, цена дома, температура, спрос на продукцию и т.д.



Типы предсказаний:



Непрерывное значение: Модель возвращает предсказанное числовое значение.



    from sklearn.datasets import load_boston

from sklearn.model_selection import train_test_split

from sklearn.ensemble import RandomForestRegressor



# Загрузка данных

boston = load_boston()

X, y = boston.data, boston.target



# Разделение данных

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)



# Обучение модели

model = RandomForestRegressor(n_estimators=100, random_state=42)

model.fit(X_train, y_train)



# Предсказание непрерывного значения

y_pred = model.predict(X_test)

print(y_pred)





3️⃣ Вероятностное предсказание



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



Типы предсказаний:



Вероятность положительного исхода: Модель возвращает вероятность того, что наблюдение относится к положительному классу.



    from sklearn.datasets import load_breast_cancer

from sklearn.model_selection import train_test_split

from sklearn.linear_model import LogisticRegression



# Загрузка данных

data = load_breast_cancer()

X, y = data.data, data.target



# Разделение данных

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)



# Обучение модели

model = LogisticRegression(max_iter=10000)

model.fit(X_train, y_train)



# Предсказание вероятности положительного исхода

y_proba = model.predict_proba(X_test)[:, 1]

print(y_proba)





В задачах классификации модель может предсказывать метки классов или вероятности классов.



В задачах регрессии модель предсказывает непрерывные числовые значения.



В задачах вероятностного предсказания модель возвращает вероятность наступления события или принадлежности к определенному классу.



🔥 ТОП ВОПРОСОВ С СОБЕСОВ



🔒 База собесов | 🔒 База тестовых