Error Correcting Output Codes
Error Correction Output Coding ECOC can convert multi-class problems into multiple two-class problems, and the error-correcting output code itself has error-correcting capabilities, which can improve the prediction accuracy of supervised learning algorithms.
The output category encoding can be used to classify multi-category problems into two categories, that is, each category corresponds to a binary bit string of length n, forming a total of m codewords, which describe a binary function. After learning, N bipartitioners can be obtained, and the result of each bipartitioner on the input sample forms an output vector, and then the category of the input sample is determined by the decision rule.
In coding theory, the Hamming distance is used to determine the error correction capability of a block code. It is also used to determine the error correction capability of an output code.
The number of rows of the error correction output code matrix is consistent with the number of categories m in the supervised classification problem, and the number of columns is consistent with the code length n. The available error correction output codes have the following characteristics:
- Have certain error correction capabilities;
- There are no all-0 columns or all-1 columns in the code matrix;
- There are no identical columns and no complementary columns in the code matrix.
The commonly used encoding methods are as follows:
- Enumeration Coding
- Random Hill Climbing
- BCH Encoding
- Continuous Coding
- Search Coding