俺人〜OREGIN〜俺、バカだから人工知能に代わりに頑張ってもらうまでのお話

俺って、おバカさんなので、とっても優秀な人工知能を作って代わりに頑張ってもらうことにしました。世界の端っこでおバカな俺が夢の達成に向けてチマチマ頑張る、そんな小さなお話です。現在はG検定、E資格に合格し、KaggleやProbSpaceのコンペに参画しながら、Pythonや機械学習、統計学、Dockerなどの勉強中です。学習したことをブログにアウトプットすることで、自分の身に着けていきたいと思います。まだまだ道半ばですが、お時間がありましたら見て行ってください。

Python

scikit-learnのSVMを使ってアヤメの品種を分類する(Pythonによるスクレイピング&機械学習テクニック)

今回は、scikit-learnのSVMを使って、アヤメの品種を分類できるようになりました。花びらの長さや幅などの特徴量から品種を分類するということで、本格的に機械学習となってまいりました。 Pythonによるスクレイピング&機械学習開発テクニック増補改訂 Scra…

scikit-learnのSVMを使った入門編としてXOR演算を学習させる(Pythonによるスクレイピング&機械学習テクニック)

今回は、scikit-learnのSVMを使って、入門編としてXOR演算を学習させました。ついに機械学習の章に入ってきて、テンションも上がります。最近実践中心だったので、基礎からもう一度学び直したいと思います。 Pythonによるスクレイピング&機械学習開発テクニ…

YAMLを解析して要素を出力(Pythonによるスクレイピング&機械学習テクニック)

今回は、yaml で、PythonのデータからYAML形式に変換したり、YAML形式のファイルを解析して要素を出力できるようになりました。 Pythonによるスクレイピング&機械学習開発テクニック増補改訂 Scrapy、BeautifulSoup、scik [ クジラ飛行机 ]の第3章を参考に…

Ubuntu(20.04 LTS)をインストールしてPython(Anaconda)の開発環境を構築する

今回は、Ubuntu 20.04 LTSをインストールして、Python,Seleniumの開発環境を構築しました。 これまで、 Pythonによるスクレイピング&機械学習開発テクニック増補改訂 Scrapy、BeautifulSoup、scik [ クジラ飛行机 ]をDockerを利用して取り組んでいたのです…

JSONを解析して要素を出力(Pythonによるスクレイピング&機械学習テクニック)

今回は、 Pythonによるスクレイピング&機械学習開発テクニック増補改訂 Scrapy、BeautifulSoup、scik [ クジラ飛行机 ]の第3章を参考にさせていただきながら、urllib.request+jsonで、Web上から、JSONファイルをダウンロードして解析後、要素を出力できる…

XMLを解析して要素を出力(Pythonによるスクレイピング&機械学習テクニック)

今回は、 Pythonによるスクレイピング&機械学習開発テクニック増補改訂 Scrapy、BeautifulSoup、scik [ クジラ飛行机 ]の第3章を参考にさせていただきながら、urllib.request+BeautifulSoupで、Web上から、XMLファイルをダウンロードして解析後、要素を出…

ブログページから記事タイトル一覧を出力(Pythonによるスクレイピング&機械学習テクニック)

今回は、 Pythonによるスクレイピング&機械学習開発テクニック増補改訂 Scrapy、BeautifulSoup、scik [ クジラ飛行机 ]の第2章を参考にさせていただきながら、Selenium+PhantomJS(画面なしブラウザ)で、ブログページから記事タイトル一覧を出力できるよ…

ブラウザ(PhantomJS)を経由したスクレイピング(Pythonによるスクレイピング&機械学習テクニック)

今回は、 Pythonによるスクレイピング&機械学習開発テクニック増補改訂 Scrapy、BeautifulSoup、scik [ クジラ飛行机 ]の第2章を参考にさせていただきながら、Selenium+PhantomJS(画面なしブラウザ)で、Webページのスクリーンショットを保存できるように…

ProbSpace浮世絵作者予測コンペ振り返り(10位にランクイン!)

先日、「ProbSpace」というプラットフォームで開催された「浮世絵作者予測」コンペに参戦したので、振り返っていきたいと思います。 私にとって、画像分類のコンペは初めてでしたが、E資格の課題が画像分類でしたので、その時に得た知識をフル動員して取り組…

