SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
Программные системы для
латентно-семантического анализа


                      Семенов Алексей, 524 гр.


             2010г.
Латентно-семантический анализ
Построение векторной модели для анализа связей
и зависимостей между набором «документов» и
содержащимися в них «термами».

Матрица «терм-документ»:
             Cxt1   Cxt2   Cxt3   Cxt4   Cxt5
      Trm1    1      1      1      1      1
      Trm2    0      1      0      1      1
      Trm3    0      0      0      0      0
      Trm4    1      0      1      0      1
Латентно-семантический анализ
Матрица
   – большая
   – разреженная
   – содержит «шумы»
Решение - приближение матрицей меньшего ранга.

Сингулярное разложение:
Пример
Коллекция «текстов»:

c1: Human machine interface for ABC computer applications
c2: A survey of user opinion of computer system response time
c3: The EPS user interface management system
c4: System and human system engineering testing of EPS
c5: Relation of user perceived response time to error measurement

m1: The generation of random, binary, ordered trees
m2: The intersection graph of paths in trees
m3: Graph minors IV: Widths of trees and well-quasi-ordering
m4: Graph minors: A survey
Пример
Матрица до сингулярного разложения:
                 c1   c2   c3   c4   c5   m1 m2 m3 m4
      human       1    0    0    1    0   0   0 0  0
     interface    1    0    1    0    0   0   0 0  0
     computer     1    1    0    0    0   0   0 0  0
        user      0    1    1    0    1   0   0 0  0
      system      0    1    1    2    0   0   0 0  0
     response     0    1    0    0    1   0   0 0  0
        time      0    1    0    0    1   0   0 0  0
         EPS      0    0    1    1    0   0   0 0  0
       survey     0    1    0    0    0   0   0 0  1
        trees     0    0    0    0    0   1   1 1  0
       graph      0    0    0    0    0   0   1 1  1
      minors      0    0    0    0    0   0   0 1  1
Пример
После сингулярного разложения:
                  c1     c2    c3    c4     c5     m1      m2      m3      m4
     human       0.16   0.40 0.38 0.47     0.18   -0.05   -0.12   -0.16   -0.09
    interface    0.14   0.37 0.33 0.40     0.16   -0.03   -0.07   -0.10   -0.04
    computer     0.15   0.51 0.36 0.41     0.24    0.02    0.06    0.09    0.12
       user      0.26   0.84 0.61 0.70     0.39    0.03    0.08    0.12    0.19
     system      0.45   1.23 1.05 1.27     0.56   -0.07   -0.15   -0.21   -0.05
    response     0.16   0.58 0.38 0.42     0.28    0.06    0.13    0.19    0.22
       time      0.16   0.58 0.38 0.42     0.28    0.06    0.13    0.19    0.22
        EPS      0.22   0.55 0.51 0.63     0.24   -0.07   -0.14   -0.20   -0.11
      survey     0.10   0.53 0.23 0.21     0.27    0.14    0.31    0.44    0.42
       trees    -0.06   0.23 -0.14 -0.27   0.14    0.24    0.55    0.77    0.66
      graph     -0.06   0.34 -0.15 -0.30   0.20    0.31    0.69    0.98    0.85
     minors     -0.04   0.25 -0.10 -0.21   0.15    0.22    0.50    0.71    0.62
Пример
Кластеризация по исходной матрице:
            c1      c2      c3      c4      c5      m1      m2      m3
       c2   -0.19
       c3    0.00    0.00
       c4    0.00    0.00    0.47
       c5   -0.33    0.58    0.00   -0.31
       m1   -0.17   -0.30   -0.21   -0.16   -0.17
       m2   -0.26   -0.45   -0.32   -0.24   -0.26    0.67
       m3   -0.33   -0.58   -0.41   -0.31   -0.33    0.52   0.77
       m4   -0.33   -0.19   -0.41   -0.31   -0.33   -0.17   0.26    0.56

