A method for feeding back channel state information, comprising: - determining (101, 301) a second orthogonal basis vector group and a group number of the second orthogonal basis vector group according to a pre-defined first basis vector group, wherein each basis vector of the first basis vector group is a Kronecker product of basis vectors corresponding to at least two directions of a horizontal direction, a vertical direction, and a polarization direction; - determining third orthogonal basis vector groups (102, 302) corresponding to data layers, wherein the third orthogonal basis vector groups are subsets determined from the second orthogonal basis vector group, wherein an intersection between the third orthogonal basis vector groups is null and wherein in the third orthogonal basis vector groups corresponding to the data layers, the number of vectors in at least one of the third orthogonal basis vector groups is greater than 1; - calculating (103, 303, 304), for each data layer, a second-level code word of the data layer separately according to the third orthogonal basis vector group corresponding to the data layer, wherein a second-level code word x (i) corresponding to the i th data layer is calculated according to x (i) = G (i) H v e (i), wherein v e (i) is a channel eigenvector of the i th data layer, and G (i) is a matrix formed by all vectors in the third orthogonal basis vector group corresponding to the i th data layer; and - sending (104, 305) the group number of the second orthogonal basis vector group, the third orthogonal basis vector group corresponding to each data layer, and the second-level code word corresponding to each data layer to a base station, so that the base station may synthesize a multi-layer code word, wherein the sending the group number of the second orthogonal basis vector group, the third orthogonal basis vector group corresponding to each data layer, and the second-level code word corresponding to each data layer to a base station, so that the base station may synthesize a multi-layer code word comprises: - sending a first feedback message to the base station, wherein the first feedback message comprises the group number of the second orthogonal basis vector group and the third orthogonal basis vector group corresponding to each data layer; and - sending a second feedback message to the base station, wherein the second feedback message comprises the second-level code word corresponding to each data layer. - determining (101, 301) a second orthogonal basis vector group and a group number of the second orthogonal basis vector group according to a pre-defined first basis vector group, wherein each basis vector of the first basis vector group is a Kronecker product of basis vectors corresponding to at least two directions of a horizontal direction, a vertical direction, and a polarization direction; - determining third orthogonal basis vector groups (102, 302) corresponding to data layers, wherein the third orthogonal basis vector groups are subsets determined from the second orthogonal basis vector group, wherein an intersection between the third orthogonal basis vector groups is null and wherein in the third orthogonal basis vector groups corresponding to the data layers, the number of vectors in at least one of the third orthogonal basis vector groups is greater than 1; - calculating (103, 303, 304), for each data layer, a second-level code word of the data layer separately according to the third orthogonal basis vector group corresponding to the data layer, wherein a second-level code word x (i) corresponding to the i th data layer is calculated according to x (i) = G (i) H v e (i), wherein v e (i) is a channel eigenvector of the i th data layer, and G (i) is a matrix formed by all vectors in the third orthogonal basis vector group corresponding to the i th data layer; and - sending (104, 305) the group number of the second orthogonal basis vector group, the third orthogonal basis vector group corresponding to each data layer, and the second-level code word corresponding to each data layer to a base station, so that the base station may synthesize a multi-layer code word, - sending a first feedback message to the base station, wherein the first feedback message comprises the group number of the second orthogonal basis vector group and the third orthogonal basis vector group corresponding to each data layer; and - sending a second feedback message to the base station, wherein the second feedback message comprises the second-level code word corresponding to each data layer.