コード例 #1
0
        // example:
        // count = 5; id = 4;
        // vector = {0, 0, 0, 1, 0}
        private double[] GetCharacteristicAsVector(ClassifiableText classifiableText)
        {
            var vector = new double[_outputLayerSize];

            vector[classifiableText.GetCharacteristicValue(_characteristic.Name).OrderNumber - 1] = 1;
            return(vector);
        }
コード例 #2
0
        public CharacteristicValue Classify(ClassifiableText classifiableText)
        {
            var output = new double[_outputLayerSize];

            // calculate output vector
            _network.Compute(GetTextAsVectorOfWords(classifiableText).ToArray(), output);
            EncogFramework.Instance.Shutdown();

            return(ConvertVectorToCharacteristic(output));
        }
コード例 #3
0
        private double[] GetTextAsVectorOfWords(ClassifiableText classifiableText)
        {
            var vector = new double[_inputLayerSize];

            // convert text to INGram
            var uniqueValues = _inGram.GetNGram(classifiableText.Text);

            // create vector
            //

            foreach (var word in uniqueValues)
            {
                var vw = FindWordInVocabulary(word);

                if (vw != null)
                {
                    vector[vw.Id - 1] = 1;
                }
            }

            return(vector);
        }