| FreeLing
    4.0
    | 
summarizer class summarizes a document using the lexical chains method. More...
#include <summarizer.h>

| Public Types | |
| enum | Heuristics { FIRST_WORD, FIRST_MOST_WEIGHT, WEIGHT_SUM } | 
| Public Member Functions | |
| summarizer (const std::wstring &datFile) | |
| Constructor. | |
| ~summarizer () | |
| Destructor. | |
| std::list< const freeling::sentence * > | summarize (const freeling::document &doc, int num_words) const | 
| Summarizes a document and returns the list of sentences that composes the summary. | |
| Private Member Functions | |
| std::map< std::wstring, std::list< lexical_chain > > | build_lexical_chains (const freeling::document &doc) const | 
| Builds all the lexical chains. | |
| void | remove_one_word_lexical_chains (std::map< std::wstring, std::list< lexical_chain >> &chains) const | 
| Remove the lexical chains with only one word. | |
| void | remove_weak_lexical_chains (std::map< std::wstring, std::list< lexical_chain >> &chains) const | 
| Remove the lexical chains which does not satisfy the strength criterion. | |
| void | print_lexical_chains (std::map< std::wstring, std::list< lexical_chain >> &chains) const | 
| Print the lexical chains. Only for debugging. | |
| int | count_occurences (const freeling::word &w, const freeling::document &doc) const | 
| Counts the number of occurences of the word w in the document doc. | |
| double | average_scores (std::map< std::wstring, std::list< lexical_chain > > &chains_type) const | 
| Computes and returns the average scores of the lexical chains. | |
| double | standard_deviation_scores (std::map< std::wstring, std::list< lexical_chain > > &chains_type, const double avg) const | 
| Computes and returns the standard deviation of the lexical chains scores. | |
| std::list< lexical_chain > | map_to_lists (std::map< std::wstring, std::list< lexical_chain > > &chains_type) const | 
| Concatenate all the lists in the map chains_type into a single list. | |
| void | compute_sentence (const std::list< word_pos > &wps, std::list< word_pos > &wp_list, std::set< const freeling::sentence * > &sent_set, int &acc_n_words, int num_words) const | 
| Auxiliar function for first_word and first_most_weighted_word function. | |
| std::list< word_pos > | first_word (std::map< std::wstring, std::list< lexical_chain > > &chains_type, int num_words) const | 
| Returns the list of sentences embedded in a word_pos struct which composes the summary using the heuristic FirstWord. | |
| std::list< word_pos > | first_most_weighted_word (std::map< std::wstring, std::list< lexical_chain > > &chains, int num_words) const | 
| Returns the list of sentences embedded in a word_pos struct which composes the summary using the heuristic FirstMostWeightedWord. | |
| std::list< word_pos > | sum_of_chain_weights (std::map< std::wstring, std::list< lexical_chain > > &chains, int num_words) const | 
| Returns the list of sentences embedded in a word_pos struct which composes the summary using the heuristic SumOfChainWeights. | |
| Private Attributes | |
| bool | remove_used_lexical_chains | 
| If true, the used lexical_chains will be removed. | |
| bool | only_strong | 
| If true, the summarizer will use only strong chains. | |
| int | hypernymy_depth | 
| Maximum hypernymy depth. | |
| double | alpha | 
| Parameter to compute the homogeinity index in the hypernymy relation. | |
| std::wstring | semdb_path | 
| Path to the semantic DB. | |
| std::set< relation * > | used_relations | 
| A set with the relations that will be used. | |
| Heuristics | heuristic | 
| A string that indicates the heuristic that will be used. | |
summarizer class summarizes a document using the lexical chains method.
| freeling::summarizer::summarizer | ( | const std::wstring & | datFile | ) | 
Constructor.
Destructor.
| double freeling::summarizer::average_scores | ( | std::map< std::wstring, std::list< lexical_chain > > & | chains_type | ) | const  [private] | 
Computes and returns the average scores of the lexical chains.
| std::map<std::wstring, std::list<lexical_chain> > freeling::summarizer::build_lexical_chains | ( | const freeling::document & | doc | ) | const  [private] | 
Builds all the lexical chains.
| void freeling::summarizer::compute_sentence | ( | const std::list< word_pos > & | wps, | 
| std::list< word_pos > & | wp_list, | ||
| std::set< const freeling::sentence * > & | sent_set, | ||
| int & | acc_n_words, | ||
| int | num_words | ||
| ) | const  [private] | 
Auxiliar function for first_word and first_most_weighted_word function.
Computes a sentence to include it in the summary or not.
| int freeling::summarizer::count_occurences | ( | const freeling::word & | w, | 
| const freeling::document & | doc | ||
| ) | const  [private] | 
Counts the number of occurences of the word w in the document doc.
| std:: list<word_pos> freeling::summarizer::first_most_weighted_word | ( | std::map< std::wstring, std::list< lexical_chain > > & | chains, | 
| int | num_words | ||
| ) | const  [private] | 
Returns the list of sentences embedded in a word_pos struct which composes the summary using the heuristic FirstMostWeightedWord.
| std::list<word_pos> freeling::summarizer::first_word | ( | std::map< std::wstring, std::list< lexical_chain > > & | chains_type, | 
| int | num_words | ||
| ) | const  [private] | 
Returns the list of sentences embedded in a word_pos struct which composes the summary using the heuristic FirstWord.
| std::list<lexical_chain> freeling::summarizer::map_to_lists | ( | std::map< std::wstring, std::list< lexical_chain > > & | chains_type | ) | const  [private] | 
Concatenate all the lists in the map chains_type into a single list.
| void freeling::summarizer::print_lexical_chains | ( | std::map< std::wstring, std::list< lexical_chain >> & | chains | ) | const  [private] | 
Print the lexical chains. Only for debugging.
| void freeling::summarizer::remove_one_word_lexical_chains | ( | std::map< std::wstring, std::list< lexical_chain >> & | chains | ) | const  [private] | 
Remove the lexical chains with only one word.
| void freeling::summarizer::remove_weak_lexical_chains | ( | std::map< std::wstring, std::list< lexical_chain >> & | chains | ) | const  [private] | 
Remove the lexical chains which does not satisfy the strength criterion.
| double freeling::summarizer::standard_deviation_scores | ( | std::map< std::wstring, std::list< lexical_chain > > & | chains_type, | 
| const double | avg | ||
| ) | const  [private] | 
Computes and returns the standard deviation of the lexical chains scores.
| std::list<word_pos> freeling::summarizer::sum_of_chain_weights | ( | std::map< std::wstring, std::list< lexical_chain > > & | chains, | 
| int | num_words | ||
| ) | const  [private] | 
Returns the list of sentences embedded in a word_pos struct which composes the summary using the heuristic SumOfChainWeights.
| std::list<const freeling::sentence*> freeling::summarizer::summarize | ( | const freeling::document & | doc, | 
| int | num_words | ||
| ) | const | 
Summarizes a document and returns the list of sentences that composes the summary.
| double freeling::summarizer::alpha  [private] | 
Parameter to compute the homogeinity index in the hypernymy relation.
| Heuristics freeling::summarizer::heuristic  [private] | 
A string that indicates the heuristic that will be used.
| int freeling::summarizer::hypernymy_depth  [private] | 
Maximum hypernymy depth.
| bool freeling::summarizer::only_strong  [private] | 
If true, the summarizer will use only strong chains.
| bool freeling::summarizer::remove_used_lexical_chains  [private] | 
If true, the used lexical_chains will be removed.
| std::wstring freeling::summarizer::semdb_path  [private] | 
Path to the semantic DB.
| std::set<relation*> freeling::summarizer::used_relations  [private] | 
A set with the relations that will be used.
 1.7.6.1
 1.7.6.1