Exemple #1
0
        private static void Stemming_Setup()
        {
            stemmer     = new Stemming();
            moodList    = new MoodListing().BingLiuMoodList;
            bingliuTrie = new Trie <MoodValue>();
            var bingLiuMoodList = new List <MoodItem>();

            foreach (var item in moodList)
            {
                //var stemmed = stemmer.Stem(item.Word);
                bingLiuMoodList.Add(new MoodItem {
                    Word = " " + item.Word + " ", Value = item.Value
                });
            }

            bingLiuMoodList = bingLiuMoodList.Distinct().ToList();

            foreach (var item in bingLiuMoodList)
            {
                bingliuTrie.Add(item.Word, item.Value);
            }

            bingliuTrie.Build();

            drummondMoodList = new MoodListing().DrummondMoodList;
            drummondTrie     = new Trie <MoodValue>();

            foreach (var item in drummondMoodList)
            {
                var stemmed = stemmer.Stem(item.Word);
                drummondTrie.Add(" " + stemmed, item.Value);
            }

            drummondTrie.Build();
        }
Exemple #2
0
        private void Treinar()
        {
            string cst      = "Data Source=.\\SQLEXPRESS;AttachDbFilename=\"" + System.IO.Directory.GetCurrentDirectory() + "\\memorias\\test_memory.mdf\";Integrated Security=True;Connect Timeout=30;User Instance=True";
            string document = txt_texto.Text.Trim();

            Formatacao fmtc = new Formatacao();
            Stemming   stmg = new Stemming();
            DataMining dm   = new DataMining();

            List <string> tokensFormatados          = fmtc.Formatacao_completa(document);
            List <string> tokensStemmizados         = stmg.StemmizarListaDeTokens(tokensFormatados);
            List <int>    qtdRepeticaoTokens        = dm.Calcular_frequencia_tokens(tokensStemmizados);
            List <string> tokensRepetidosEliminados = fmtc.Retirar_itens_repetidos(tokensStemmizados);

            treino tr = new treino(cst);

            tr.Memorizar(tokensRepetidosEliminados, qtdRepeticaoTokens, emocao);
        }
Exemple #3
0
        private static void DrummondsGenerate()
        {
            var stemmer = new Stemming();

            string line;
            var    moods = new List <MoodItem>();

            using (var reader = File.OpenText("wordlist.txt"))
            {
                string word;
                string category;
                while ((line = reader.ReadLine()) != null)
                {
                    var split = line.Split(',');
                    if (split.Length >= 2)
                    {
                        double weight = 1;
                        if (split.Length > 2)
                        {
                            weight = double.Parse(split[2]);
                        }

                        moods.Add(new MoodItem
                        {
                            Word  = stemmer.Stem(split[0].ToLower()),
                            Value = new MoodValue {
                                Category = split[1], Weight = weight
                            }
                        });
                    }
                }
            }


            StreamWriter file2 = new StreamWriter("c:\\code\\files.txt", true);

            foreach (var mood in moods)
            {
                file2.WriteLine("new MoodItem{   Word = \"" + mood.Word + "\", Value = new MoodValue { Category =\"" + mood.Value.Category + "\", Weight = " + mood.Value.Weight + " } },");
            }

            file2.Close();
        }
Exemple #4
0
        public static string stem(string input)
        {
            string[]      terms = input.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
            List <string> list  = new List <string>();

            foreach (string term in terms)
            {
                Stemming ss = new Stemming();
                string   s  = ss.Stem(term);
                list.Add(s);
            }
            StringBuilder sb = new StringBuilder();

            for (int i = 0; i < list.Count(); i++)
            {
                if (i != 0)
                {
                    sb.Append(" ");
                }
                sb.Append(list[i]);
            }

            return(sb.ToString());
        }