亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sentencesimilarity.cs

?? 是用c#編寫的
?? CS
字號:
/*
 Measure semantic similarity between two sentences
 (disregards PartOfSpeech tagging and WordSenseDisambiguation)
 Author: Thanh Ngoc Dao - Thanh.dao@gmx.net
 Copyright (c) 2005 by Thanh Ngoc Dao.
*/

using System;

namespace WordsMatching
{
	/// <summary>
	/// Measuring relationship between two given sentences
	/// </summary>
	public class SentenceSimilarity
	{
        //private int[] _senses1, _senses2;
        //float[,] _similarity;

		string[] _source, _target;
		private int m, n;

		public SentenceSimilarity()
		{
			StopWordsHandler stopword=new StopWordsHandler() ;
		}

        private MyWordInfo[] Disambiguate(string[] words)
        {
            if (words.Length == 0) return null;

            MyWordInfo[] wordInfos=new MyWordInfo [words.Length];
            
            for (int i = 0; i < words.Length; i++)
            {
                
                WnLexicon.WordInfo wordInfo = WnLexicon.Lexicon.FindWordInfo(words[i], true);

                if (wordInfo.partOfSpeech != Wnlib.PartsOfSpeech.Unknown)
                {
                    if (wordInfo.text != string.Empty)
                        words[i] = wordInfo.text;

                    Wnlib.PartsOfSpeech[] posEnum = (Wnlib.PartsOfSpeech[])Enum.GetValues(typeof(Wnlib.PartsOfSpeech));

                    for (int j = 0; j < posEnum.Length; j++)
                    {
                        if (wordInfo.senseCounts[j] > 0) // get the first part of speech
                        {
                            wordInfos[i] = new MyWordInfo(words[i], posEnum[j]);                             
                            break;
                        }
                    }
                }
            }

            WordSenseDisambiguator wsd = new WordSenseDisambiguator();
            wordInfos=wsd.Disambiguate(wordInfos);

            return wordInfos;
        }


        //MyWordInfo[] _myWordsInfo_i, _myWordsInfo_j;        
        //private void MyInitOld()
        //{
        //    _myWordsInfo1 = Disambiguate(_source);
        //    _myWordsInfo2 = Disambiguate(_target);

        //    m = _myWordsInfo1.Length; n = _myWordsInfo2.Length;
        //    _similarity =new float[m, n] ;

        //    for (int i=0; i < m; i++)
        //    {
        //        _myWordsInfo1[i].Sense = _myWordsInfo1[i].Sense < 0 ? 0 : _myWordsInfo1[i].Sense;                

        //        string word1 = _source[i];
        //        for (int j=0; j < n; j++)
        //        {
        //            _myWordsInfo2[i].Sense = _myWordsInfo2[i].Sense < 0 ? 0 : _myWordsInfo2[i].Sense;					

        //            string word2=_target[j];
        //            WordDistance distance = new WordDistance();
        //            float weight = distance.GetSimilarity(_myWordsInfo1[i], _myWordsInfo2[j]);					

        //            _similarity[i, j]=weight;					
        //        }
        //    }
        //}



        float[][] GetSimilarityMatrix(string[] string1, string[] string2)
        {
            m = string1.Length; n = string2.Length;            
            float[][] simMatrix = new float[m][];            
            
            Wnlib.PartsOfSpeech[] POSEnum = (Wnlib.PartsOfSpeech[])Enum.GetValues(typeof(Wnlib.PartsOfSpeech));
        	HierarchicalWordData[][] wordData_1 = new HierarchicalWordData[m][];
        	HierarchicalWordData[][] wordData_2 = new HierarchicalWordData[n][];
            for (int i = 0; i < m; i++) 
                simMatrix[i] = new float[n];

            for (int i = 0; i < m; i++)
                wordData_1[i] = new HierarchicalWordData[POSEnum.Length];
            for (int j = 0; j < n; j++)
                wordData_2[j] = new HierarchicalWordData[POSEnum.Length];

            for (int i = 0; i < m; i++)             
            {                                                                                
                for (int j = 0; j < n; j++)
                {
                    float synDist = AcronymChecker.GetEditDistanceSimilarity(string1[i], string2[j]);

                    for (int partOfSpeech = 1; partOfSpeech < POSEnum.Length; partOfSpeech++)
                    {
                         if (wordData_1[i][partOfSpeech] == null)
                         {
                             MyWordInfo myWordsInfo_i = new MyWordInfo(string1[i], POSEnum[partOfSpeech]);
                             wordData_1[i][partOfSpeech] = new HierarchicalWordData(myWordsInfo_i);
                         }
                         if (wordData_2[j][partOfSpeech] == null)
                         {
                             MyWordInfo myWordsInfo_j = new MyWordInfo(string2[j], POSEnum[partOfSpeech]);
                             wordData_2[j][partOfSpeech] = new HierarchicalWordData(myWordsInfo_j);
                         }

                         WordSimilarity wordDistance = new WordSimilarity();
                         float semDist = wordDistance.GetSimilarity(wordData_1[i][partOfSpeech], wordData_2[j][partOfSpeech]);
                         float weight = Math.Max(synDist, semDist);
                         if (simMatrix[i][j] < weight)
                             simMatrix[i][j] = weight;                    
                    }
                }                                    
            }            
         
         return simMatrix;
      }

