루비에서 파이썬으로 일부 코드를 다시 작성하고 있습니다. 코드는 Perceptron이고, 섹션 8.2.6에 나열된 Clever Algorithms: Nature-Inspired Programming Recipes입니다. 내가 전에 루비를 사용한 적이 나는이 부분을 이해하지 않습니다루비를 파이썬으로 번역
def test_weights(weights, domain, num_inputs)
correct = 0
domain.each do |pattern|
input_vector = Array.new(num_inputs) {|k| pattern[k].to_f}
output = get_output(weights, input_vector)
correct += 1 if output.round == pattern.last
end
return correct
end
일부 설명 : num_inputs
이 (내 경우 2) 정수이고, domain
이 배열의 목록입니다 [[1,0,1], [0,0,0], etc.]
모든 값을, |k|
저장 pattern[k].to_f
을
input_vector = Array.new(num_inputs) {|k| pattern[k].to_f}
그것은이 개 값으로 배열을 생성하지만 pattern[k].to_f
것입니다 : 나는이 줄을 이해하지?
파이썬에서는 float()이 필요하지 않습니다. 지금은 이해할 수없는 루비 일 것입니다. –
@paolocappelletto, get_output이 무엇을하는지에 따라 다릅니다. 파이썬 2의 정수 부분은 예기치 않은 결과를 줄 수 있습니다. –