Als Studie über maschinelles Lernen lese ich "* Lernen aus den Grundlagen: Lehrbuch für künstliche Intelligenz *".
Das Merkmal dieses Buches ist, dass das Problem am Ende des Kapitels ein einfaches Programm von Python
enthält.
Hier wird es mit "Ruby" kopiert.
kneighbor.rb
itemdata = [[30, 50, 'A'], [65, 40, 'B'],
[90, 100, 'A'], [90, 60, 'B'],
[70, 60, 'B'], [40, 50, 'A'],
[80, 50, 'B']]
print 'Bitte geben Sie die zu klassifizierende Höhe ein:'
h = gets.to_i
print 'Geben Sie die zu klassifizierende Oberfläche ein:'
a = gets.to_i
print itemdata.sort_by{|x, y, _| (x - h) ** 2 + (y - a) ** 2}
Dies ist ein Problem beim Erstellen eines Programms, das das Klassifizierungsproblem durch die k-Nachbarschaftsmethode löst.
Bitte geben Sie die zu klassifizierende Höhe ein: 50
Geben Sie die zu klassifizierende Oberfläche ein: 50
[[40, 50, "A"], [65, 40, "B"], [30, 50, "A"], [70, 60, "B"], [80, 50, "B"], [90, 60, "B"], [90, 100, "A"]]
Beispielsweise werden Daten mit einer "Höhe 50 der oberen Oberfläche 50" als "A" klassifiziert.
Recommended Posts