ProbSpace給与推定コンペ振り返り

先日、「ProbSpace」というプラットフォームで開催された「給与推定」コンペに参戦したので、振り返っていきたいと思います。 私にとって、初めて公式の結果が確定したコンペとなり、最終順位は参加310チーム中、46位でした。全体の15%以内に入れたので、ま…

E資格合格しました!(JDLA Deep Learning for ENGINEER 2019 #2)

本日、8月31日に受験したE資格(JDLA Deep Learning for ENGINEER 2019 #2)の結果発表があり、無事合格しました! 約半年間取り組んできた努力が実りました! させてくれた家族と会社の皆さんに感謝です。 今後、合格に向けて取り組んできた対策、例題、…

E資格対策で勉強したこと、参考書など(JDLA Deep Learning for ENGINEER 2019 #2)

E資格(JDLA Deep Learning for ENGINEER 2019 #2)の試験が終わりました。 3月にG検定合格した後、E資格対策として取り組んできた勉強と、参考にした書籍などを紹介していきたいと思います。 3月 G検定に合格し、E検定受験を決意 4月 認定講座受講開始ま…

E資格受験に向けて「ゼロから作るDeep Learning 2 自然言語処理編」で追い込みをかける!

受験資格を得るための課題は完了したので、一旦実装はお休みして、知識学習に力を入れています。今は、「 ゼロから作るDeep Learning 2 自然言語処理編」を購入して、苦手なRNNやLSTMなど系列データを使ったディープラーニングを学習しています。 ゼロから作…

ep4-3:多項式の次数を上げて近似する。( 「実践 機械学習システム」に学ぶ。)

オライリージャパン社の「実践 機械学習システム」に取り組んでいます。 今回は、多項式の次数を上げて近似します。 前回の直線で近似した記事は以下の通りです。 oregin-ai.hatenablog.com 実践機械学習システム [ ウィリ・リチャート ] では、順に取り組ん…

ep4-2:単純な直線で近似する。( 「実践 機械学習システム」に学ぶ。)

オライリージャパン社の「実践 機械学習システム」に取り組んでいます。 今回は、「単純な直線で近似する」を学びます。 実践機械学習システム [ ウィリ・リチャート ] では、順に取り組んでいきます。 1.まずは、誤差を計算する関数を定義する。 #誤差を定…

ep4-1: オライリー・ジャパン社「実践 機械学習システム」に学ぶ。

「Kaggle」のデータセット「Kickstarter Projects」の取り組みで、かなり苦戦したので、今一度、基礎から学ぶために、オライリージャパン社の「実践 機械学習システム」に取り組んでまいります。 今回は、データの読み込みと欠損値の処理を学びます。 実践機…

エピソード3-14: AdaBoostのまとめ(KaggleでKickstarter Projectsに挑戦する。)

「Kaggle」のデータセット「Kickstarter Projects」に取り組んでいます。 前回挑戦した、木モデルのAdaBoostのコードをまとめました。 前回の記事は、以下にありますので、ご参照ください。 oregin-ai.hatenablog.com では、さっそくまとめです。 1.まずは、…

エピソード3-13: AdaBoostに挑戦してみる。Acc66%→67.5%(KaggleでKickstarter Projectsに挑戦する。)

「Kaggle」のデータセット「Kickstarter Projects」に取り組んでいます。 今回は、一度NNモデルから離れて、木モデルのAdaBoostに挑戦します。 NNモデルの記事は、以下にありますので、ご参照ください。 oregin-ai.hatenablog.com では、さっそく取り組んで…

エピソード3-12: 選択した特徴量を使ってNNモデルの学習率をグリッドサーチする。Acc62%→66%(KaggleでKickstarter Projectsに挑戦する。)

「Kaggle」のデータセット「Kickstarter Projects」に取り組んで、前回、LassoCVを使った特徴量選択を実施したので、その特徴量を使ってNNモデルを作り学習率をグリッドサーチします。 前回の記事は、以下にありますので、ご参照ください。 oregin-ai.hatena…

エピソード3-11: 正則化L1ノルム(Lasso)を使って特長量選択。(KaggleでKickstarter Projectsに挑戦する。)

「Kaggle」のデータセット「Kickstarter Projects」に取り組んで、Leakageにハマってしまいましたが、気を取り直して、再度取り組み開始です。 ハマってしまった「Leakage」については、以下にまとめてあるのでご参照ください。 oregin-ai.hatenablog.com さ…

エピソード3-10: 大幅手戻り、Leakageにはまる。(KaggleでKickstarter Projectsに挑戦する。)

「Kaggle」のデータセット「Kickstarter Projects」に取り組んで、順調に精度を向上させているかに見えたのですが、ここにきて、知人に「それ、Leakageじゃない?」と指摘され、今回は、Leakageの回避に取り組みました。 これまでの流れは以下にまとめてある…

エピソード3-9: 異常値(外れ値)を除いてみて精度を向上するか確認する。(KaggleでKickstarter Projectsに挑戦する。)

「Kaggle」のデータセット「Kickstarter Projects」にて、更に精度を向上させるために異常値の除去についても検討します。 これまでの流れは以下にまとめてあるのでご参照ください。 oregin-ai.hatenablog.com 国別とカテゴリーは成功率なので異常値はないと…

エピソード3-8: 説明変数の追加で精度を向上する。(KaggleでKickstarter Projectsに挑戦する。)

「Kaggle」のデータセット「Kickstarter Projects」にて、更に精度を向上させるためにほかの説明変数についても検討します。 これまでの流れは以下にまとめてあるのでご参照ください。 oregin-ai.hatenablog.com 1.【仮説1】'country' によって成功、失敗が…

エピソード3-7: KaggleでKickstarter Projectsに挑戦する。(ロジスティック回帰実装まとめ。)

「Kaggle」のデータセット「Kickstarter Projects」にて、ロジスティック回帰で分類するところまできたので、とりあえず実装コードをまとめておこうと思います。 これまでの流れは以下の記事をご参照ください。 oregin-ai.hatenablog.com 1.ロジスティック回…

エピソード3-6: KaggleでKickstarter Projectsに挑戦する。(ロジスティック回帰で分類する。)

現在取り組み中の「Kaggle」のデータセット「Kickstarter Projects」にて、分類に採用する説明変数を選択したので、ロジスティック回帰で分類していきたいと思います。 0.これまでの続きなので、ライブラリのインポートや、データ読み込み、データの前処理が…

エピソード3-5: KaggleでKickstarter Projectsに挑戦する。(採用する説明変数の選択)

前回から取り組み始めた「Kaggle」の過去問「Kickstarter Projects」にて、分類に採用する説明変数を選択していきたいと思います。 0.前回の続きなので、ライブラリのインポートや、データ読み込み、データの前処理が実施されている前提です。前回をご覧にな…

エピソード3-3: KaggleでKernelsを使ってみる。

以前、「Kaggle」のアカウントを作成したものの、何から手をつけていいかわからず放置していたので、まずは、「Kernels」を使ってみたいと思います。 パソコンよりも高性能だと聞いているので、楽しみです。 0. まずは、「Kaggle」にログインして、「Kernels…

エピソード2-14: DataFrameから情報を取得する〜 E資格への道〜

今回は、pandasでDataFrameから情報を取得してみます。 前回は、DataFrameを作成しましたが、今度は、DataFrameから色々な情報を取得する処理を確認していきます。 では、早速試してきます。 0. まずは、numpyライブラリとpandasライブラリをimport。 「impo…

エピソード2-12: pandasでDataFrameを扱ってみる〜 E資格への道〜

今回は、pandasでDataFrameを扱ってみたいと思います。 DataFrameは、エクセルのように二次元のデータを、行(レコード)と列(項目、カラム)でラベルをつけて、扱えるオブジェクトです。 pandasは、1行のレコードや、1列のカラムを扱う、Seriesというオ…

エピソード2-11: Pythonで複数のグラフを表示してみる〜 E資格への道〜

今回は、matplotlibで複数のグラフを描いてみます。 データの前処理等を行うにも、数字の羅列だけを見るよりもグラフ化した方が見通しがよくなるので、必須の処理になります。 では、早速試してきます。 0. まずは、お約束のnumpyライブラリとmatplotlibライ…