Найти в Дзене
Новое электричество

Данные, где данные?

Pic by Nick Youngson
Pic by Nick Youngson

В серии постов об обработке текста мы описали методы, которые позволяют обучить Искусственный интеллект решать многие сложные задачи. За кадром оставался вопрос, откуда брать данные для этого. Ведь обучение AI на 80-90% зависит от качества данных — мысль заезженная, но абсолютно верная.

Сегодня начнём писать о поиске данных. Иногда решение тривиально — скажем, в 2019 году для вас настолько был важен юбилей со дня рождения Пушкина, что вы решили написать алгоритм, который будет писать стихи в его стиле! Не очень сложно догадаться, что в таком случае делать — вам нужна максимально полная подборка стихов великого поэта. Найти её сейчас не особенно трудно.

Но бывает не так. Нам в нашем проекте понадобилось большое количество данных, которые не собраны в одном месте. Единственный способ их получить — это собрать их по крупицам по разным уголкам Интернета. Для таких случаев существует веб-скрэпинг (примерный перевод — "скоблёжка") — автоматизированное выкачивание данных с различных сайтов.

Скрэперы сильно изменились за 90 лет. Источник — каталог "1930 Griffith and Turner Co. : farm and garden supplies".
Скрэперы сильно изменились за 90 лет. Источник — каталог "1930 Griffith and Turner Co. : farm and garden supplies".

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

Копировать всю информацию даже с одной страницы долго и мучительно, а современные сайты состоят из большого их количества — сотен, иногда тысяч. Так что если вы захотите собрать из Интернета большое количество разных данных для обучения AI, вам понадобится либо очень много времени, либо армия сотрудников, либо качественный Скрэпер.

Что будет делать Скрэпер? Он обойдёт все или часть страниц определенного сайта и выкачает с них информацию нужного вида. Сделает это быстро и качественно и запишет всё в красивую структурированную базу, с которой и до обучения AI недалеко. Звучит здорово, правда?

На практике далеко не всё так просто. Большинство сайтов, мягко говоря, не особенно хотят, чтобы с них выкачивали всю информацию, и на пути скрэперов стоит множество разных технических и юридических проблем. Тем не менее, если скрэпить с умом, то это действительно очень эффективный способ получения данных для Искусственного интеллекта. О том, как этого добиться — в следующих постах!

#ai data #искусственный интеллект #машинное обучение #big data #технологии