イントロダクション
TensorFlowでの機械学習のチュートリアルを多少やりました。下にリンクにあるような感じでやりました。
Javaでの実装は時間がかかるように思ったので、理解する方を優先してPythonでチュートリアル通りに実行しました。
- Tensorflow Keras 〜初めてのKeras〜
- Tensorflow Keras Errors〜”python is not installed as a framework.”〜
- Python Tensorflow 〜初めての人工知能(TensorFlowインストール)〜
- Tensorflow Keras〜初めのトレーニング_1〜
- Tensorflow Keras〜初めのトレーニング_2:前処理〜
- TensorFlow Keras〜テキストの分類〜TensorFlow Keras 実行結果〜テキストの分類〜
- Python TensorFlow tutorial〜チュートリアルを進めるコツ、ワンポイント〜
- TensorFlow Keras〜回帰、準備から予測まで〜
- TensorFlow Java 環境構築〜JavaでもTensorFlow〜
詳細は、わからなかった
チュートリアルでやったことはあくまでフレームワークとしてのTensorFlowの使い方なので、キモになる部分は、つまり、機械学習の中身はわからなかったと言うことです。
実装して、思った事は学習モデルに対する理解が必要だと思いました。
具体的には、以下の様に処理を行い計算結果からどの様な判断をするか?を考えられないと、学習処理などのデータ集め〜決定する処理が実装出来ませんで。
- テストデータを用意
- 学習処理を行う
- テストを行い学習のレベルを調整
- 返却値より判定を行う
じゃあどーするか?
OpenCvの機械学習から理解していこうと思います。OpenCvでは、画像データ(ピクセル値の行列)より前景と背景を分けるなど、データの分布を分割するための線(境界)を算出し、それに対する処理を行います。
これらの処理を行うのに使用しているのが、「畳み込み(Convolution)」です。TensorFlowで使っている畳み込みフィルターと同じ様なモノだと思い、これの理解から始めようという考えです
どこからやるのか?
JavaFxで途中までやっていたのですが、ちょっとバグっぽいのがあったので放置していたもの(GIT)を持ってきて再開しようと思います。
前回までのOpenCv関連のやったこと
- EclipseにSceneBuilderを追加する
- JavaFX SceneBuilder 〜EclipseとSceneBuilder連携~
- Java OpenCv Lv1 〜入門: 写真の表示〜
- Java OpenCV Lv2 〜JavaFXでの画像表示〜
その前にバグ退治をやります。
どこから改修しようかととりあえずは参照元ソースを見た所。。。
実装していない部分を発見、Mainメソッドのクラスにありました。。。どーりで気づかないわけだ。。。Conrollerクラスしか見てなかったもんなぁ。。。
そんなわけでコードを追加してやったらご覧の通り動きした。
次回からは、このチュートリアルの続きをやっていこうと思います。
そして次回は
カラーチャンネルについてやるようです。
下の方法での実装を始めました。
関連ページ一覧
- Java Install Eclipse〜開発ツールのインストール〜
- Java Git clone in Eclipse 〜サンプルの取得〜
- Eclipse Gitリポジトリの取得 〜GitからソースをPullしよう〜
- IntelliJ IDEA Git〜Gitリポジトリからクローン〜
- Java Basic Level 1 〜Hello Java〜
- Java OpenCV 環境セットアップ(on Mac)