PythonMania

普段はロボットとAIを組み合わせて色々作ってます。Python関係以外も色々投稿していくと思います。

【Python】画像認識 - kerasで InceptionResNetV2をfine-tuningしてみる 【DeepLearning】

今回は InceptionResNetV2 モデルをfine-tuningしてみたいと思います。 基本的な流れは以前紹介したVGG16やXceptionと同様ですが、InceptionResNetV2の場合は学習させる画像のサイズを139以上に設定しないとエラーが起きます。keras.io また固定する層の数も…

【Python】画像認識 - kerasでXceptionをfine-tuningしてみる 【DeepLearning】

前回はVGG16を転移学習してみましたが、今回はKerasに含まれているpretrained_modelのうちXceptionを扱ってみたいと思います。 以前の記事でも書きましたが、XceptionはInceptionというモデルの改良版であり、 パラメータ・層の深さともに軽量化されています…

【Python】画像認識 - KerasでVGG16のfine-tuningを試してみる 【DeepLearning】

これまでfastaiを使った転移学習は行ってきましたが、学習した結果を使ってアプリを作成したりする場合にはKeras(Tensorflow)の方が便利そうだったので今回はkerasを使った転移学習を行っていきます。 学習に使用するデータセットは例によってKaggleのいつも…

【Python】画像認識 - Kerasで学習を行えるようにデータセットを整形する 【DeepLearning】

from sklearn.model_selection import train_test_split import numpy as np from PIL import Image import os from glob import glob from sklearn.preprocessing import LabelEncoder import cv2 #画像のサイズ指定 ScaleTo = 70 seed = 7 #トレーニングデ…

【Python】tensorflow objectdetection api 学習の仕方【DeepLearning】

今更ですがtensorflow objectdetection api のチュートリアルを試してみたのでメモ! スポンサードリンク (adsbygoogle = window.adsbygoogle || []).push({ google_ad_client: "ca-pub-7997681574590118", enable_page_level_ads: true }); ①事前準備以下UR…

【Python】画像認識 - kerasでCNNモのモデルを作ってみる② 【DeepLearning】

スポンサードリンク (adsbygoogle = window.adsbygoogle || []).push({ google_ad_client: "ca-pub-7997681574590118", enable_page_level_ads: true }); from keras.models import Sequential from keras.layers import Conv2D,MaxPooling2D from keras.lay…

【Python】画像データをtensorflowで読み込み可能な形式(numpy配列)にする【DeepLearning】

スポンサードリンク (adsbygoogle = window.adsbygoogle || []).push({ google_ad_client: "ca-pub-7997681574590118", enable_page_level_ads: true }); from PIL import Image import os,glob import numpy as np from sklearn import model_selection #ク…

【Python】画像認識 - fastaiとDenseNetでSIGNATEの練習問題に挑戦 【DeepLearning】

