powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Идентификация фрагментов документа на основании паттерна
21 сообщений из 21, страница 1 из 1
Идентификация фрагментов документа на основании паттерна
    #37423775
Youra Polishuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.

Мне нужно решить такую задачу.
Есть коллекция документов Word в которых содержится описание технологического объекта.
Структура документов похожа, но может немного отличаться. Например: есть таблица со значениями
параметров работы объекта по датам. Количество записей в таблице отличается в зависимости
от времени работы объекта. Если объект останавливался, то в документе присутствует
текст с описанием причины остановки, а после этого опять стандартная таблица с параметрами
работы по времени.
Есть исходные примеры (паттерны) с выделенными фрагментами информации в документе. Например, с помощью
цвета. Мне нужно аналогично раскрасить остальные документы. Т.е. по аналогии идентифицировать фрагменты
в остальных документах.

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

Проблема в том, что выделяемые фрагменты в документе могут быть вложены в друг друга.
Например:
Код: plaintext
<работа>.....<дебит>1000</дебит> ..... <дебит>980</дебит></работа>.

О условиях решения данной задачи договоримся.
Пишите на: Youra_Polishuk@bk.ru
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37423787
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Youra Polishuk,
в документа Ворд строго 1 таблица?
Прикрепите документ
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37423858
Youra Polishuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,

Нет. Таблиц будет столько сколько раз будет остановлен технологический объект.
Решении должно быть универсальным, чтобы такую же разметку делать и для
других документов. Естественно с настройкой. Т.е. натренировал прогу на новом
виде документов и она стала размечать их содержимое.
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37425495
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Позвольте высказать мнение эксперта, чтобы остеречь некоторые горячие головы) МОфис и нейросети - вещи несовместимые. С другой стороны Вы ожидаете универсального решения. Универсальным он может быть лишь настолько, насколько будет специфицирована задача. Шаг задачи в сторону от спецификации, и вся универсальность поползла ...

Распознавание паттернов в общем случае, в т.ч. и нейросетевыми метододами строится явно или неявно по одному базовому принципу. Готовится БД эталонов, определяется набор преобразований, которми допустимо видоизменять эталоны. После чего поступающий паттерн сравнивается с полученными эталонными вариантами и находится "максимально близкий" (критерий близости подбирается). При некоторых условиях можно динамически модифицировать эталонную БД вместе с правилами её преобразования. Приготовьтесь, что будут присутствовать ошибки распознавания. Это автору.

Возвращаясь к задаче. Если вольность в структуре документов высокая, программа будет похожа на действия поисковика - может Вам в Яндекс обратиться? Если варианты внешнего вида паттернов ограничены и достаточно просты (Вас просили озвучить эти правила), возможно достаточно обойтись сбором статистики на все возможные комбинации (например можно определить комбинации в виде правил). Про универсальность решения - см. выше. Как-то так. А коллегам - дерзайте!
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37427953
Youra Polishuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98,

Спасибо за советы.
Я это знаю.
Моя задача заключается в следующем. Я размечаю содержимое однотипных документов
тегами XSD схемы. Нужно сделать это автоматически. Документы очень похожи, так как содержат
описание технологического объекта. Разница в порядке слов и количестве записей в таблицах, а
так же количество таблиц в документе. Можно сказать задача должна быть решена для почти идеальных
документов. Я мог бы сделать это с помощью программы, но это будет выглядеть плоховато.
Мне нужен как бы универсальный алгоритм. Я думаю, что нейросеть подходит.
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37427956
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Youra Polishuk,
Я мог бы сделать это с помощью программы, но это будет выглядеть плоховато.
а чем же не плоховато??
Как Вы лодку назовёте так она и поплывёт, уже бы выложили файл-пример
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37428440
Youra Polishuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,

Приложил пример. Чтобы увидеть теги нужно в ворде нажать Ctrl+Shift+X.
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37430988
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Youra Polishuk,
универсальный алгоритм для Вашей задачи - транслятор программного кода. Вот в этом стиле и нужно писать программу, а нейросети, ну, Вы видимо понаслышке знаете. Тем более, что в основном выделять нужно только числа, и лишь по месту их расположения окаймлять эти места дополнительными тегами. Формально описываете грамматику своей задачи и по ней строите транслятор.
Подумайте, как транслятор распознаёт конструкцию вида

for i = xxx begin s = 34; dd= 55 end else /* переходим на вторую часть */ goto metka1 end for
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37431554
Youra Polishuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98,

Спасибо за советы.
Я понял Ваш вариант решения, но думаю, что сам я не справлюсь с написанием такого транслятора.
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37432234
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А попытка - не пытка (с) Главное, не надо сразу бросаться писать if-else и т.д. Немного подумать, почитать как это делается в принципе ... Лет 15-17 назад я с бухты барахты кому-то курсовую или лаб написал. Нужно было кажется переводить тексты пограмм на Паскале в тексты на Си, коряво, но написал, меньше чем за неделю. Рекурсивные вызовы очень помогают) А уж теперь наверняка об этом в инете есть.

Моё мнение, что Ваша задача распадается на 3 отдельные части, коорые можно создавать независимо:
-Работа с текстом и объектами Ворда
-составление формальной грамматики, т.е. допустимых правил компоновки текстов
-собственно программа по разбору грамматики и отображению текста в иерархическую структуру
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37433215
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98,
Для себя я у же сделал :), алгоритм примерно такой, каждому тегу соответсвует набор определенных условий, находим условие, ставим тег, и так со всеми тегами схемы :)
предложение отправил по почте...........
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37433276
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
R Dmitry, смарт-тегами попахивает, Вы лично смарт теги делали??
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37433285
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,

зачем их делать если есть готовая схема ???
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37433296
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
R Dmitry, Вы лично хоть раз этой схемой пользовались, получалось??
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37433579
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,

Не знал бы, не писал... .
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37433604
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович ЭндрюR Dmitry, Вы лично хоть раз этой схемой пользовались, получалось??

Бабулька в автобусе:
- Милок, ты на следующей выходишь?
- Да
- А те, кто перед тобой, выходят?
- Да
- А ты их спрашивал?
- Да
- И что они ответили?
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37433763
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
R Dmitry, ОК, я Вас за язык не тянул, создам свою ветку
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37433799
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович ЭндрюR Dmitry, ОК, я Вас за язык не тянул, создам свою ветку

Вам впору свой форум создать

а делается это совсем просто, примерно так, схема старт топика

Код: plaintext
1.
Selection.WholeStory
ActiveDocument.XMLNodes.Add "Root", "urn:well"
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37433806
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
R Dmitry, может не будем мешать автору, обойдёмся без паттерна и перейдём в тот топик
ActiveDocument.XMLNodes.Add "Root", "urn:well"
'получаю ошибку 6168 перед применением элемента необходимо присоединить его схему к документу
'что за ересь?? Для чего эта строка??
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37433811
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,

читайте внимательней 11258054 , и вроде по русски написано ??
"перед применением элемента необходимо присоединить его схему к документу"
...
Рейтинг: 0 / 0
Идентификация фрагментов документа на основании паттерна
    #37436736
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
R Dmitry, как же я отстал от жизни !
П.с.
и не думал конкурировать)
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Идентификация фрагментов документа на основании паттерна
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]