ContextStat.h
上传用户:yxl0916
上传日期:2007-05-25
资源大小:2245k
文件大小:2k
源码类别:

多国语言处理

开发平台:

Visual C++

  1. //////////////////////////////////////////////////////////////////////
  2. //ICTCLAS简介:计算所汉语词法分析系统ICTCLAS(Institute of Computing Technology, Chinese Lexical Analysis System),
  3. //             功能有:中文分词;词性标注;未登录词识别。
  4. //             分词正确率高达97.58%(973专家评测结果),
  5. //             未登录词识别召回率均高于90%,其中中国人名的识别召回率接近98%;
  6. //             处理速度为31.5Kbytes/s。
  7. //著作权:  Copyright?2002-2005中科院计算所 职务著作权人:张华平 刘群
  8. //遵循协议:自然语言处理开放资源许可证1.0
  9. //Email: zhanghp@software.ict.ac.cn
  10. //Homepage:www.nlp.org.cn;mtgroup.ict.ac.cn
  11. /****************************************************************************
  12.  *
  13.  * Copyright (c) 2000, 2001 
  14.  *     Machine Group
  15.  *     Software Research Lab.
  16.  *     Institute of Computing Tech.
  17.  *     Chinese Academy of Sciences
  18.  *     All rights reserved.
  19.  *
  20.  * This file is the confidential and proprietary property of 
  21.  * Institute of Computing Tech. and the posession or use of this file requires 
  22.  * a written license from the author.
  23.  * Filename: ContextStat.h
  24.  * Abstract:
  25.  *           
  26.  *  interface for the CContextStat class.
  27.  * Author:   Kevin Zhang 
  28.  *          (zhanghp@software.ict.ac.cn)
  29.  * Date:     2002-1-24
  30.  *
  31.  * Notes:
  32.  *                
  33.  * 
  34.  ****************************************************************************/
  35. #if !defined(AFX_CONTEXTSTAT_H__DA515FDC_F8F9_48F6_B25D_D2B91011528B__INCLUDED_)
  36. #define AFX_CONTEXTSTAT_H__DA515FDC_F8F9_48F6_B25D_D2B91011528B__INCLUDED_
  37. #if _MSC_VER > 1000
  38. #pragma once
  39. #endif // _MSC_VER > 1000
  40. struct tagContext{
  41. int nKey;//The key word
  42. int **aContextArray;//The context array
  43. int *aTagFreq;//The total number a tag appears
  44. int nTotalFreq;//The total number of all the tags
  45. struct tagContext *next;//The chain pointer to next Context
  46. };
  47. typedef struct tagContext MYCONTEXT,*PMYCONTEXT;
  48. class CContextStat  
  49. {
  50. public:
  51. bool SetTableLen(int nTableLe);
  52. int GetFrequency(int nKey,int nSymbol);
  53. double GetContextPossibility(int nKey,int nPrev,int nCur);
  54. bool Load(char *sFilename);
  55. bool Save(char *sFilename);
  56. bool Add(int nKey,int nPrevSymbol,int nCurrentSymbol,int nFrequency);
  57. bool SetSymbol(int *nSymbol);
  58. CContextStat();
  59. virtual ~CContextStat();
  60. private:
  61. int m_nTableLen;
  62. int *m_pSymbolTable;
  63. PMYCONTEXT m_pContext;
  64. int m_nCategory;
  65. protected:
  66. bool GetItem(int nKey,PMYCONTEXT *pItemRet);
  67. };
  68. #endif // !defined(AFX_CONTEXTSTAT_H__DA515FDC_F8F9_48F6_B25D_D2B91011528B__INCLUDED_)