Кластеризация по полученной матрице:
            c1      c2      c3      c4      c5      m1      m2      m3
       c2    0.91
       c3    1.00    0.91
       c4    1.00    0.88    1.00
       c5    0.85    0.99    0.85    0.81
       m1   -0.85   -0.56   -0.85   -0.88   -0.45
       m2   -0.85   -0.56   -0.85   -0.88   -0.44    1.00
       m3   -0.85   -0.56   -0.85   -0.88   -0.44    1.00    1.00
       m4   -0.81   -0.50   -0.81   -0.84   -0.37    1.00    1.00    1.00
Применение
• Сравнение данных
  (кластерный анализ, классификация документов)
• Информационный поиск с использованием векторной модели.
• Поиск схожих документов на разных языках
  (межъязыковой информационный поиск).
• Нахождение отношений между термами
  (выявление синонимии, многозначности).
• Определение наиболее подходящего под контекст терма
  (вопросно-ответные системы).
Open-source проекты
• SenseClusters:
  http://www.d.umn.edu/~tpederse/senseclusters.html


• S-Space:
  http://code.google.com/p/airhead-research/


• Semantic Vectors (ex-Infomap)
  http://code.google.com/p/semanticvectors/
SenseClusters
Основная функция – кластеризация схожих контекстов.

Применение:
• Разрешение неоднозначности слов (в частности, имен)
• Классификация документов разного рода
  (электронных писем, новостных статей)
• Классификация лексики
  (нахождение синонимов, антонимов и других классов отношений)


Сайт проекта:
       http://www.d.umn.edu/~tpederse/senseclusters.html
SenseClusters
Два типа контекстов :
      • с целевым словом (headed context)
      • без целевого слова (headless context).


Биграммы – «термы», характеризующие контекст (документ).
Ngram Statistics Package (NSP) – пакет для выявления биграмм.



Формат входных и выходных данных - SENSEVAL-2
SenseClusters
Программный пакет, написанный на Perl.
Лицензия – GPL.
Структура:
    • /preprocess - предварительная обработка входных данных:
         – text2sval.pl - конвертация в формат Senseval-2.
         – maketarget.pl - разметка целевого слова.
         – prepare_sval2.pl - завершающая проверка на корректность.
    •   /nsp - поиск биграмм в документах.
    •   /vector – построение векторного представления контекстов.
    •   /svd - сингулярное разложение. Используется библиотека SVDPACKC.
    •   /evaluate – кластеризация. Используется пакет CLUTO.
SenseClusters
Входной файл в формате SENSEVAL-2:
SenseClusters

Выходной файл с кластеризованными документами:
SenseClusters
Веб-интерфейс: http://marimba.d.umn.edu/cgi-bin/SC-cgi/index.cgi
S-Space

Основная функция - универсальное средство для построения
  и обработки векторной модели.

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


Сайт проекта:
      http://code.google.com/p/airhead-research/
S-Space
Формат входных данных:
   – Текстовый корпус – один файл.
   – Каждый документ – отдельная строка.
   – Предварительная разметка с помощью встроенных средств.
Минимизация затрат на чтение информации.


Формат выходных данных (.sspace):
Два способа представления – бинарный и текстовый.
Особое представление для сильно разреженной матрицы.
S-Space
 Программный пакет на Java.
 Лицензия – GPL.
 Сборка с помощью Apache Ant.
Структура:
    • /mains - исполняемые классы, реализующие разные векторные модели:
        –   Beagle
        –   COALS
        –   Latent-Semantic Analysis
        –   Incremental Semantic Analysis
        –   Explicit Semantic Analysis
    • /evaluation – алгоритмы кластеризации, определения меры схожести и др.
    • /matrix - работа с матрицами.
    • /text – препроцессоры и конвертеры текстовой информации.


   java mains.lsa -d corpus.txt -F exclude=stopwords.txt -n 500 out.sspace
Semantic Vectors

Основная функция – построение модели семантических
векторов для определения схожести понятий и поиска по
информационной базе.

«Вторая жизнь» проекта Infomap NLP.
Большой акцент на кроссплатформенности.



Cайт проекта:
    http://code.google.com/p/semanticvectors/
Semantic Vectors
Два этапа на архитектурном уровне:
      •   построение векторной модели
      •   поиск по запросам


Использование библиотек Apache Lucene для построения матрицы.

