MatchZoo 文本匹配工具包

MatchZoo是封装了一系列文本匹配的框架包含以下算法:

官网地址:https://github.com/kouunn/MatchZoo

Model Detail:

1. DRMM

this model is an implementation of A Deep Relevance Matching Model for Ad-hoc Retrieval.

  • model file: models/drmm.py
  • model config: models/drmm_ranking.config

2. MatchPyramid

this model is an implementation of Text Matching as Image Recognition

  • model file: models/matchpyramid.py
  • model config: models/matchpyramid_ranking.config

3. ARC-I

this model is an implementation of Convolutional Neural Network Architectures for Matching Natural Language Sentences

  • model file: models/arci.py
  • model config: models/arci_ranking.config

4. DSSM

this model is an implementation of Learning Deep Structured Semantic Models for Web Search using Clickthrough Data

  • model file: models/dssm.py
  • model config: models/dssm_ranking.config

5. CDSSM

this model is an implementation of Learning Semantic Representations Using Convolutional Neural Networks for Web Search

  • model file: models/cdssm.py
  • model config: models/cdssm_ranking.config

6. ARC-II

this model is an implementation of Convolutional Neural Network Architectures for Matching Natural Language Sentences

  • model file: models/arcii.py
  • model config: models/arcii_ranking.config

7. MV-LSTM

this model is an implementation of A Deep Architecture for Semantic Matching with Multiple Positional Sentence Representations

  • model file: models/mvlstm.py
  • model config: models/mvlstm_ranking.config

8. aNMM

this model is an implementation of aNMM: Ranking Short Answer Texts with Attention-Based Neural Matching Model

  • model file: models/anmm.py
  • model config: models/anmm_ranking.config

9. DUET

this model is an implementation of Learning to Match Using Local and Distributed Representations of Text for Web Search

  • model file: models/duet.py
  • model config: models/duet_ranking.config

10. K-NRM

this model is an implementation of End-to-End Neural Ad-hoc Ranking with Kernel Pooling

  • model file: models/knrm.py
  • model config: models/knrm_ranking.config

11. CONV-KNRM:

this model is an implementation of Convolutional neural networks for soft-matching n-grams in ad-hoc search

  • model file: models/convknrm.py
  • model config: models/convknrm.config

一些不同模型的测试成绩:

Models NDCG@3 NDCG@5 MAP
DSSM 0.5439 0.6134 0.5647
CDSSM 0.5489 0.6084 0.5593
ARC-I 0.5680 0.6317 0.5870
ARC-II 0.5647 0.6176 0.5845
MV-LSTM 0.5818 0.6452 0.5988
DRMM 0.6107 0.6621 0.6195
K-NRM 0.6268 0.6693 0.6256
aNMM 0.6160 0.6696 0.6297
DUET 0.6065 0.6722 0.6301
MatchPyramid 0.6317 0.6913 0.6434
DRMM_TKS 0.6458 0.6956 0.6586

 

Environment

  • python2.7+
  • tensorflow 1.2+
  • keras 2.06+
  • nltk 3.2.2+
  • tqdm 4.19.4+
  • h5py 2.7.1+

你可能感兴趣的:(NLP,Python)