A learning device configured to perform learning by gradient boosting, comprising: a plurality of data memory units configured to store learning data including at least one type of feature amount and gradient information corresponding to the learning data; a plurality of gradient output units provided corresponding to the plurality of data memory units, and each configured to receive an input of the feature amount and the gradient information corresponding to the feature amount from a corresponding one of the plurality of data memory units, and output the gradient information corresponding to the feature amount through an output port corresponding to each value of the input feature amount; a plurality of addition units configured to add up one or more pieces of the gradient information corresponding to the same value of the feature amount among pieces of the gradient information output from the plurality of gradient output units, and output an added value of the gradient information corresponding to each value of the feature amount; and a plurality of histogram memory units configured to store a histogram obtained by integrating added values of the gradient information corresponding to each value of the feature amount output from the addition unit for each bin in a case in which the each value is set as a bin, wherein the plurality of gradient output units are provided for each type of the feature amount read out from a corresponding one of the plurality of data memory units, an addition unit of the plurality of addition units is provided for each type of the feature amount, and a separate histogram memory unit is provided for each addition unit. a plurality of data memory units configured to store learning data including at least one type of feature amount and gradient information corresponding to the learning data; a plurality of gradient output units provided corresponding to the plurality of data memory units, and each configured to receive an input of the feature amount and the gradient information corresponding to the feature amount from a corresponding one of the plurality of data memory units, and output the gradient information corresponding to the feature amount through an output port corresponding to each value of the input feature amount; a plurality of addition units configured to add up one or more pieces of the gradient information corresponding to the same value of the feature amount among pieces of the gradient information output from the plurality of gradient output units, and output an added value of the gradient information corresponding to each value of the feature amount; and a plurality of histogram memory units configured to store a histogram obtained by integrating added values of the gradient information corresponding to each value of the feature amount output from the addition unit for each bin in a case in which the each value is set as a bin, wherein the plurality of gradient output units are provided for each type of the feature amount read out from a corresponding one of the plurality of data memory units, an addition unit of the plurality of addition units is provided for each type of the feature amount, and a separate histogram memory unit is provided for each addition unit.