[personal profile] dmitry_vk
Но медленно. Пока готовы основные части текстовых операций (текст, аннотация текстов, красивая печать аннотаций) и библиотеки для графематики, морфологии и синтаксиса (которые пришлось еще допиливать (что оказалось сложно) и писать к ним биндинги (что оказалось просто)), обертки над википедией (чтобы статьи доставать из нее) и над ОЕНТом, а также метод поиска текстовых входов в тексте. Из общих вещей осталось сохранением всех результатов в базу (либо через cl-sql, либо через elephant или что-то похожее). После этого можно приступать к экспериментам, что уже интереснее.
Вчера ускорил время работы этого метода с примерно 8 секунд до примерно 0.5 секунд на одну статью. Уже гораздо лучше. Надо подумать над тем, как это запустить на нескольких компах.


CL-USER> (defvar *text* (text-tags:make-string-text "Приступая к доказательству
следует безапелляционно заявить, что матожидание категорически стабилизирует
математический анализ, что известно даже школьникам.")) 
*TEXT*
CL-USER> (defvar *tags* (lemmatizer:lemmatize-text *text* (graphan:parse-graphan :russian *text*)))
*TAGS*
CL-USER> *tags*
(#<TEXT-TAGS:TAG [0, 9) 'Приступая' {TYPE => RUSSIAN-LEXEM, WORDS => ({ПРИСТУПАТЬ})}>
#<TEXT-TAGS:TAG [10, 11) 'к' {TYPE => RUSSIAN-LEXEM, WORDS => ({К})}>
#<TEXT-TAGS:TAG [12, 26) 'доказательству' {TYPE => RUSSIAN-LEXEM, WORDS => ({ДОКАЗАТЕЛЬСТВО})}>
#<TEXT-TAGS:TAG [27, 34) 'следует' {TYPE => RUSSIAN-LEXEM, WORDS => ({СЛЕДОВАТЬ} {СЛЕДОВАТЬ})}>
#<TEXT-TAGS:TAG [35, 50) 'безапелляционно' {TYPE => RUSSIAN-LEXEM, WORDS => ({БЕЗАПЕЛЛЯЦИОННЫЙ})}>
#<TEXT-TAGS:TAG [51, 58) 'заявить' {TYPE => RUSSIAN-LEXEM, WORDS => ({ЗАЯВИТЬ})}>
#<TEXT-TAGS:TAG [58, 59) ',' {TYPE => PUNCTUATION}>
#<TEXT-TAGS:TAG [60, 63) 'что' {TYPE => RUSSIAN-LEXEM, WORDS => ({ЧТО} {ЧТО} {ЧТО})}>
#<TEXT-TAGS:TAG [64, 75) 'матожидание' {TYPE => RUSSIAN-LEXEM, WORDS => ({МАТОЖИДАНИЕ})}>
#<TEXT-TAGS:TAG [76, 89) 'категорически' {TYPE => RUSSIAN-LEXEM, WORDS => ({КАТЕГОРИЧЕСКИ} {КАТЕГОРИЧЕСКИЙ})}>
#<TEXT-TAGS:TAG [90, 103) 'стабилизирует' {TYPE => RUSSIAN-LEXEM, WORDS => ({СТАБИЛИЗИРОВАТЬ})}>
#<TEXT-TAGS:TAG [104, 118) 'математический' {TYPE => RUSSIAN-LEXEM, WORDS => ({МАТЕМАТИЧЕСКИЙ})}>
#<TEXT-TAGS:TAG [119, 125) 'анализ' {TYPE => RUSSIAN-LEXEM, WORDS => ({АНАЛИЗ})}>
#<TEXT-TAGS:TAG [125, 126) ',' {TYPE => PUNCTUATION}>
#<TEXT-TAGS:TAG [127, 130) 'что' {TYPE => RUSSIAN-LEXEM, WORDS => ({ЧТО} {ЧТО} {ЧТО})}>
#<TEXT-TAGS:TAG [131, 139) 'известно' {TYPE => RUSSIAN-LEXEM, WORDS => ({ИЗВЕСТНЫЙ} {ИЗВЕСТНО} {ИЗВЕСТНО})}>
#<TEXT-TAGS:TAG [140, 144) 'даже' {TYPE => RUSSIAN-LEXEM, WORDS => ({ДАЖЕ} {ДАЖЕ})}>
#<TEXT-TAGS:TAG [145, 155) 'школьникам' {TYPE => RUSSIAN-LEXEM, WORDS => ({ШКОЛЬНИК})}>
#<TEXT-TAGS:TAG [0, 156) 'Приступая к ...' {TYPE => SENTENCE}>
#<TEXT-TAGS:TAG [155, 156) '.' {TYPE => PUNCTUATION}>)

Заодно только что дошло, откуда при цифровой обработке звука берутся комплексные числа.
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

dmitry_vk

April 2023

S M T W T F S
      1
234567 8
9101112131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Apr. 5th, 2026 10:54 pm
Powered by Dreamwidth Studios