人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Android環境でTensorflowの学習モデルを
学習して保存するソースコードを教えてください。

・Androidの環境 で、
・学習する
と言う事が必須です。




不可能ではないのかとの情報もあるのですが、
その場合、
完全に出来ないという根拠を示して欲しいです。

●質問者: tak
●カテゴリ:コンピュータ インターネット
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● ITI
●200ポイント ベストアンサー

こんにちは。
Android 環境で TensorFlow を利用する、という場合は、公式の情報によりますと、TensorFlow Mobile を利用する、という方法になるようです。

Android プラットフォームの場合は、Android Studio でプロジェクトを作成して、そのプロジェクトの build.gradle ファイルに

dependencies {
compile 'org.tensorflow:tensorflow-android:+'
}

などと記載することで、TensorFlow Mobile の機能が呼び出せるようになるようです。(参考)

ただ、これら公式の情報を見ても、想定する利用方法としては、すでに学習済みのモデルを Android アプリに組み込んで、その結果だけを利用する、というものばかりのようで、Android スマートフォン上で「学習」自体を行う、という情報はまだ見つけられていません。

なお、弊社ブログで以前紹介していました、別の DeepBeliefSDK というライブラリでは、例えば、iOS アプリで、画像認識について(簡易的に?)学習させる、ということができていましたので、TensorFlow も、同様な機能は持っている可能性もあります。

しかしもし、Android スマートフォン上で「学習」の機能が使える、としましても、この「学習」にかかる部分は、通常は、多大なマシンスペックを必要とするものだと思われます。
したがいまして、スペックに余裕のある PC で学習自体は事前に行っておき、その学習済みモデルのみを、Androidアプリのプロジェクトに組み込み、TensorFlowのライブラリとともに利用する、という方法が、(現時点では)いちばん現実的なのではないかと思われます。

なお、PC 上での、TensorFlow を用いた「学習」処理の具体的な手順については、公式サイトをご覧いただくか、関連の書籍をご参照いただくのがよいと思われます。

ご質問いただいた内容の回答になっていますでしょうか。
ご確認よろしくお願い申し上げます。


takさんのコメント
であれば 出来ない、と言う事を 明確に示した情報が欲しいのですが...

ITIさんのコメント
Android アプリから TensorFlow の「学習」機能を利用しようとする場合は、TensorFlow の Java 版の API を利用することになると思います。 しかし、公式の Java 版 API のリスト( https://www.tensorflow.org/api_docs/java/reference/org/tensorflow/package-summary )を見ますと、 TensorFlow の Python 版 API にあるような、「学習」用の API が用意されているようには見えません。 また、この Java 版 API の公式サンプルプロジェクトの README.md( https://github.com/tensorflow/models/tree/master/samples/languages/java ) にも、 The TensorFlow Java API does not have feature parity with the Python API. The Java API is most suitable for inference using pre-trained models and for training pre-defined models from a single Java process. とあり、基本的には、事前に学習済みのモデルを使う、というのを想定しているようです。 以上のことから、TensorFlow を用いての、Android 端末上での「学習」を行う、ということは、基本的にはできない、と考えておくのが、現実的か、と考えています。 (仮になんらかの方法でできる、としましても、前述のとおり、マシンスペックの制約の問題から、効率の良い方法とはならないのではないか、と想定しています。) ただ、こちらで動作を確認した、というわけではありませんので、より正確な情報がご必要となります場合は、TensorFlow の公式の Community ページ( https://www.tensorflow.org/community/ )などにお問い合わせいただくのが早いのではないか、と考えております。 以上、ご確認どうぞよろしくお願いいたします。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