9 лучших алгоритмов обработки данных, которые должен знать каждый специалист по данным
Опубликовано: 2020-02-13Алгоритм — это набор правил или инструкций, которым следует компьютерная программа для выполнения вычислений или выполнения других функций решения проблем. Поскольку наука о данных занимается извлечением значимой информации для наборов данных, существует множество алгоритмов, доступных для решения этой задачи.
Алгоритмы науки о данных могут помочь в классификации, прогнозировании, анализе, обнаружении значений по умолчанию и т. д. Алгоритмы также составляют основу библиотек машинного обучения, таких как scikit-learn. Таким образом, это помогает иметь четкое представление о том, что происходит под поверхностью.
Изучайте программы по науке о данных в лучших университетах мира. Участвуйте в программах Executive PG, Advanced Certificate Programs или Master Programs, чтобы ускорить свою карьеру.
Читайте: Алгоритмы машинного обучения для науки о данных
Оглавление
Часто используемые алгоритмы обработки данных
1. Классификация
Он используется для дискретных целевых переменных, а выходные данные представлены в виде категорий. Кластеризация, ассоциация и дерево решений — это способы обработки входных данных для прогнозирования результата. Например, новый пациент может быть помечен как «больной» или «здоровый» с использованием модели классификации.
2. Регрессия
Регрессия используется для прогнозирования целевой переменной, а также для измерения взаимосвязи между целевыми переменными, которые по своей природе непрерывны. Это простой метод построения «линии наилучшего соответствия» на графике одной функции или набора функций, скажем, x, и целевой переменной y.
Регрессию можно использовать для оценки количества осадков на основе предыдущей корреляции между различными атмосферными параметрами. Другим примером является прогнозирование цены дома на основе таких характеристик, как площадь, местонахождение, возраст и т. д.
Давайте теперь разберемся с одним из самых фундаментальных строительных блоков алгоритмов науки о данных — линейной регрессией.
3. Линейная регрессия
Линейное уравнение для набора данных с N признаками может быть задано как: y = b 0 + b 1 .x 1 + b 2 .x 2 + b 3 .x 3 + …..b n .x n , где b 0 какая-то постоянная.
Для одномерных данных (y = b 0 + b 1 .x) цель состоит в том, чтобы минимизировать потери или ошибки до наименьшего возможного значения для возвращаемой переменной. Это основное назначение функции затрат. Если вы примете b 0 равным нулю и введете разные значения для b 1 , вы обнаружите, что функция стоимости линейной регрессии имеет выпуклую форму.
Математические инструменты помогают оптимизировать два параметра, b 0 и b 1 , и минимизировать функцию стоимости. Один из них обсуждается следующим образом.
4. Метод наименьших квадратов
В приведенном выше случае b 1 — это вес x или наклон линии, а b 0 — точка пересечения. Далее, все предсказанные значения y лежат на прямой. И метод наименьших квадратов стремится минимизировать расстояние между каждой точкой, скажем, (x i , y i ), предсказанными значениями.
Чтобы вычислить значение b 0 , найдите среднее значение всех значений x i и умножьте их на b 1 . Затем вычтите произведение из среднего значения всех y i . Кроме того, вы можете запустить код на Python для значения b 1 . Эти значения будут готовы для включения в функцию стоимости, а возвращаемое значение будет сведено к минимуму с учетом потерь и ошибок. Например, для b 0 = -34,671 и b 1 = 9,102 функция стоимости вернет значение 21,801.
5. Градиентный спуск
Когда есть несколько функций, как в случае множественной регрессии, сложные вычисления выполняются с помощью таких методов, как градиентный спуск. Это итеративный алгоритм оптимизации, применяемый для определения локального минимума функции. Процесс начинается с выбора начального значения для b 0 и b 1 и продолжается до тех пор, пока наклон функции стоимости не станет равным нулю.
Предположим, вам нужно отправиться к озеру, которое находится в самой низкой точке горы. Если у вас нулевая видимость и вы стоите на вершине горы, вы начнете с точки, где земля имеет тенденцию опускаться. Сделав первый шаг и пройдя по пути спуска, вполне вероятно, что вы доберетесь до озера.

