Lines Matching defs:inputs

70 float MulticlassPA::Score(const vector<float>& inputs,
72 // CHECK_EQ(inputs.size(), parameters.size());
74 for (int i = 0; i < static_cast<int>(inputs.size()); ++i) {
75 result += inputs[i] * parameters[i];
80 float MulticlassPA::SparseScore(const vector<pair<int, float> >& inputs,
83 for (int i = 0; i < static_cast<int>(inputs.size()); ++i) {
84 //DCHECK_GE(inputs[i].first, 0);
85 //DCHECK_LT(inputs[i].first, parameters.size());
86 result += inputs[i].second * parameters[inputs[i].first];
91 float MulticlassPA::L2NormSquare(const vector<float>& inputs) const {
93 for (int i = 0; i < static_cast<int>(inputs.size()); ++i) {
94 norm += inputs[i] * inputs[i];
100 const vector<pair<int, float> >& inputs) const {
102 for (int i = 0; i < static_cast<int>(inputs.size()); ++i) {
103 norm += inputs[i].second * inputs[i].second;
108 float MulticlassPA::TrainOneExample(const vector<float>& inputs, int target) {
111 float target_class_score = Score(inputs, parameters_[target]);
114 float other_class_score = Score(inputs, parameters_[other_class]);
119 float twice_norm_square = L2NormSquare(inputs) * 2.0;
129 for (int i = 0; i < static_cast<int>(inputs.size()); ++i) {
131 parameters_[target][i] += rate * inputs[i];
133 parameters_[other_class][i] -= rate * inputs[i];
141 const vector<pair<int, float> >& inputs, int target) {
144 float target_class_score = SparseScore(inputs, parameters_[target]);
147 float other_class_score = SparseScore(inputs, parameters_[other_class]);
152 float twice_norm_square = SparseL2NormSquare(inputs) * 2.0;
162 for (int i = 0; i < static_cast<int>(inputs.size()); ++i) {
164 parameters_[target][inputs[i].first] += rate * inputs[i].second;
166 parameters_[other_class][inputs[i].first] -= rate * inputs[i].second;
198 int MulticlassPA::GetClass(const vector<float>& inputs) {
203 float score_i = Score(inputs, parameters_[i]);
212 int MulticlassPA::SparseGetClass(const vector<pair<int, float> >& inputs) {
217 float score_i = SparseScore(inputs, parameters_[i]);