Два способа хранения полученной информации (векторной модели):
      •   простой текст с разделительными символами
      •   оптимизированный формат Lucene (бинарный)


Создаются отдельные файлы с векторами для термов и документов.
Semantic Vectors
   Программный пакет на Java
   Лицензия - new BSD.

   Структура:
         • /lucene – базовые утилиты Apache Lucene.
         • /semanticvectors – построение и обработка векторной модели
              –   BuildIndex – генерация и запись векторов для термов и документов.
              –   CompareTerms – исполняемый класс для сравнения термов.
              –   Search – поиск похожих термов или документов.
              –   VectorUtils – функции над векторами.
              –   LSA – сингулярное разложение (реализация SVDPACKC).

java semanticvectors.Search -queryvectorfile termvectors.bin
                             -searchvectorfile docvectors.bin Abraham
Заключение

• Каждый из рассмотренных пакетов имеет свои
  достоинства и свою область применения.
• SenseClusters и Semantic Vectors разработаны для
  конкретных задач.
• Для научной работы наиболее удобным, гибким
  и разносторонним можно назвать пакет S-Space.
Литература и ресурсы
•   Dominic Widdows, Kathleen Ferraro. 2008. Semantic Vectors : A Scalable Open-
    Source Package and Online Technology Management Application. LREC 2008.

•   Ted Pedersen. 2006. Language Independent Methods of Clustering Similar
    Contexts (with applications). University of Minnesota, Duluth.

•   О.А.Митрофанова, А.С.Мухин, П.В.Паничева. 2007. Автоматическая
    классификация лексики в русскоязычных текстах на основе латентного
    семантического анализа. СПбГУ, кафедра математической лингвистики.

•   http://code.google.com/p/airhead-research/wiki/LatentSemanticAnalysis

•   http://en.wikipedia.org/wiki/Latent_semantic_analysis

•   http://en.wikipedia.org/wiki/Probabilistic_latent_semantic_analysis

Más contenido relacionado

Similar a Программные системы для латентно-семантического анализа

Программный комплекс "НейроКС"
Программный комплекс "НейроКС"Программный комплекс "НейроКС"
Программный комплекс "НейроКС"kulibin
 
!Predictive analytics part_3
!Predictive analytics part_3!Predictive analytics part_3
!Predictive analytics part_3Vladimir Krylov
 
Устойчивая привязка к синтаксическим конструкциям в изменяющемся коде
Устойчивая привязка к синтаксическим конструкциям в изменяющемся кодеУстойчивая привязка к синтаксическим конструкциям в изменяющемся коде
Устойчивая привязка к синтаксическим конструкциям в изменяющемся кодеCEE-SEC(R)
 
Технологии анализа бинарного кода приложений: требования, проблемы, инструменты
Технологии анализа бинарного кода приложений: требования, проблемы, инструментыТехнологии анализа бинарного кода приложений: требования, проблемы, инструменты
Технологии анализа бинарного кода приложений: требования, проблемы, инструментыPositive Development User Group
 
ФГУП НИИР - Cloud
ФГУП НИИР - CloudФГУП НИИР - Cloud
ФГУП НИИР - Cloudifedorus
 
Не бойся, это всего лишь данные... просто их много
Не бойся, это всего лишь данные... просто их многоНе бойся, это всего лишь данные... просто их много
Не бойся, это всего лишь данные... просто их многоRoman Dvornov
 
Digital Society Laboratory (Аршавский)
Digital Society Laboratory (Аршавский)Digital Society Laboratory (Аршавский)
Digital Society Laboratory (Аршавский)Andzhey Arshavskiy
 
BigData Week Moscow 2013 - Case: Personalization
BigData Week Moscow 2013 - Case: PersonalizationBigData Week Moscow 2013 - Case: Personalization
BigData Week Moscow 2013 - Case: PersonalizationAnton Gorokhov
 
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ Library
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ LibraryИнтервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ Library
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ LibraryTatyanazaxarova
 
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...Ontico
 
Лекция 10. Apache Mahout
Лекция 10. Apache MahoutЛекция 10. Apache Mahout
Лекция 10. Apache MahoutTechnopark
 