В то время как функция стоимости — это инструмент, который позволяет нам оценивать параметры, алгоритм градиентного спуска может помочь в обновлении и обучении параметров модели. Теперь давайте рассмотрим некоторые другие алгоритмы для науки о данных.
6. Логистическая регрессия
В то время как прогнозы линейной регрессии являются непрерывными значениями, логистическая регрессия дает дискретные или бинарные прогнозы. Другими словами, результаты на выходе принадлежат двум классам после применения функции преобразования. Например, логистическую регрессию можно использовать, чтобы предсказать, сдал или не сдал учащийся, будет ли дождь или нет. Узнайте больше о логистической регрессии.
7. Кластеризация K-средних
Это итеративный алгоритм, который распределяет похожие точки данных по кластерам. Чтобы сделать то же самое, он вычисляет центроиды k кластеров и группирует данные на основе наименьшего расстояния от центроида. Узнайте больше о кластерном анализе в интеллектуальном анализе данных.
8. K-ближайший сосед (KNN)
Алгоритм KNN просматривает весь набор данных, чтобы найти k ближайших экземпляров, когда требуется результат для нового экземпляра данных. Пользователь указывает значение k, которое будет использоваться.
9. Анализ основных компонентов (PCA)
Алгоритм PCA уменьшает количество переменных, фиксируя максимальную дисперсию данных в новой системе «основных компонентов». Это упрощает изучение и визуализацию данных.
Подведение итогов
Знание описанных выше алгоритмов обработки данных может оказаться чрезвычайно полезным, если вы только начинаете работать в этой области. Понимание мельчайших деталей также может пригодиться при выполнении повседневных функций по обработке данных.
Если вам интересно узнать о науке о данных, ознакомьтесь с программой IIIT-B & upGrad Executive PG по науке о данных , которая создана для работающих профессионалов и предлагает более 10 тематических исследований и проектов, практические семинары, наставничество с отраслевыми экспертами, 1 -на-1 с отраслевыми наставниками, более 400 часов обучения и помощи в трудоустройстве в ведущих фирмах.
Какие моменты мы должны учитывать, прежде чем выбрать алгоритм обработки данных для ML?
Проверить на линейность; самый простой способ сделать это — подобрать прямую линию или выполнить логистическую регрессию или SVM и найти остаточные ошибки. Большая ошибка указывает на то, что данные не являются линейными и что для их подбора требуются сложные методы.
Алгоритмы наивной байесовской, линейной и логистической регрессии просты в построении и выполнении. SVM, который требует настройки параметров, нейронные сети с быстрым временем сходимости и случайные леса требуют значительного времени для обучения данных. В результате сделайте свой выбор, исходя из предпочитаемого вами темпа.
Для создания достоверных прогнозов обычно рекомендуется собирать большой объем данных. Однако доступность данных часто является проблемой. Если обучающие данные ограничены или набор данных содержит меньше наблюдений и больше признаков, таких как генетические или текстовые данные, используйте алгоритмы с высоким смещением/низкой дисперсией, такие как линейная регрессия или линейный SVM.
Что такое гибкие и ограничительные алгоритмы?
Поскольку они создают ограниченное разнообразие форм функций отображения, некоторые алгоритмы называются ограничительными. Линейная регрессия, например, является ограниченным методом, поскольку она может создавать только линейные функции, такие как линии.
Некоторые алгоритмы считаются гибкими, потому что они могут создавать более широкий диапазон форм функций отображения. Например, KNN с k = 1 очень универсален, поскольку он учитывает каждую точку входных данных при создании выходной функции отображения.
Если функция способна предсказать значение отклика для данного наблюдения, близкое к истинному значению отклика, то это характеризуется как ее точность. Метод, который легко интерпретируется (ограничительные модели, такие как линейная регрессия), означает, что каждый отдельный предиктор может быть понят, тогда как гибкие модели обеспечивают более высокую точность за счет низкой интерпретируемости.
Что такое наивный алгоритм Байеса?
Это алгоритм классификации, основанный на теореме Байеса и предположении о независимости предикторов. Проще говоря, наивный байесовский классификатор утверждает, что наличие одной функции в классе не связано с наличием какой-либо другой функции. Наивная байесовская модель проста в построении и особенно полезна для больших наборов данных. Из-за своей простоты Наивный Байес известен тем, что побеждает даже самые мощные алгоритмы классификации.