Начиная с Data Mining - PullRequest
       35

Начиная с Data Mining

4 голосов
/ 14 сентября 2011

Я начал изучать Data Mining и хочу создать небольшой проект на C ++ / Java, который позволил бы мне использовать базу данных, скажем из твиттера, а затем публиковать определенный набор результатов (например, для всех новостей в ленте). ). Я хочу знать, как это сделать? С чего мне начать?

Ответы [ 6 ]

4 голосов
/ 14 сентября 2011

Это очень широкий вопрос, поэтому на него сложно ответить. Вот некоторые вещи для рассмотрения:

  1. Где вы собираетесь получить данные? Вы упомянули твиттер, но вам все равно придется каким-то образом собирать данные. Вероятно, есть библиотеки для прослушивания потоков Twitter, или вы можете купить данные, если кто-то их продает.

  2. Где вы собираетесь хранить данные? В зависимости от того, сколько у вас будет, и что вы планируете делать с ней, традиционная реляционная база данных может подходить, а может и не подходить. Возможно, вам будет лучше с чем-то, что поддерживает запуск заданий mapreduce «из коробки».

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

Если вы действительно настроены на Java, то я думаю, что кластер Hadoop - это, вероятно, то, с чего вы хотите начать. Он поддерживает написание заданий mapreduce на Java и работает как эффективная платформа для других систем, таких как HBase , хранилище данных, ориентированное на столбцы.

Если ваши данные будут достаточно регулярными (то есть, не будет большого различия в структуре от одной записи к следующей), возможно, Hive будет более подходящим. С Hive вы можете писать SQL-подобные запросы, используя в качестве входных данных только файлы данных. Я никогда не использовал Mahout , но я понимаю, что его возможности машинного обучения подходят для задач интеллектуального анализа данных.

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

1 голос
/ 03 марта 2014

Я могу рассказать вам, как я это сделал.

1) Я получил данные, используя twitter4j .

2) Я проанализировал данные, используя JUNG.Вы должны определить класс, представляющий ребра, и класс, представляющий вершины.Эти классы будут содержать атрибуты ребер и вершин.

3) Затем есть простая функция для добавления ребра g.addedge (V1, V2, edgeFromV1ToV2) или для добавления вершины g.addVertex (V).

Класс, которыйопределяет ребра или вершины легко создавать.Как пример:

`открытый класс MyEdge {

int Id;

}`

То же самое сделано для вершин.Сегодня я бы сделал это с R, но если вы не хотите изучать новый язык программирования, просто импортируйте jung, который является библиотекой java.

1 голос
/ 05 декабря 2013

Хорошие ссылки для вас:

Курс искусственного интеллекта, который преподают люди, которые действительно знают предмет , Веб-сайт Weka , Наборы данных по машинному обучению , Еще больше наборов данных , Платформа для поддержки майнинга больших наборов данных .

Первая ссылка - хорошее введение в ИИ, которому учат Питер Норвиг и Себастьян Трун, Google ResearchДиректор и создатель Стэнли (автономный автомобиль) соответственно.

Вторая ссылка, по которой вы переходите на сайт Weka.Загрузите программное обеспечение, которое довольно интуитивно понятно, и получите книгу.Убедитесь, что вы понимаете все понятия: что такое интеллектуальный анализ данных, что такое машинное обучение, каковы наиболее распространенные задачи и каковы их обоснования.Много играйте с примерами - программный пакет объединяет несколько наборов данных - пока не поймете, что дало результаты.

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

Это далеко не простая тема, но довольно интересная.

1 голос
/ 22 июня 2013

Если вы просто хотите начать изучать Data Mining, есть две книги, которые мне особенно нравятся:

Распознавание образов и машинное обучение. Кристофер М. Бишоп. Springer.

А это бесплатно:

http://infolab.stanford.edu/~ullman/mmds.html

0 голосов
/ 28 апреля 2017

Я хотел бы предложить вам использовать Python или R для процесса интеллектуального анализа данных.Работать с Java или C, это немного сложно в том смысле, что вам нужно много писать

0 голосов
/ 31 марта 2013

Интеллектуальный анализ данных - это широкие поля с множеством различных методов;классификация, кластеризация, сопоставление и поиск по шаблонам, обнаружение выбросов и т. д.

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

Если вы новичок в интеллектуальном анализе данныхЯ бы порекомендовал прочитать некоторые книги, такие как «Введение в интеллектуальный анализ данных» Тана, Штайнбаха и Кумара.

...