Основной вопрос о машинном обучении, ищем, с чего начать.

Вопрос или проблема

Мне порекомендовали опубликовать здесь, а не на StackOverflow

Я хочу заняться машинным обучением, и мне просто нужно знать, с чего начать и какой библиотекой/путем пойти.

У меня есть два набора данных, которые выглядят примерно так:

| ИмяПользователя | Локация | Отдел       |
|test.user       | Чикаго  | ИТ         |
|asd.smith       | Лос-Анджелес | Маркетинг |   
|qwe.smith       | Чикаго  | ИТ         |   
|dfg.smith       | Чикаго  | Маркетинг  |

и

| ИмяПользователя | Разрешение | 
|test.user       | 1          | 
|asd.smith       | 2          | 
|asd.smith       | 4          |   
|qwe.smith       | 1          | 
|dfg.smith       | 1          |   
|dfg.smith       | 2          | 
|dfg.smith       | 3          | 

Проблема, которую я пытаюсь решить, заключается в том, если новый человек будет нанят в Чикаго/Маркетинг, какова % вероятность того, что у них будет разрешение X.

Так что с вышеупомянутыми наборами данных я ожидаю, что будет сказано: существует 100% вероятность того, что у них будет Разрешение 1, 100%, что у них будет Разрешение 2, 50% вероятность того, что у них будет Разрешение 3

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

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

Как упомянуто Брайаном Спирингом, это проблема на основе вероятности и лучше всего решается с помощью Байеса.

Когда вы думаете о машинном обучении, что сейчас является довольно модным термином, вам действительно нужно учитывать проблему. Вы хотите изучить характеристики данных (Анализ характеристик) или хотите сделать предсказание для следующего человека, который будет добавлен в список (Предсказание)? Машинное обучение может достичь того и другого, но может потребовать много работы, если вы просто хотите изучить характеристики.

Программное обеспечение, такое как STATA, SPSS и т.д., может обрабатывать размеры данных, которые вы упомянули, и может быть гораздо более простым, когда вам просто нужно понять данные и получить инсайты.

Чтобы дать более содержительный ответ, было бы здорово получить детальное представление о других упомянутых переменных, так как эти переменные также могут оказать значительное влияние на выбранную модель и случаи использования.

Ответ или решение

Введение в машинное обучение: Начало работы с моделью прогнозирования на основе данных

Машинное обучение (МЛ) в последние годы становится все более актуальной темой, и для изучения этой области важно четкое понимание данных и проблем, которые вы хотите решить. В вашем случае вы обладаете двумя наборами данных, и целью является определение вероятности того, что новый сотрудник, нанятый на должность в определенном местоположении и департаменте, получит определенные права (permissions).

Анализ задачи

Данные, которые у вас есть:

  1. Набор данных по пользователям:

    • UserName – имя пользователя
    • Location – местоположение (например, Chicago, LA и т.д.)
    • Department – отдел (например, IT, Marketing)
  2. Набор данных по правам доступа:

    • UserName – имя пользователя
    • Permission – права доступа (например, 1, 2, 3 и т.д.)

Цель заключается в том, чтобы предсказать вероятность наличия определённых прав доступа у нового пользователя на основе его местоположения и отдела. Например, если новый пользователь из Chicago/Marketing, можно ожидать, что он получит определенные права на основе уже имеющихся данных.

Потенциальные подходы и методы

  1. Статистический анализ:
    Прежде чем применять машинное обучение, вы можете начать с простого статистического анализа. Это позволит вам оценить, какая доля существующих пользователей в каждом местоположении и отделе имеет определенные права доступа. Это базовый подход, который поможет установить основную линию для прогнозов.

  2. Наивный байесовский классификатор:
    Одним из простых и эффективных методов для классификации является наивный байесовский классификатор. Он позволяет оценивать вероятности на основе условной вероятности. В данном случае вы можете использовать Location и Department как признаки для прогнозирования Permission.

    • Простота: Наивный байесовский классификатор прост в реализации и имеет низкие требования к обучающим данным.
    • Алгоритм: Вычисление условной вероятности для каждого права в зависимости от категориальных признаков.
  3. Алгоритмы машинного обучения:

    • Логистическая регрессия: Если вы хотите предсказать вероятности для каждого права, вы можете использовать логистическую регрессию. Этот метод хорошо подходит для бинарной и многоклассовой классификации.
    • Деревья решений: Эта методология полезна для визуализации процесса принятия решений и может обрабатывать как числовые, так и категориальные данные.
    • Методы ансамбля: Например, Random Forest или Gradient Boosting. Эти методы часто подходят для более сложных данных и могут предложить лучшее обобщение.

Инструменты и библиотеки для начала

  1. Python библиотеки:

    • Pandas: Для манипуляции и анализа данных. Отлично подходит для работы с таблицами и экспортом/импортом данных.
    • Scikit-learn: Это основная библиотека для машинного обучения в Python. Она включает множество алгоритмов, метрик, а также инструментов для обработки данных.
    • StatsModels: Для статистического анализа и построения моделей (например, для логистической регрессии).
  2. Системы анализа данных:
    Если вы не хотите погружаться в код, рассмотрите использование специализированного программного обеспечения, такого как STATA или SPSS, которые предлагают готовые решения для статистических анализов.

Итоги

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

Также рекомендуется изучить основы теории вероятностей и статистики, чтобы лучше понимать методы, которые вы будете использовать в своем проекте.

Следовав этим шагам, вы сможете эффективно построить модель для прогнозирования прав доступа новых сотрудников.

Оцените материал
Добавить комментарий

Капча загружается...