The Query manager for Queries on inverted Files. More...
#include <CQInvertedFile.h>
Classes | |
struct | parameterPruningType |
Parameters for scoreboard pruning. More... |
Public Member Functions | |
void | finishInit () |
finish the initialisation phase make the weighting function know who its normalizers are | |
CQInvertedFile (CAccessorAdminCollection &inAccessorAdminCollection, CAlgorithm &inAlgorithm) | |
New constructor, taking as parameter the algorithm structure, which contains all the algorithm configuration. | |
~CQInvertedFile () | |
destructor | |
virtual bool | setAlgorithm (CAlgorithm &inAlgorithm) |
set the Algorithm. | |
virtual CIDRelevanceLevelPairList * | fastQuery (const CXMLElement &inQuery, int inNumberOfInterestingImages, double inDifferenceToBest) |
a query which returns ID/RelevanceLevel pairs instead of instead of URL/RelevanceLevel pairs; this is faster for merging tasks (to explain the name) queries for URLs are answered by query (in herited) | |
virtual CIDRelevanceLevelPairList * | fastQueryByFeature (const CWeightingFunctionPointerList &inQuery, int inNumberOfInterestingImages, double inDifferenceToBest) |
Assuming that a correct CWeightingFunctionPointerHash has been built by fastQuery (or another function), this function will do the rest. | |
double | DIDToScore (TID inDID, const CWeightingFunctionPointerHash &inQuery) const |
Returns the score for one image in the query. | |
double | URLToScore (const string &inURL, const CWeightingFunctionPointerHash &inQuery) const |
Returns the score for one image in the query. | |
double | FeatureListToScore (TID inDID, const CDocumentFrequencyList &inFeatureList, const CWeightingFunctionPointerHash &inQuery) const |
Turns the featurelist of a document into a score. | |
void | buildNormalizedQueryHash (const CRelevanceLevel &inQuery, CWeightingFunctionPointerHash &outQueryFeatureWeighters) const |
void | activateBlockingFeatures () |
activateBlockingFeatures - sets the variable to block groups of features | |
void | releaseBlockingFeatures () |
releaseBlockingFeatures - this turns off the blocking of features | |
bool | featuresBlocked () const |
featuresBlocked - returns true if the features are blocked | |
void | blockFeatureGroup (const int featureNumber) |
blockFeatureGroup - this blocks one special group of features | |
void | unblockFeatureGroup (const int featureNumber) |
unblockFeatureGroup - this releases the blocking of one feature group | |
bool | isBlocked (const int featureNumber) const |
isBlocked - returns true if the feature is blocked and false if not | |
void | releaseAllPrunings () |
sets back all the variables for the pruning | |
void | useFeaturePruning (double percentage) |
activates the feature pruning with evaluating a certain percentage of the features | |
void | releaseFeaturePruning () |
set the variables back to its normal status | |
void | useTimePruning (double inTimeCutoffPoint) |
activates the time pruning with the give cuOffPoint | |
void | releaseTimePruning () |
releases the timePruning | |
void | useScoreBoardPruning (double inCutAfterFraction, double inReduceToFactor) |
creates one entry in the scoreboardPruning | |
void | releaseScoreBoardPruning () |
releases all the settings for the ScorboardPruning | |
void | useEvaluateAfterPruning () |
activates the evaluation after the scoreboardPruning | |
void | releaseEvaluateAfterPruning () |
releases the evaluation after the scoreboard pruning | |
CWeighter & | getWeighter () |
For FerDeLance queries. | |
![]() | |
CQuery () | |
default constructor | |
virtual | ~CQuery () |
destructor | |
CQuery (CAccessorAdminCollection &inAccessorAdminCollection, CAlgorithm &inAlgorithm) | |
this constructor takes all the information ANY CQuery needs to configure itself. | |
void | addChild (CQuery *inChild, double inWeight=1) |
adding a child to this. | |
virtual CXMLElement * | query (const CXMLElement &inQuery) |
do a query | |
virtual CXMLElement * | getRandomImages (int inNumberOfInterestingImages) const |
get some random images (handed through to accessor) | |
virtual CIDRelevanceLevelPairList * | getRandomIDs (int inNumberOfInterestingImages) const |
get some random images (handed through to accessor) | |
virtual list< TID > * | getAllIDs () const |
get the IDs of all images (handed through to accessor) | |
virtual list< CAccessorElement > * | getAllAccessorElements () const |
get the IDs of all images (handed through to accessor) | |
const CAlgorithm & | getAlgorithm () const |
get the Algorithm. | |
![]() | |
void | check () const |
This function checks the magic number of this and asserts to zero, if something is wrong, if things are ok, this function keeps quiet. | |
void | checkNPrint () const |
as check(), but it also prints a small message to cout, saying that the check worked. | |
CMagic () | |
sets the magic number to 42 | |
~CMagic () | |
sets the magic number to another value (36) |
Public Attributes | |
bool | mBlockingOn |
bool | mBlockingArray [MAXIMUMNUMBEROFEATUREGROUPS] |
bool | mPruningUsed |
Shows if any pruning is used. | |
bool | mScoreBoardPruningUsed |
true if the scoreboardis Pruned | |
parameterPruningType | mScoreBoardPruningArray [MAX_SCOREBOARD_PRUNINGS] |
Henning Müller | |
int | mNumberofUsedScoreBoardPrunings |
Henning Müller | |
bool | mFeaturePruningUsed |
double | mPercentageofFeatures |
Henning Müller | |
bool | mTimePruningUsed |
double | mStoppingTime |
Henning Müller | |
bool | mEvaluateAfterPruning |
Static Public Attributes | |
static const int | MAXIMUMNUMBEROFEATUREGROUPS = 50 |
static const int | MAX_SCOREBOARD_PRUNINGS = 10 |
These are the variables and functions used for the pruning process. |
Protected Member Functions | |
double | keepScore (CScoreBoard &inoutScoreBoard, const CWeightingFunctionPointerList &inFeatures, bool lPositive) const |
calculates the score for all the images based on a list of features | |
double | keepScorePruning (CScoreBoard &inoutScoreBoard, const CWeightingFunctionPointerList &inFeatures, bool inPositive, int inDesiredNumberOfDocuments) const |
calculates the results for the images using some sort of pruning | |
void | buildQueryHash (CRelevanceLevelList &inQuery, CWeightingFunctionPointerHash &outQueryFeatureWeighters) const |
creates a list of all the features which are in one or more of the query images should be replaced by a version which operates on IDs not URLs | |
void | buildNormalizedQueryList (double inPositiveRelevanceSum, double inNegativeRelevanceSum, CWeightingFunctionPointerHash &inQFW, CWeightingFunctionPointerList &outQFW) const |
Building a list of normalized WF from a hash of Weighting functions. | |
void | buildNormalizedQueryHash (double inPositiveRelevanceSum, double inNegativeRelevanceSum, CWeightingFunctionPointerHash &inQFW) const |
Building a list of normalized WF from a hash of Weighting functions. | |
void | init () |
Initializer, used by both construcors. |
Protected Attributes | |
CAlgorithm * | mDeb |
int | mModulo |
You can choose to use only every lModulo-th feature. | |
int | mModuloClass |
Every lModulo-th feature, starting at lModuloClass. | |
CWeighterFactory | mWeighterFactory |
This is a factory for weighters. | |
CSelfDestroyPointer< CWeighter > | mWeighter |
The weighter currently used. | |
CSelfDestroyPointer < CWeightingFunctionPointerHash > | mQueryFeatureWeighters |
object of this type to have a list of the features with the weights | |
![]() | |
CAccessor * | mAccessor |
needed to translate URLs to IDs this is a pointer, only because we cannot change references it does not imply any destruction responsability | |
CAccessorAdmin * | mAccessorAdmin |
This is where the the Accessor comes from. | |
CAccessorAdminCollection * | mAccessorAdminCollection |
Where to get CAccessorAdmins from. | |
CAlgorithm * | mAlgorithm |
the structure containing everything we know about the algorithm used do not destroy this | |
lCChildren | mChildren |
The children of this. |
Additional Inherited Members | |
![]() | |
typedef list< lCChild > | lCChildren |
type for children of this |
The Query manager for Queries on inverted Files.
CQInvertedFile::CQInvertedFile | ( | CAccessorAdminCollection & | inAccessorAdminCollection, |
CAlgorithm & | inAlgorithm | ||
) |
New constructor, taking as parameter the algorithm structure, which contains all the algorithm configuration.
CQInvertedFile::~CQInvertedFile | ( | ) |
destructor
void CQInvertedFile::activateBlockingFeatures | ( | ) |
activateBlockingFeatures - sets the variable to block groups of features
void CQInvertedFile::blockFeatureGroup | ( | const int | featureNumber | ) |
blockFeatureGroup - this blocks one special group of features
|
protected |
Building a list of normalized WF from a hash of Weighting functions.
|
protected |
Building a list of normalized WF from a hash of Weighting functions.
|
protected |
creates a list of all the features which are in one or more of the query images should be replaced by a version which operates on IDs not URLs
double CQInvertedFile::DIDToScore | ( | TID | inDID, |
const CWeightingFunctionPointerHash & | inQuery | ||
) | const |
Returns the score for one image in the query.
|
virtual |
a query which returns ID/RelevanceLevel pairs instead of instead of URL/RelevanceLevel pairs; this is faster for merging tasks (to explain the name) queries for URLs are answered by query (in herited)
Implements CQuery.
|
virtual |
Assuming that a correct CWeightingFunctionPointerHash has been built by fastQuery (or another function), this function will do the rest.
bool CQInvertedFile::featuresBlocked | ( | ) | const |
featuresBlocked - returns true if the features are blocked
|
protectedvirtual |
Initializer, used by both construcors.
Implements CQuery.
bool CQInvertedFile::isBlocked | ( | const int | featureNumber | ) | const |
isBlocked - returns true if the feature is blocked and false if not
|
protected |
calculates the score for all the images based on a list of features
|
protected |
calculates the results for the images using some sort of pruning
void CQInvertedFile::releaseAllPrunings | ( | ) |
sets back all the variables for the pruning
Henning Müller
void CQInvertedFile::releaseBlockingFeatures | ( | ) |
releaseBlockingFeatures - this turns off the blocking of features
void CQInvertedFile::releaseEvaluateAfterPruning | ( | ) |
releases the evaluation after the scoreboard pruning
Henning Müller
void CQInvertedFile::releaseFeaturePruning | ( | ) |
set the variables back to its normal status
Henning Müller
void CQInvertedFile::releaseScoreBoardPruning | ( | ) |
releases all the settings for the ScorboardPruning
Henning Müller
void CQInvertedFile::releaseTimePruning | ( | ) |
releases the timePruning
Henning Müller
|
virtual |
void CQInvertedFile::unblockFeatureGroup | ( | const int | featureNumber | ) |
unblockFeatureGroup - this releases the blocking of one feature group
double CQInvertedFile::URLToScore | ( | const string & | inURL, |
const CWeightingFunctionPointerHash & | inQuery | ||
) | const |
Returns the score for one image in the query.
void CQInvertedFile::useEvaluateAfterPruning | ( | ) |
activates the evaluation after the scoreboardPruning
Henning Müller
void CQInvertedFile::useFeaturePruning | ( | double | percentage | ) |
activates the feature pruning with evaluating a certain percentage of the features
Henning Müller
void CQInvertedFile::useScoreBoardPruning | ( | double | inCutAfterFraction, |
double | inReduceToFactor | ||
) |
creates one entry in the scoreboardPruning
Henning Müller
void CQInvertedFile::useTimePruning | ( | double | inTimeCutoffPoint | ) |
activates the time pruning with the give cuOffPoint
Henning Müller
|
static |
These are the variables and functions used for the pruning process.
the maximum number of sets which can be used to prune the ScoreBoard
|
protected |
This is a factory for weighters.
With this we can find the weighters