前回に引き続き、SIGNATEの画像分類問題に挑戦します。 今回は10種類の画像分類問題です。 signate.jp 最初に提出した時は、ファイルの形式が間違っていて最下位からのスタートでした笑 その後データの形式を確認し、提出しなおしたところ 0.92012(暫定5位…

【Python】fastai 学習したパラメータの保存・読み込み 【DeepLearning】

fastaiは学習したパラメータの保存・読み込みも簡単にできます。 #パラメータの保存 learn.save("trained_model") #パラメータの読み込み learn = learn.load("trained_model")

【Python】fastaiとDenseNetで実際にコミットしてみる 【DeepLearning】

今回は予測した結果を実際にコミットしてみて、精度を見てみたいと思います。 www.kaggle.com サボテンの画像認識コンペです(既に終了しているコンペです) 先に結果を書いてしまうと、 Scoreは1.000でした!簡単に高精度の結果が出せてしまうfastai恐るべ…

【Python】keras 画像データセットの読み込み方 【DeepLearning】

多クラス分類 csvのラベルファイルがある場合 #ラべルの読み込み LABELS = "../input/train.csv" train_df = pd.read_csv(LABELS) top = sorted(list(train_df['label_id'].value_counts().head(16).index)) train_df = train_df[train_df['label_id'].isin(…

【Python】fastai ImageDataBunchの作り方 【DeepLearning】

fastai ImageDataBunchの作成方法多クラス分類ファイルディレクトリを指定して ImageList.from_dfで作成するImageList.from_df 第一引数にcsvデータ(ラベルや提出用ファイルのパス)を指定、 第二引数(path=)で画像データのディレクトリを指定 第三引数(fol…

【Python】画像認識 - VGG19で犬の種類分類をしてみる 【DeepLearning】

今回はこちらをもとに学習していきますwww.kaggle.com コンペではないのですが、kernelが非常に勉強になります。 犬の画像から120の犬種を判別していきます。 使用しているモデルはVGG19で、今回は前加工等はしていません。以下コードになります。 #必要なラ…

【Python】画像認識 - SIGNATEで画像分類に挑戦してみる 【DeepLearning】

今回はKaggleではなくSIGNATEのコンペに挑戦してみます。 正確にはコンペというよりはチュートリアルみたいなものですが笑 signate.jp 20種類のラベルを分類してみます。 今回はfastaiを使っていきます。 モデルはDenseNetを転移学習させていきます。 以下コ…

【Python】画像認識 - データ読み込み方法まとめ 【DeepLearning】

データセットがカテゴリ(ラベル)毎にフォルダ分けされている場合 BASE_DATA_FOLDER = "../input/" TRAin_DATA_FOLDER = os.path.join(BASE_DATA_FOLDER, "train") images_per_class = {} for class_folder_name in os.listdir(TRAin_DATA_FOLDER): class_f…

【Python】画像認識 - データセットの読み込み方 追記 【DeepLearning】

Zipファイルの中にさらにフォルダが配置されており、その中に画像データが 配置されている場合の読み込み方について ex.../input/train.zip/train/〇〇〇.jp こちらのコンペを参考にしていますwww.kaggle.com 以下コードです #必要なライブラリのインポート …

【Python】画像認識 - fastaiとDenseNetでがん細胞の判別をしてみる【DeepLearning】

Fastaiについて理解を深めたいので、今回も記事にまとめてみます。 www.kaggle.com 以前はサボテンの分類を行いましたが、今回は画像にがん細胞が写っているかの分類を行います。 モデルは前回同様のDenseNet169を読み込んで使います 今回は学習時だけではな…

【Python】画像認識 - 画像認識ワークフローまとめ【DeepLearning】

ここまで学習してきたことについて軽くまとめてみます。 まだまだ深くは理解できていませんが、画像認識をする際のワークフローは概ね以下のような流れが多かったと思います ①プロジェクトの理解 ②データの理解 ③データの読み込み・加工・複製 ④モデルの選択…

【Python】画像認識 - CNNモデルの作成【DeepLearning】

今回はこちらのコンペをもとにCNNモデルの作成までをまとめてみます www.kaggle.com 以下コードになります。 Kerasを使用してモデルを作成しています。 #必要なライブラリの読み込み from numpy.random import seed seed(101) from tensorflow import set_ra…

【Python】画像認識 - 画像ファイルとラベルファイルが分かれている場合のトレーニングデータの読み込み方法【DeepLearning】

学習用のデータを読み込む際、ラベルごとにフォルダ分けしてデータを保存していることが多かったんで、ラベルを別途csvファイルで用意されているパターンに遭遇して詰まりました笑 今回は画像ファイルとラベルファイル(csv)が分かれている場合の読み込み方…

【Python】画像認識 - 画像の前加工とImageDataBunch(faceai用データ形式)の作成【DeepLearning】

今回は以下のコンペで画像認識の勉強をしてみました。 www.kaggle.com kaggleでよく見かける「faceai」というフレームワークの学習用データ形式を作成するところまで記載してあります。 また今回はデータの前処理で画像のトリミング、及び極端にピクセル値が…

【Python】画像認識 - fastaiとDenseNetでサボテンの分類をやってみる 【DeepLearning】

今回はこちらのコンペを参考に画像認識について勉強していきたいと思います。 www.kaggle.com Kernelを読んでいると、至るところで「fastai」という言葉を見かけました。調べてみたところ、どうやら「fast.ai」というのはAIに関する講座(学習サイト?)のよ…

【Python】画像認識 - Xceptionモデルを活用した学習【Deepleaning】

前回に引き続き以下のコンペをもとに勉強していきます。www.kaggle.com 今回は学習済モデル(Xception_model)を活用して転移学習を行ったものです。XceptionとはImageNetを学習したモデルでInceptinの改良版みたいです。XceptionはInceptionと違い、空間方向…

【Python】画像認識 - 画像の読み込み・前加工から学習精度検証までを一通りやってみる【DeepLeaning】

今回は前回同様CNNを活用して、画像認識のやり方についてまとめていきます。 今回も題材にしたコンペはこちらです。 www.kaggle.com 全体の流れとして①データの読み込み ②OpenCVを使ったデータ加工(マスク処理等) ③Kerasによるデータ複製 ④KerasでCNN構築 ⑤…

【Python】画像認識 - CNNを実装してみる【Python】

今回はKerasを使ってConvolutional Neaural Network(CNN)を構築し、実際に学習を行ってみたいと思います。 今回も今までと同様、植物の画像分類コンペを取り上げて勉強していきます。www.kaggle.com #必要なライブラリの読み込み import glob import os from…

【Python】画像の前加工 - OpenCVを使いオブジェクトの特徴を捉える【DeepLeaning】

前回に引き続き画像認識についての勉強をしていきます。 今回も前回の記事と同様、植物の分類を行う「Plant Seedling Classification」のコンペのKernelを写経していきます。 www.kaggle.com 機械学習を行う際に、学習させるデータの前加工が大切となってく…

【Python】画像認識における転移学習の活用【DeepLeaning】

機械学習の技術向上のためにKaggleのKernelの写経を始めたので、 記録として記事を書いていきます。 画像認識系の勉強をしたかったので、 「Plant Seedling Classification」という植物の分類「画像分類」を行う コンペに注目してい見ました(既に終了してい…

機械学習まとめ①

機械学習アルゴリズムまとめ① 最近機械学習のアルゴリズムについて勉強中なのでそのまとめとして記事にまとめます。 今回は初回として、機械学習の定義・大まかな分類について書いていこうと思います。 なお今回の記事については以下の書籍を参考にまとめて…

Python2.7でtensorflow-gpuを動かしたかった。

最初に書いておきますが、この記事はうまく行かなかったパターンをメモしたものです。別のやり方で成功したらまた記事にまとめます。 以前SSD_kerasとpythonSDKを使い、Pepperのカメラでリアルタイム物体検知を試してみました。Pepperのカメラで取得した動画…

VirtualBoxで64bitが認識されないときの対処法

VirtualBoxで64bitが認識されないときの対処法 VirtualBoxでUbuntu(64bit)環境を構築しようとしたが、選択画面に32bitしか出てこない。 調べたところどうやら「仮想化支援機能」がオフになっていることが原因のようだ。 仮想化支援機能の有効化はBIOSから行…