Зачем нужны постпроцессоры при живых препроцессорах — Алексей Иванов, JetStyle
Зачем нужны постпроцессоры при живых препроцессорах — Алексей Иванов, JetStyleЗачем нужны постпроцессоры при живых препроцессорах — Алексей Иванов, JetStyle
Зачем нужны постпроцессоры при живых препроцессорах — Алексей Иванов, JetStyleYandex
 
Масштабирование сервисов с помощью Apache Mesos
Масштабирование сервисов с помощью Apache MesosМасштабирование сервисов с помощью Apache Mesos
Масштабирование сервисов с помощью Apache MesosBitworks Software
 
Scaling services with apache mesos (and docker)
Scaling services with apache mesos (and docker)Scaling services with apache mesos (and docker)
Scaling services with apache mesos (and docker)Ivan Kudryavtsev
 
2014-2015_Алгор-структ_Раб-прогр_Мансуров
2014-2015_Алгор-структ_Раб-прогр_Мансуров2014-2015_Алгор-структ_Раб-прогр_Мансуров
2014-2015_Алгор-структ_Раб-прогр_Мансуров????? ????????
 
Fingerprint Recognition system
Fingerprint Recognition systemFingerprint Recognition system
Fingerprint Recognition systemVolodymyr Khomenko
 

Similar a Программные системы для латентно-семантического анализа (20)

Программный комплекс "НейроКС"
Программный комплекс "НейроКС"Программный комплекс "НейроКС"
Программный комплекс "НейроКС"
 
!Predictive analytics part_3
!Predictive analytics part_3!Predictive analytics part_3
!Predictive analytics part_3
 
Устойчивая привязка к синтаксическим конструкциям в изменяющемся коде
Устойчивая привязка к синтаксическим конструкциям в изменяющемся кодеУстойчивая привязка к синтаксическим конструкциям в изменяющемся коде
Устойчивая привязка к синтаксическим конструкциям в изменяющемся коде
 
Технологии анализа бинарного кода приложений: требования, проблемы, инструменты
Технологии анализа бинарного кода приложений: требования, проблемы, инструментыТехнологии анализа бинарного кода приложений: требования, проблемы, инструменты
Технологии анализа бинарного кода приложений: требования, проблемы, инструменты
 
ФГУП НИИР - Cloud
ФГУП НИИР - CloudФГУП НИИР - Cloud
ФГУП НИИР - Cloud
 
Не бойся, это всего лишь данные... просто их много
Не бойся, это всего лишь данные... просто их многоНе бойся, это всего лишь данные... просто их много
Не бойся, это всего лишь данные... просто их много
 
Digital Society Laboratory (Аршавский)
Digital Society Laboratory (Аршавский)Digital Society Laboratory (Аршавский)
Digital Society Laboratory (Аршавский)
 
BigData Week Moscow 2013 - Case: Personalization
BigData Week Moscow 2013 - Case: PersonalizationBigData Week Moscow 2013 - Case: Personalization
BigData Week Moscow 2013 - Case: Personalization
 
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ Library
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ LibraryИнтервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ Library
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ Library
 
Декомпозиция
ДекомпозицияДекомпозиция
Декомпозиция
 
Лекция №1 Организация ЭВМ и систем
Лекция №1 Организация ЭВМ и системЛекция №1 Организация ЭВМ и систем
Лекция №1 Организация ЭВМ и систем
 
Petsc+slepc slides
Petsc+slepc slidesPetsc+slepc slides
Petsc+slepc slides
 
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
 
Лекция 10. Apache Mahout
Лекция 10. Apache MahoutЛекция 10. Apache Mahout
Лекция 10. Apache Mahout
 
Lsa fca spb
Lsa fca spbLsa fca spb
Lsa fca spb
 
Зачем нужны постпроцессоры при живых препроцессорах — Алексей Иванов, JetStyle
Зачем нужны постпроцессоры при живых препроцессорах — Алексей Иванов, JetStyleЗачем нужны постпроцессоры при живых препроцессорах — Алексей Иванов, JetStyle
Зачем нужны постпроцессоры при живых препроцессорах — Алексей Иванов, JetStyle
 
