制作物紹  ▷  AI|pandas&scikit-learn

pandas&scikit-learn(学習用)

主な使用技術:Python 機械学習(pandas&scikit-learn)

目次:

|   制作のきっかけ  |   工夫  |   完成品について  |   今後について  |

Reason制作のきっかけ

きっかけはいたって単純で、AIを学習したため、それを何かしらの形でアウトプットたかったからです。第四次産業革命によってAI技術が注目されるようになり、おそらく現在最も発展速度の速い市場はAIなんだろうと盲目的に思っている次第です。
実際に自分自身がAIの開発に携わらなくても、バックエンド分野志望である限りそのためのデータ処理を担当したり、作られたAIを活用したりする可能性があるわけです。そのため、AIの知識や技術は今の時代必要不可欠であると考え、pandasとsciit-learnを用いて機械学習を行いました。

Ideas工夫

行ったのは教師あり学習で、様々な要因から、住宅の価格を予測する回帰モデルの作成を行いました。要素が多いので、どの特徴量が正解データと強い相関を持っているのかについてよく考察して、データの選択を行いました。
まず簡易的に外れ値の削除を行いました。ヒストグラムや散布図から目視によるデータの削除を行い、その後目視では判断の付きにくい外れ値を削除するために、マハラノビス距離を活用しました。
その後再びヒストグラムに起こして表示し、「外れ値として削除はしなかったが、少しばらつきがあるから中央値の方がよい」等と判断して欠損値の補完を行いました。
ここまででデータの前処理を終え、相関係数の計算と散布図の表示を行うことで、特徴量の選択を行いました。ただの特徴量だけではなく、曲線上に数値が変化していた場合は多項式特徴量を用いることによって、より正確な特徴量の選択を行いました。
ここからはモデルの作成を行います。アダブースト(ブースティング)とランダムフォレスト(バギング)を併用することによって、複数の検証データを試すことができ、偏ったモデルになることを防ぎました。これにより、モデルの作成には時間がかかりますが、モデルの精度が著しく向上しました。
最後にK分割交差検証を行うことで、そのモデルが本当に妥当なのか、というのを極力正確に試すことができました。AIについて学習してきた知識をフル活用し、比較的精度の良いモデルの作成ができたのではないかと考えております。

Finished完成品について

こちらをダウンロードしていただき、Google Colaboratoryにノートブックとデータのアップロードをしていただくことによって、実際の動作を確認していただくことが可能です。

Future今後について

データサイエンティストを職種として志望しているわけではないので、今後はAIについて厚く学習していく予定はありません。しかし、今後注目されていく技術であることは間違いないかと思いますので、ディープラーニングの学習もしていこうかと考えております。