Пример #1
0
        // [Explicit-Dispose]
        public void Dispose()
        {
            if (_wn != null)
            {
                _wn.Dispose();
            }

            _tokenizer        = null;
            _sentenceDetector = null;
            _posTagger        = null;
            _chunker          = null;

            // Dispose CLI/C++ Dll
            ap = null;

            // Dispose all KB plugins
            if (PlugInsNumber > 0)
            {
                for (int i = 0; i < PlugInsNumber; i++)
                {
                    KBDrivers[i] = null;
                    KBDriversQueryPointers[i] = null;
                }
            }
        }
Пример #2
0
 public WordNetBoostrap(string nlpModelsPath, string wordNetPath)
 {
     this._wordNetPath = wordNetPath;
     _wn               = new WordNetEngine(_wordNetPath, true);
     _tokenizer        = new EnglishRuleBasedTokenizer(false);
     _sentenceDetector = new EnglishMaximumEntropySentenceDetector(nlpModelsPath + "EnglishSD.nbin");
     _posTagger        = new EnglishMaximumEntropyPosTagger(nlpModelsPath + "EnglishPOS.nbin", nlpModelsPath + @"\Parser\tagdict");
 }
Пример #3
0
        private string[] TokenizeSentence(string sentence)
        {
            if (_tokenizer == null)
            {
                _tokenizer = new EnglishRuleBasedTokenizer();
            }

            return(_tokenizer.Tokenize(sentence));
        }
Пример #4
0
        public void Dispose()
        {
            _tokenizer        = null;
            _sentenceDetector = null;
            _posTagger        = null;

            SynsetArray = null;
            IsStopWord  = null;

            _wn.Dispose();
        }
Пример #5
0
        // Defualt Constructor
        public SemCluster(string DataFolder)
        {
            try
            {
                Console.WriteLine("\tSemCluster Text Analytics Tool");
                Console.WriteLine("\t------------------------------");
                Console.WriteLine("\t-Wikipedia local server couldn't be found!");
                Console.WriteLine("\t-Seeds SemAve is in manual mode!");
                Console.WriteLine();
                Console.WriteLine();
                Console.WriteLine("-> Resources loading ...");
                Console.WriteLine();

                #region Loading External Resources
                _wn               = new WordNetEngine(DataFolder + "WordNet", InMemoryWordNet);
                _tokenizer        = new EnglishRuleBasedTokenizer(TokenizeHyphen);
                _sentenceDetector = new EnglishMaximumEntropySentenceDetector(DataFolder + "EnglishSD.nbin");
                _posTagger        = new EnglishMaximumEntropyPosTagger(DataFolder + "EnglishPOS.nbin", DataFolder + "\\Build\\tagdict");
                _chunker          = new EnglishTreebankChunker(DataFolder + "EnglishChunk.nbin");
                #endregion

                PlugInsManager(DataFolder);

                Console.WriteLine("\tResources loaded successfully");
                Console.WriteLine("\t" + PlugInsNumber + " KB plug-ins found in the repository");
                Console.WriteLine("\tPress any key to continue ...");
                Console.ReadKey();
                Console.WriteLine();

                RootVirtualNode = _wn.GetSynSet("Noun:1740");
                ap = new AffinityPropagationClustering();

                SynSetRelationTypes    = new WordNetApi.Core.WordNetEngine.SynSetRelation[2];
                SynSetRelationTypes[0] = WordNetApi.Core.WordNetEngine.SynSetRelation.Hypernym;
                SynSetRelationTypes[1] = WordNetApi.Core.WordNetEngine.SynSetRelation.InstanceHypernym;
            }
            catch (Exception ex)
            {
                Dispose();
                throw new Exception(ex.Message);
            }
        }