0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

基礎から学ぶ 人工知能の教科書 第3章 章末問題

Posted at

はじめに

機械学習の勉強として、「基礎から学ぶ 人工知能の教科書」 を読んでいます。

この本の特徴は、章末問題にPythonの簡単なプログラムが載っていてるところです。

ここでは、それをRubyにて写経しています。

第3章 章末問題

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 '分類対象の高さを入力してください:'
h = gets.to_i
print '分類対象の上部表面積を入力してください:'
a = gets.to_i

print itemdata.sort_by{|x, y, _| (x - h) ** 2 + (y - a) ** 2}

k近傍法による分類問題を解くプログラムを作成する問題です。

k近傍法 - wikipedia

分類対象の高さを入力してください:50
分類対象の上部表面積を入力してください:50
[[40, 50, "A"], [65, 40, "B"], [30, 50, "A"], [70, 60, "B"], [80, 50, "B"], [90, 60, "B"], [90, 100, "A"]]

例えば、高さ50 上部表面積50のデータは、Aに分類されます。

まとめ

  • 第3章まで読んだ
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?