Size: a a a

Natural Language Processing

2021 September 19

OR

Oleg Ruban in Natural Language Processing
она часто вместо всего текста даёт первый абзац, а ряд атрибутов не работают для большинства сайтов
источник

YB

Yuri Baburov in Natural Language Processing
Сайты сейчас делятся на две категории:
1) сайты с server side rendering, которые можно отлично парсить из html (1 CPU-ядро секунда на страницу)
2) сайты с client side rendering, которые можно отлично парсить из selenium like (1-2 CPU-ядро минута на страницу). Берём DOM, сохраняем в файл как html, и парсим ровно так же, как в случае (1).
3) Бывают очень редкие исключения, которые можно/нужно парсить как скриншот.
---
При этом общих алгоритмов получения body content достаточно мало, их надо подстраивать под сайт, иначе получаем точность уровня 95-97% для новостей (коммерческие репортят ближе к 99%, по сути они сделали донастройку для кучи сайтов). Слова и предложения все обычно выделяются правильно, 3-5% -- это мусор по краям или случаи выпадения части контента из-за неправильного алгоритма. Очень редко это мусор от рекламы или каких-то других вставок внутри. У тех же биржевых тикеров нормально получаются текстовые версии обычно, часто они помечены как ссылка, и так их даже проще выделить из текста.
источник

d

dePuff in Natural Language Processing
Ну а потом можно и свою писать. Год улучшений и идеальная либа готова)
источник

OR

Oleg Ruban in Natural Language Processing
та пока будет писаться - заказчик найдёт другого исполнителя для парсера)
источник

d

dePuff in Natural Language Processing
Ну если всё-таки нужных сайтов 30 штук, то проще xpath правила под них написать и мониторилку
источник

YB

Yuri Baburov in Natural Language Processing
Newspaper -- кривой почему-то. Из общих алгоритмов рекомендую мой старенький
https://github.com/buriy/python-readability -- он очень простой и его легко донастроить.
Вроде нынче ещё более качественный
https://trafilatura.readthedocs.io/en/latest/
См оценки качества
https://github.com/scrapinghub/article-extraction-benchmark и другие упомянутые на сайте трафилатуры.
источник

SK

Sergey Kamenshchikov in Natural Language Processing
Спасибо 🙏🙏
источник

SK

Sergey Kamenshchikov in Natural Language Processing
Вдохновляет 😁😁
источник

d

dePuff in Natural Language Processing
Ну это по сути четвёртая часть своего поисковика
источник

SK

Sergey Kamenshchikov in Natural Language Processing
Круто! Спасибо. >90 F1 это более, чем достаточно. Спасли 🙏🙏🔥
источник

YB

Yuri Baburov in Natural Language Processing
Там у newspaper 3k тоже показывает 91%, кстати. Может быть улучшили с тех времён, что я помню, но он был изначально более на англоязычные штуки ориентировап. Readability тоже улучшился немного в 2021м, только его больше никто не мерил. Очень редко людям нужен нынче парсинг новостных сайтов.
источник

NK

Nikolay Karelin in Natural Language Processing
А еще есть категория сайтов с защитой от краулинга (например, Bloomberg). Обойти можно, но не всегда и дорого
источник

A

Andrey in Natural Language Processing
много сайтов с прокладкой cloudflare (сам такую ставлю)). те вычисляют.

что касается автоматом парсить, сколько решений не смотрел, лучше beautiful soup и в лучшем случае pdf.read_html нет ничего...
источник

A

Andrey in Natural Language Processing
и если есть RSS, а обычно у новостей он есть, то вообще все просто
источник
2021 September 20

AS

Artem Snegirev in Natural Language Processing
Привет, хочу написать rule-based NLU на грамматиках очень похожий на just.ai - то есть:

1) периспользовать правила для создания композиций
2) использовать мофрологический разбор (например, pymorphy2).
3) извлечение фактов как в yargy
4) простенький DSL, чтобы описывать правила
5) я бы хотел укладываться в около 100ms на разбор одной реплики

Вопросы:
1) кажется yargy может подойти для этой задачи. но я не могу понять от чего растет потребление времени на разбор? можете посоветовать альтернативные варианты?  
2) посоветуйте почитать про прикладные подходы для NLU разбора на правилах, которые используются в индустрии.

Паттерны just.ai для примера:
https://help.just-ai.com/?_ga=2.255641422.778939913.1621921276-345365962.1620993402#/docs/ru/Patterns/about_patterns
источник

AN

Aydar Nasyrov in Natural Language Processing
Всем бодрого  понедельничного утра!

Хотел бы узнать, кто и каким образом считает основные метрики (Accuracy, Precision, Recall, F1) для готовых нейросетей (например, для задачи NER или POS-tagging) ?

У меня добудилась мультиязычная BERT и есть датасет разделенный на три части (train, eval и test). Что можно использовать кроме каких-то костыльных методов или либы datasets от huggingface? (от которой я отказался ввиду невозможности запуска тестов, постоянно ловлю ошибку)
источник

E

Elena in Natural Language Processing
так же, как и для неготовых. У вас должен быть тест, на котором вы проверите работу нейросети, и все.
источник

VG

Vadim Gudkov in Natural Language Processing
Для задачи token classification есть библиотека seqeval
источник

AN

Aydar Nasyrov in Natural Language Processing
Как я понял, вы говорите про эту
https://github.com/chakki-works/seqeval
источник

AN

Aydar Nasyrov in Natural Language Processing
Благодарю за ответы!
источник