Масштабирование сервисов с помощью Apache Mesos
Масштабирование сервисов с помощью Apache MesosМасштабирование сервисов с помощью Apache Mesos
Масштабирование сервисов с помощью Apache Mesos
 
Scaling services with apache mesos (and docker)
Scaling services with apache mesos (and docker)Scaling services with apache mesos (and docker)
Scaling services with apache mesos (and docker)
 
2014-2015_Алгор-структ_Раб-прогр_Мансуров
2014-2015_Алгор-структ_Раб-прогр_Мансуров2014-2015_Алгор-структ_Раб-прогр_Мансуров
2014-2015_Алгор-структ_Раб-прогр_Мансуров
 
Fingerprint Recognition system
Fingerprint Recognition systemFingerprint Recognition system
Fingerprint Recognition system
 

Más de Спецсеминар "Искусственный Интеллект" кафедры АЯ ВМК МГУ

Más de Спецсеминар "Искусственный Интеллект" кафедры АЯ ВМК МГУ (20)

Баев. Поиск шаблонов и машинное обучение для демографических событий (Pattern...
Баев. Поиск шаблонов и машинное обучение для демографических событий (Pattern...Баев. Поиск шаблонов и машинное обучение для демографических событий (Pattern...
Баев. Поиск шаблонов и машинное обучение для демографических событий (Pattern...
 
Муромцев. Методы анализа социальных графов и поиска сообществ
Муромцев. Методы анализа социальных графов и поиска сообществМуромцев. Методы анализа социальных графов и поиска сообществ
Муромцев. Методы анализа социальных графов и поиска сообществ
 
Рой. Аспектный анализ тональности отзывов
Рой. Аспектный анализ тональности отзывов Рой. Аспектный анализ тональности отзывов
Рой. Аспектный анализ тональности отзывов
 
Котиков Простые методы выделения ключевых слов и построения рефератов
Котиков Простые методы выделения ключевых слов и построения рефератовКотиков Простые методы выделения ключевых слов и построения рефератов
Котиков Простые методы выделения ключевых слов и построения рефератов
 
Лукьяненко. Извлечение коллокаций из текста
Лукьяненко. Извлечение коллокаций из текстаЛукьяненко. Извлечение коллокаций из текста
Лукьяненко. Извлечение коллокаций из текста
 
Иванов. Автоматизация построения предметных указателей
Иванов. Автоматизация построения предметных указателейИванов. Автоматизация построения предметных указателей
Иванов. Автоматизация построения предметных указателей
 
Можарова. Автоматическое извлечение именованных сущностей методами машинного ...
Можарова. Автоматическое извлечение именованных сущностей методами машинного ...Можарова. Автоматическое извлечение именованных сущностей методами машинного ...
Можарова. Автоматическое извлечение именованных сущностей методами машинного ...
 
Сапин. Интеллектуальные агенты и обучение с подкреплением
Сапин. Интеллектуальные агенты и обучение с подкреплениемСапин. Интеллектуальные агенты и обучение с подкреплением
Сапин. Интеллектуальные агенты и обучение с подкреплением
 
Смолина Пользовательские интерфейсы систем лингвистической разметки текстов
Смолина Пользовательские интерфейсы систем лингвистической разметки текстовСмолина Пользовательские интерфейсы систем лингвистической разметки текстов
Смолина Пользовательские интерфейсы систем лингвистической разметки текстов
 
Багдатов Методы автоматического выявления плагиата в текстах компьютерных про...
Багдатов Методы автоматического выявления плагиата в текстах компьютерных про...Багдатов Методы автоматического выявления плагиата в текстах компьютерных про...
Багдатов Методы автоматического выявления плагиата в текстах компьютерных про...
 
Тодуа. Сериализация и язык YAML
Тодуа. Сериализация и язык YAMLТодуа. Сериализация и язык YAML
Тодуа. Сериализация и язык YAML
 
Савкуев. Построение формального описания фотографий на основе контекстно-собы...
Савкуев. Построение формального описания фотографий на основе контекстно-собы...Савкуев. Построение формального описания фотографий на основе контекстно-собы...
Савкуев. Построение формального описания фотографий на основе контекстно-собы...
 
Савостин. Системы и методы научного поиска и мониторинга
Савостин. Системы и методы научного поиска и мониторингаСавостин. Системы и методы научного поиска и мониторинга
Савостин. Системы и методы научного поиска и мониторинга
 
Мищенко. Методы автоматического определения наиболее частотного значения слова.
Мищенко. Методы автоматического определения наиболее частотного значения слова.Мищенко. Методы автоматического определения наиболее частотного значения слова.
Мищенко. Методы автоматического определения наиболее частотного значения слова.
 
Мадорский. Извлечение тематически сгруппированных ключевых терминов из тексто...
Мадорский. Извлечение тематически сгруппированных ключевых терминов из тексто...Мадорский. Извлечение тематически сгруппированных ключевых терминов из тексто...
Мадорский. Извлечение тематически сгруппированных ключевых терминов из тексто...
 
Панфилов. Корпусы текстов и принципы их создания
Панфилов. Корпусы текстов и принципы их созданияПанфилов. Корпусы текстов и принципы их создания
Панфилов. Корпусы текстов и принципы их создания
 
Муромцев. Обзор библиографических менеджеров
Муромцев. Обзор библиографических менеджеровМуромцев. Обзор библиографических менеджеров
Муромцев. Обзор библиографических менеджеров
 
Можарова Тематические модели: учет сходства между униграммами и биграммами.
Можарова Тематические модели: учет сходства между униграммами и биграммами.Можарова Тематические модели: учет сходства между униграммами и биграммами.
Можарова Тематические модели: учет сходства между униграммами и биграммами.
 
Смирнова. Методы исправления ошибок в текстах, написанных иностранцами.
Смирнова. Методы исправления ошибок в текстах, написанных иностранцами.Смирнова. Методы исправления ошибок в текстах, написанных иностранцами.
Смирнова. Методы исправления ошибок в текстах, написанных иностранцами.
 
Баев Системы для обучения программированию
Баев Системы для обучения программированиюБаев Системы для обучения программированию
Баев Системы для обучения программированию
 

Último (9)

Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
 
Cyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdfCyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdf
 
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
 
CVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdfCVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdf
 
MS Navigating Incident Response [RU].pdf
MS Navigating Incident Response [RU].pdfMS Navigating Incident Response [RU].pdf
MS Navigating Incident Response [RU].pdf
 
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdfMalware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
 
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdfСИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
 
Ransomware_Q3 2023. The report [RU].pdf
Ransomware_Q3 2023.  The report [RU].pdfRansomware_Q3 2023.  The report [RU].pdf
Ransomware_Q3 2023. The report [RU].pdf
 
2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf
 

Программные системы для латентно-семантического анализа

  • 1. Программные системы для латентно-семантического анализа Семенов Алексей, 524 гр. 2010г.
  • 2. Латентно-семантический анализ Построение векторной модели для анализа связей и зависимостей между набором «документов» и содержащимися в них «термами». Матрица «терм-документ»: Cxt1 Cxt2 Cxt3 Cxt4 Cxt5 Trm1 1 1 1 1 1 Trm2 0 1 0 1 1 Trm3 0 0 0 0 0 Trm4 1 0 1 0 1
  • 3. Латентно-семантический анализ Матрица – большая – разреженная – содержит «шумы» Решение - приближение матрицей меньшего ранга. Сингулярное разложение:
  • 4. Пример Коллекция «текстов»: c1: Human machine interface for ABC computer applications c2: A survey of user opinion of computer system response time c3: The EPS user interface management system c4: System and human system engineering testing of EPS c5: Relation of user perceived response time to error measurement m1: The generation of random, binary, ordered trees m2: The intersection graph of paths in trees m3: Graph minors IV: Widths of trees and well-quasi-ordering m4: Graph minors: A survey
  • 5. Пример Матрица до сингулярного разложения: c1 c2 c3 c4 c5 m1 m2 m3 m4 human 1 0 0 1 0 0 0 0 0 interface 1 0 1 0 0 0 0 0 0 computer 1 1 0 0 0 0 0 0 0 user 0 1 1 0 1 0 0 0 0 system 0 1 1 2 0 0 0 0 0 response 0 1 0 0 1 0 0 0 0 time 0 1 0 0 1 0 0 0 0 EPS 0 0 1 1 0 0 0 0 0 survey 0 1 0 0 0 0 0 0 1 trees 0 0 0 0 0 1 1 1 0 graph 0 0 0 0 0 0 1 1 1 minors 0 0 0 0 0 0 0 1 1
  • 6. Пример После сингулярного разложения: c1 c2 c3 c4 c5 m1 m2 m3 m4 human 0.16 0.40 0.38 0.47 0.18 -0.05 -0.12 -0.16 -0.09 interface 0.14 0.37 0.33 0.40 0.16 -0.03 -0.07 -0.10 -0.04 computer 0.15 0.51 0.36 0.41 0.24 0.02 0.06 0.09 0.12 user 0.26 0.84 0.61 0.70 0.39 0.03 0.08 0.12 0.19 system 0.45 1.23 1.05 1.27 0.56 -0.07 -0.15 -0.21 -0.05 response 0.16 0.58 0.38 0.42 0.28 0.06 0.13 0.19 0.22 time 0.16 0.58 0.38 0.42 0.28 0.06 0.13 0.19 0.22 EPS 0.22 0.55 0.51 0.63 0.24 -0.07 -0.14 -0.20 -0.11 survey 0.10 0.53 0.23 0.21 0.27 0.14 0.31 0.44 0.42 trees -0.06 0.23 -0.14 -0.27 0.14 0.24 0.55 0.77 0.66 graph -0.06 0.34 -0.15 -0.30 0.20 0.31 0.69 0.98 0.85 minors -0.04 0.25 -0.10 -0.21 0.15 0.22 0.50 0.71 0.62
  • 7. Пример Кластеризация по исходной матрице: c1 c2 c3 c4 c5 m1 m2 m3 c2 -0.19 c3 0.00 0.00 c4 0.00 0.00 0.47 c5 -0.33 0.58 0.00 -0.31 m1 -0.17 -0.30 -0.21 -0.16 -0.17 m2 -0.26 -0.45 -0.32 -0.24 -0.26 0.67 m3 -0.33 -0.58 -0.41 -0.31 -0.33 0.52 0.77 m4 -0.33 -0.19 -0.41 -0.31 -0.33 -0.17 0.26 0.56 Кластеризация по полученной матрице: c1 c2 c3 c4 c5 m1 m2 m3 c2 0.91 c3 1.00 0.91 c4 1.00 0.88 1.00 c5 0.85 0.99 0.85 0.81 m1 -0.85 -0.56 -0.85 -0.88 -0.45 m2 -0.85 -0.56 -0.85 -0.88 -0.44 1.00 m3 -0.85 -0.56 -0.85 -0.88 -0.44 1.00 1.00 m4 -0.81 -0.50 -0.81 -0.84 -0.37 1.00 1.00 1.00
  • 8. Применение • Сравнение данных (кластерный анализ, классификация документов) • Информационный поиск с использованием векторной модели. • Поиск схожих документов на разных языках (межъязыковой информационный поиск). • Нахождение отношений между термами (выявление синонимии, многозначности). • Определение наиболее подходящего под контекст терма (вопросно-ответные системы).
  • 9. Open-source проекты • SenseClusters: http://www.d.umn.edu/~tpederse/senseclusters.html • S-Space: http://code.google.com/p/airhead-research/ • Semantic Vectors (ex-Infomap) http://code.google.com/p/semanticvectors/
  • 10. SenseClusters Основная функция – кластеризация схожих контекстов. Применение: • Разрешение неоднозначности слов (в частности, имен) • Классификация документов разного рода (электронных писем, новостных статей) • Классификация лексики (нахождение синонимов, антонимов и других классов отношений) Сайт проекта: http://www.d.umn.edu/~tpederse/senseclusters.html
  • 11. SenseClusters Два типа контекстов : • с целевым словом (headed context) • без целевого слова (headless context). Биграммы – «термы», характеризующие контекст (документ). Ngram Statistics Package (NSP) – пакет для выявления биграмм. Формат входных и выходных данных - SENSEVAL-2
  • 12. SenseClusters Программный пакет, написанный на Perl. Лицензия – GPL. Структура: • /preprocess - предварительная обработка входных данных: – text2sval.pl - конвертация в формат Senseval-2. – maketarget.pl - разметка целевого слова. – prepare_sval2.pl - завершающая проверка на корректность. • /nsp - поиск биграмм в документах. • /vector – построение векторного представления контекстов. • /svd - сингулярное разложение. Используется библиотека SVDPACKC. • /evaluate – кластеризация. Используется пакет CLUTO.
  • 13. SenseClusters Входной файл в формате SENSEVAL-2:
  • 14. SenseClusters Выходной файл с кластеризованными документами:
  • 16. S-Space Основная функция - универсальное средство для построения и обработки векторной модели. • Содержит реализации большого количества алгоритмов. (разные векторные модели, некоторые методы их последующей обработки) • Ориентированность на скорость работы. • Интуитивно понятное представление данных. Сайт проекта: http://code.google.com/p/airhead-research/
  • 17. S-Space Формат входных данных: – Текстовый корпус – один файл. – Каждый документ – отдельная строка. – Предварительная разметка с помощью встроенных средств. Минимизация затрат на чтение информации. Формат выходных данных (.sspace): Два способа представления – бинарный и текстовый. Особое представление для сильно разреженной матрицы.
  • 18. S-Space Программный пакет на Java. Лицензия – GPL. Сборка с помощью Apache Ant. Структура: • /mains - исполняемые классы, реализующие разные векторные модели: – Beagle – COALS – Latent-Semantic Analysis – Incremental Semantic Analysis – Explicit Semantic Analysis • /evaluation – алгоритмы кластеризации, определения меры схожести и др. • /matrix - работа с матрицами. • /text – препроцессоры и конвертеры текстовой информации. java mains.lsa -d corpus.txt -F exclude=stopwords.txt -n 500 out.sspace
  • 19. Semantic Vectors Основная функция – построение модели семантических векторов для определения схожести понятий и поиска по информационной базе. «Вторая жизнь» проекта Infomap NLP. Большой акцент на кроссплатформенности. Cайт проекта: http://code.google.com/p/semanticvectors/
  • 20. Semantic Vectors Два этапа на архитектурном уровне: • построение векторной модели • поиск по запросам Использование библиотек Apache Lucene для построения матрицы. Два способа хранения полученной информации (векторной модели): • простой текст с разделительными символами • оптимизированный формат Lucene (бинарный) Создаются отдельные файлы с векторами для термов и документов.
  • 21. Semantic Vectors Программный пакет на Java Лицензия - new BSD. Структура: • /lucene – базовые утилиты Apache Lucene. • /semanticvectors – построение и обработка векторной модели – BuildIndex – генерация и запись векторов для термов и документов. – CompareTerms – исполняемый класс для сравнения термов. – Search – поиск похожих термов или документов. – VectorUtils – функции над векторами. – LSA – сингулярное разложение (реализация SVDPACKC). java semanticvectors.Search -queryvectorfile termvectors.bin -searchvectorfile docvectors.bin Abraham
  • 22. Заключение • Каждый из рассмотренных пакетов имеет свои достоинства и свою область применения. • SenseClusters и Semantic Vectors разработаны для конкретных задач. • Для научной работы наиболее удобным, гибким и разносторонним можно назвать пакет S-Space.
  • 23. Литература и ресурсы • Dominic Widdows, Kathleen Ferraro. 2008. Semantic Vectors : A Scalable Open- Source Package and Online Technology Management Application. LREC 2008. • Ted Pedersen. 2006. Language Independent Methods of Clustering Similar Contexts (with applications). University of Minnesota, Duluth. • О.А.Митрофанова, А.С.Мухин, П.В.Паничева. 2007. Автоматическая классификация лексики в русскоязычных текстах на основе латентного семантического анализа. СПбГУ, кафедра математической лингвистики. • http://code.google.com/p/airhead-research/wiki/LatentSemanticAnalysis • http://en.wikipedia.org/wiki/Latent_semantic_analysis • http://en.wikipedia.org/wiki/Probabilistic_latent_semantic_analysis