Как предсказать задачу сотрудника End_Date через машинное обучение - PullRequest
0 голосов
/ 23 апреля 2020

Как предсказать ниже и какой алгоритм лучше всего подойдет.

У сотрудника есть рабочая активность Start_Date & End_Date (Columns). Лист имеет несколько других столбцов, таких как Work_Complexity (High & Low), нет. подзадач для каждого вида деятельности.

Как предсказать рабочую активность End_Date для Start_Date? Какой алгоритм ML следует использовать?

Может ли это рассматриваться как реалистичный c вариант использования?

спасибо !!!

1 Ответ

1 голос
/ 23 апреля 2020

Да, это реалистичный c вариант использования.

Если у вас есть помеченное средство данных, у вас есть лист, в котором дата начала и окончания сотрудника известна для существующих задач, и теперь вы хотите Для прогнозирования даты окончания любой новой задачи вы можете использовать линейную регрессию с несколькими переменными. Для получения дополнительной информации, связанной с линейной регрессией с несколькими переменными, go по этой ссылке: https://www.investopedia.com/terms/m/mlr.asp

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

Ниже приведена реализация линейной регрессии с одной переменной с использованием python, где мы прогнозируем цену дома, используя только одну переменную:

import pandas as pd  #used for uploading your datasets #you have to import machine learning libraries
import numpy as np   #for array
from sklearn import linear_model  #for prediction

df = pd.read_csv('/content/MLPractical2 - Sheet1.csv')  #you need to upload your file
df

Вывод: файл, который я загрузил, содержит следующие данные

Площадь || Цена

2600 || 555000

3000 || 565000

3200 || 610000

3600 || 680000

4000 || 725000

Давайте сделаем прогноз цены дома, имеющей площадь 3601:

reg = linear_model.LinearRegression()
reg.fit(df[['Area']], df.Price)
reg.predict([[3601]])

Вывод: массив ([669653.42465753])

Мы прогнозируем цену на основе только одна переменная (столбец), т.е. Area

. Как вы можете заметить в загруженном мной файле, цена дома с площадью 3600 равна 680000, а цена, которую наш алгоритм предсказывает для области 3601, равна 669653,42465753, что очень близко.

Давайте рассмотрим реализацию линейной регрессии с несколькими переменными с использованием python; где мы будем использовать несколько переменных, чтобы предсказать цену нашего дома

import pandas as pd                  #same as above
import numpy as np
from sklearn import linear_model
df = pd.read_csv('/content/ML_Sheet_2.csv')
df

Вывод: Файл, который я загрузил в этом случае, содержит следующие данные

Площадь || Bedroooms || Возраст || Цена

2600 || 3.0 || 20 || 550000

3000 || 4.0 || 15 || 565000

3200 || 3,0 || 18 || 610000

3600 || 3.0 || 30 || 595000

4000 || 5.0 || 8 || 760000

Давайте сделаем прогноз стоимости дома, имеющего площадь 3500, 3 спальни и 10 лет

reg = linear_model.LinearRegression()
reg.fit(df[['Area', 'Bedroooms', 'Age']], df.Price)
reg.predict([[3500, 3, 10]])

Вывод: массив ([717775])

Мы прогнозируем цену дома на основе трех переменных: площадь, количество спален и возраст дома.

Как вы можете заметить в загруженном мной файле, цена дома площадью 3200, 3 спальни и 18 лет - это 610000, а цена, которую наш алгоритм прогнозирует для области 3500 (более 3200), 3 спален и 10 лет, составляет 717775, что очень близко и понятно, поскольку мы прогнозируем дом, площадь которого превышает 3200 и менее. age (новый дом стоит дороже), чем 18.

Точно так же вы можете также подготовить таблицу Excel ваших существующих данных и сохранить их в формате .csv и продолжить, как я. Я использую Google Colab для написания своего кода; Я предпочитаю использовать то же самое:

https://colab.research.google.com/notebooks/intro.ipynb#recent = true

Надеюсь, это поможет вам!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...