        public float GetScore(string string1, string string2)		
		{			
			Tokeniser tok=new Tokeniser() ;
            tok.UseStemming = false;

			_source=tok.Partition(string1) ;
			_target=tok.Partition(string2) ;

			if (_source.Length == 0 || _target.Length == 0 )
				return 0F;

            float[][] simMatrix = GetSimilarityMatrix(_source, _target);		
			HeuristicMatcher match=new HeuristicMatcher() ;
            //float score = HeuristicMatcher.ComputeSetSimilarity(simMatrix, 2, 0.3F);
            float score = HeuristicMatcher.ComputeSetSimilarity(simMatrix, 1);
			return score;	
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国一区二区三区| 欧美日韩亚洲综合一区二区三区| 久久精品久久精品| 欧美视频在线观看一区二区| 午夜精品一区二区三区免费视频 | 亚洲成av人片在线| 极品美女销魂一区二区三区| 色婷婷综合久久久| www国产精品av| 天天综合色天天| 91官网在线免费观看| 久久久99精品免费观看不卡| 日韩精品亚洲专区| 大尺度一区二区| 久久午夜老司机| 男男gaygay亚洲| 色婷婷综合视频在线观看| 久久久高清一区二区三区| 免费在线观看一区二区三区| 欧美日韩国产成人在线免费| 亚洲蜜臀av乱码久久精品| 国产电影一区在线| 精品少妇一区二区三区免费观看| 亚洲福利视频一区| 在线视频中文字幕一区二区| 中文字幕一区三区| zzijzzij亚洲日本少妇熟睡| 日韩av一级片| 欧美性猛交xxxxxx富婆| 亚洲乱码中文字幕| 色婷婷激情综合| 一区二区三区在线视频免费| av日韩在线网站| 亚洲欧美日韩中文播放| 91行情网站电视在线观看高清版| 亚洲欧洲日韩在线| 色综合久久综合网97色综合| 亚洲黄色在线视频| 欧美日韩一二三| 日韩国产在线观看一区| 日韩欧美一二三| 国产在线精品免费| 欧美激情资源网| av中文字幕一区| 亚洲电影中文字幕在线观看| 麻豆中文一区二区| 亚洲综合色区另类av| 亚洲综合男人的天堂| 水蜜桃久久夜色精品一区的特点 | 日韩高清不卡一区二区三区| 亚洲第一福利一区| 麻豆国产一区二区| 粉嫩av一区二区三区粉嫩| 成人精品小蝌蚪| 欧美性大战久久久久久久蜜臀| 色综合久久中文字幕综合网| 欧美日韩国产片| 国产欧美综合色| 亚洲一级二级三级| 国产不卡在线视频| 国产黄色精品网站| 欧美日韩免费电影| 欧美岛国在线观看| 一区二区三区在线播放| 欧美午夜一区二区三区| 成人精品gif动图一区| 色婷婷久久久亚洲一区二区三区| 日韩一级欧美一级| 国产一区二区在线观看视频| 亚洲国产一二三| 日韩午夜激情电影| 欧美亚一区二区| 老司机精品视频一区二区三区| 欧美高清在线精品一区| 欧美影视一区二区三区| 国产永久精品大片wwwapp| 亚洲一区二区三区免费视频| 精品免费国产二区三区 | 国产精品午夜免费| 精品卡一卡二卡三卡四在线| 一区在线播放视频| 国模少妇一区二区三区| 欧美日韩一本到| 亚洲一区二区精品久久av| 青青草成人在线观看| 在线视频国内一区二区| 亚洲免费毛片网站| 成人激情免费视频| 亚洲人一二三区| 国产精品情趣视频| 亚洲一区二区三区四区在线| 欧美第一区第二区| 91国偷自产一区二区三区成为亚洲经典 | 粉嫩一区二区三区在线看| 亚洲国产一二三| 亚洲欧洲制服丝袜| 中文一区在线播放| 精品国产凹凸成av人导航| 欧美精品少妇一区二区三区| av电影在线观看一区| 国产高清在线精品| 国产真实乱偷精品视频免| 蜜桃传媒麻豆第一区在线观看| 亚洲一区在线观看网站| 亚洲精品乱码久久久久久久久| 国产午夜精品一区二区三区视频| 一区二区三区中文字幕电影| 中文字幕一区二区三区视频| 久久综合成人精品亚洲另类欧美| 日韩免费高清电影| 3d成人动漫网站| 91.com在线观看| 欧美人xxxx| 在线播放日韩导航| 欧美一级片免费看| 91精品国产乱| 欧美电影免费观看高清完整版在线 | 色综合久久88色综合天天免费| 成人自拍视频在线| 北条麻妃一区二区三区| 99re视频精品| 欧洲人成人精品| 欧美日韩中文字幕一区| 欧美老年两性高潮| 欧美一级二级在线观看| 亚洲精品一区二区精华| 久久久久久久久久久99999| 国产视频亚洲色图| 成人欧美一区二区三区黑人麻豆 | 欧美日韩国产小视频| 3d动漫精品啪啪1区2区免费| 精品成a人在线观看| 国产日本一区二区| 亚洲欧美福利一区二区| 午夜一区二区三区视频| 日本少妇一区二区| 国产91清纯白嫩初高中在线观看| 菠萝蜜视频在线观看一区| 国产日韩综合av| 一个色在线综合| 美女网站色91| 成人精品视频网站| 91国偷自产一区二区三区成为亚洲经典 | 亚洲一区二区黄色| 韩国三级中文字幕hd久久精品| 风间由美一区二区av101| 一本到不卡精品视频在线观看| 欧美日韩日日夜夜| 国产三级久久久| 亚洲成av人片在线| 风流少妇一区二区| 7777精品伊人久久久大香线蕉完整版| 精品乱码亚洲一区二区不卡| 亚洲天堂网中文字| 精品一区二区三区在线播放视频 | 国精产品一区一区三区mba桃花 | 2023国产精品| 亚洲日本护士毛茸茸| 麻豆精品一二三| jlzzjlzz欧美大全| 日韩精品一区二区三区在线观看 | 蜜桃视频第一区免费观看| 国产一区二区三区免费看| 亚洲午夜免费视频| 岛国精品在线观看| 欧美激情一区在线观看| 日韩中文字幕91| 色综合天天狠狠| 国产精品美女久久久久aⅴ国产馆| 亚洲国产乱码最新视频 | 欧美电视剧在线观看完整版| 欧美综合天天夜夜久久| 色欧美88888久久久久久影院| 欧美一区二区三区视频免费| 国产精品久久久久婷婷| 日韩一区欧美二区| 日本精品视频一区二区三区| 国产日韩欧美a| 麻豆成人av在线| 欧美日韩一区小说| 日韩久久一区二区| 成人午夜精品在线| 久久先锋影音av鲁色资源网| 日本伊人精品一区二区三区观看方式| 91在线精品一区二区| 久久色在线视频| 琪琪久久久久日韩精品| 欧美色视频在线观看| 成人欧美一区二区三区黑人麻豆| 国产一区二区三区日韩| 精品久久久久香蕉网| 精品亚洲国产成人av制服丝袜 | 欧美一区二区三区视频在线观看 | 亚洲精品一卡二卡| 成人免费视频网站在线观看| 国产亚洲综合av| 国v精品久久久网| 国产三级久久久| 成人一区在线看| 国产精品狼人久久影院观看方式|