Как говорится «чем больше данных, тем больше проблем». На самом деле это не совсем так и не совсем то, что мы имеем ввиду, говоря о данных, но это определенно правда, что большие данные имеют ряд проблем, требующих решения. Данные могут считаться «большими» по двум причинам. Традиционно Большие данные (Big Data) считаются большими в буквальном смысле из-за своего физического размера (имеется ввиду потребляемый объем памяти). В этой статье мы поговорим о другом типе «больших» данных, которые будем называть Широкими данными (Wide Data). Широкие данные – это неструктурированные табличные данные, состоящие из большого количества столбцов и переменных, обычно их более ста. Широкие данные и Большие данные часто используются, как один и тот же термин, но это не обязательно означает одно и то же: например, Широкие данные не обязательно должны быть большими, могут иметь относительно небольшое число строк, но обязательно будут иметь много столбцов. Широкие данные довольно распространены и имеют ряд особенных проблем, которые необходимо изучать в любых аналитических условиях. А теперь давайте обсудим эти проблемы.

Проблемы Широких данных
Одна из сложностей – это громоздкость Широких данных, что создает проблемы, которых нет в более компактных наборах данных. Например, человек может быстро пробежаться по таблице с несколькими столбцами, чтобы понять их содержание. Оперативный анализ позволит понять характер информации, определить разреженность данных, дать грубую оценку диапазону и дисперсии данных. Проделать то же самое с Широкими данными невозможно. Даже прокрутка названий столбцов (если они несут в себе хотя бы какую-либо информацию) займет некоторое время и, как правило, все равно не представляется возможным удержать всю эту информацию.
Широкие данные вводят в заблуждение не только нас, людей, но и машинам приходится несладко, особенно при большом количестве столбцов. Если мы хотим создать модель машинного обучения с Широкими данными, то она может столкнуться с проблемой роста сложности. Большое количество входящей информации в обучаемой модели поспособствует тому, что обучение модели будет или нестабильным, или времязатратным.

Итак, что же тогда делать? Большое количество столбцов доставляет неудобства как людям, так и машинам, но у нас нет цели в произвольном порядке избавиться от столбцов с целью уменьшения размера данных, иначе мы рискуем потерять важные данные. В данном случае решением будет применение обычной процедуры в области данных – снижение размерности. Снижение размерности уменьшит количество столбцов в наших данных, минимизируя при этом потерю информации. Это процедура особенно полезна при отделении «мусора» от ценной информации.
Снижение размерности в PolyAnalyst™
PolyAnalyst™ содержит несколько встроенных методов для снижения размерности. Предлагаем вам ознакомиться с некоторыми из них в материале ниже.
Первый метод – это Упрощение данных. Этот метод предполагает сканирование данных для того, чтобы идентифицировать минимально различающиеся столбцы. Столбец без какой-либо вариативности очень неинформативен и может быть полностью удален. К тому же при Упрощении данных столбцы сравниваются друг с другом на предмет схожести. Схожие столбцы могут быть отсортированы таким образом, чтобы только один из них остался в наборе данных – тем самым мы избежим ненужного дублирования. Вдобавок к упрощению данных можно применить Корреляционный анализ и найти коррелированные переменные. Несмотря на то, что сильно коррелированные переменные не идентичны, они служат общей цели, и в этом случае мы могли бы также рассмотреть возможность сокращения до одной переменной.
Второй метод – это Факторный анализ, который включает в себя такое средство, как анализ основных компонентов. Цель этого метода – найти векторы, вдоль по которым происходит большая часть дисперсии в данных, переориентировать данные вдоль этих векторов и удалить те векторы, в которых возникает небольшая дисперсия. Анимация позволит лучше понять этот процесс.

В этом примере мы измерили и определили только две переменные – высоту и ширину. Мы можем видеть направление, в котором происходит большая часть дисперсии. Это основной компонент. Теперь мы повернем наши данные так, что это направление станет нашей горизонтальной осью, а ортогональное направление – вертикальной. Это, конечно, разрушает семантическое значение этих осей, но это не так важно. Если когда-то они и были шириной и высотой с семантической точки зрения, то сейчас они не несут в себе такой смысл. У нас будет возможность восстановить их исходный смысл после осуществления анализа в меньшем количестве измерений и вернуть результаты на первоначальные оси. Сейчас, если мы хотим уменьшить размер наших данных, мы можем выбросить вертикальную ось, которая демонстрирует небольшую дисперсию. Таким образом, мы исключили целую переменную, но сохранили большую часть полезной информации, упростив при этом дальнейший анализ.
Следите за новостями…
Широкие громоздкие данные довольно распространенное в мире явление, и хотя у них есть свои проблемы, с ними можно справиться с помощью вышеописанных методов, таких как Факторный анализ и Упрощение данных. Поскольку данные легкоуправлямы, PolyAnalyst имеет широкий спектр решений для моделирования. Будьте с нами и читайте наши следующие статьи об анализе данных!