ラベル 機械学習 の投稿を表示しています。 すべての投稿を表示
ラベル 機械学習 の投稿を表示しています。 すべての投稿を表示

2018年10月11日木曜日

fast.aiのDeep Learning 2018に英日同時表示の字幕を付けてみた

※2018/10/22 追記
現在Youtubeで講義の動画を見ると、

  • Lesson1は日本語の字幕があるので、そちらのほうが良い
  • Lesson2以降は外国語の字幕がついているので、それを自動翻訳すれば同等以上(現状はロシア語=>日本語がベター)

のようである。ここで作成した翻訳より上記のほうを利用したほうが良さげである。悪しからず。

fast.aiのDeep Learingは講義を見た方々の評判がすこぶる良いのだが、この字幕を作成した5月頃にはまだ日本語の情報が少なく、活用している人は比較的少数だったのではないだろうか?現状は日本語の情報も少し増えてきていたり、講義ノートをmediumなどに公開している人も増え、以前よりはハードルが下がっているようだが、それでも英語が苦手な人には手を出しにくいだろう。

評判が良いにも関わらず情報が少ないのはGPU環境を用意しなければならないことも一因であろうが、日本語字幕がないことも大きいと思う。以前私も受講したCourseraのMachine Learningの日本語情報が豊富にある理由が日本語字幕の存在にあることは容易に想像がつく。かくいう私もCourseraのMashine Learningは字幕に頼って受講していた。まあ、実際に抜けている字幕を作成してみたところ、字幕がないパートもそこそこ理解できていたのではあるが。。。

しかしながらfast.aiは文字通りFastで実装を学習するならば最良だろうと思い字幕を作成することを考えたが、Courseraの翻訳にかかった時間を考えるととてもやってられない。そこでYouTubeが出力する音声認識された英文をGoogle翻訳で日本語に訳し、それを同時表示させてみてはどうだろう?と考えた。

日英同時字幕

画像はVLC Media Player(Windows)のもの。翻訳の質はご想像の通り完全には程遠く、肝心なところがサッパリだったりもする。でも及第点のところもあり、英語がサッパリな人には「ないよりマシ」ではあろうかと。かくいう私はLesson1はコードの実行も含め受講済み、Lesson4までを「流し見」したが、やはりこの字幕がないよりはあったほうが視聴しやすい。心理的負担が軽減されているのかな?
字幕が邪魔になるケースが少なからずあるので、字幕が扱いやすい(表示非表示が簡単に切り替えられるなど)メディアプレイヤーがあれば、それで視聴することをオススメ

というわけで、英語のみのコンテンツということで躊躇している方、一度お試しあれ。

fast.ai Deep Learining 2018 字幕ファイル
https://www.dropbox.com/s/yhnwcvxnyrs54uf/fastai_DeepLearning_Part1_vtt.7z?dl=0

2018年4月30日月曜日

AzureのCustom Vision Serviceを試したら想像以上だった

2月にJapan IT Week 関西へ赴き、主にAI関連のセミナーを受講してきたのだが、Microsoftの「AIの民主化」において、AzureのCustom Vision Serviceのデモンストレーションがそこそこの衝撃だった。セミナーではWebから適当に拾ってきたアリの画像と、とある特徴のあるアリ、それぞれ50、30枚の画像を用意し、ブラウザで登録して簡単な設定をした上で訓練開始。あっという間に必要十分と思える精度で特徴のあるアリを判別してみせた。設定は対象の写真の特徴をチェックボックスで選択するだけ。
そこそこの精度とはいえ、汎用の簡単な設定と100枚に満たない画僧だけで判別できてしまうとは。。。少なくとも百枚単位の画像データを用意し、設定値を試行錯誤するものだと勝手に思い込んでいた私には驚くべき結果だった。なので、さっそく帰るなり、手元の画像を使って試してみることに。
試してみたのは、私の住む地域で古くから伝わるジャガイモの種の識別。もともとディープラーニングの勉強の題材に使おうと種の写真をストックしておいたものがあったので、それとWeb上にあるジャガイモの画像を拝借して使用。Custom Vision Serviceの使い方などは他に譲り、試用した様子をば。


これが訓練イメージを登録したところ。左上の「honjaga」が地域の種、「potate」がWebから拝借した画像で、それぞれ58、25枚である。設定は何を選択していいのかわからなかったので汎用的に使えそうなデフォルト値(Generalだったか?)を選ぶ。じゃがいもなんて見た目にはこれといった特徴がないので、どの程度の結果が出るのか半信半疑で実行する。


適合率、再現率とも高い値。
早速、学習したモデルを使って判定を実施。まずは地元のじゃがいも。


どれも「potate」が0%。明確に判定できている。
続いて拝借したさまざまなじゃがいもの判定。


「potate」である確率が低いものがあるものの、「honjaga」の確率は全て0%。これも明確に判定できている、と言っていいだろう。
おまけ。撮影ミスで、被写体を置く手を撮影してしまったもの。指の間から辛うじてジャガイモが見えているところ。


なんと、これも「potate」の確率は0%。まあ、じゃがいも以外の特徴(背景色とか)から判別してるのだろうと思うが。。。
今回のお試しでは、地元のじゃがいもの画像が全体的に暗く土が残っているのに対し、拝借した画像の多くはきれいに洗浄されたじゃがいもで明るい画像が多かった。アルゴリズムが画像のどの特徴を捉えて判定しているかはブラックボックスだし、この結果を持って種の判定が容易に可能になったとは判断できない。しかし、当初想像していたよりもはるかに低コストで判定は可能であろう、という手ごたえが掴めたことは大きなモチベーションとなった。
ディープラーニングが「知らない人だけが損をする」時代になるのも目の前である。

2018年4月25日水曜日

「きゅうりの仕分け」記事への違和感

元組み込みエンジニアの農家が挑む「きゅうり選別AI」 試作機3台、2年間の軌跡
http://www.itmedia.co.jp/enterprise/articles/1803/12/news035.html

2年ほど前に話題となった「きゅうりの仕分け」。一日4千本のきゅうりを仕分ける作業の省力化に、と取り組まれたもので、これを機にディープラーニングに注目した地方の人もいるのではないだろうか。AIがビッグビジネスだけでなく、私たちの日常生活に入り込んくるものであることを知るきっかけともなる、とても興味深い取り組みだ。今回、ITMediaにその軌跡を辿る記事が紹介されたので読んでみた。

個人的に印象的だったのは、コンベヤによる自動仕分けによって収穫物を傷つける、というところだ。AIとは直接関連しないところだが、AIがどんなに素晴らしい判定をしたとしても、人力に代わる部分の省力化が難しいということだ。実は、自分の地域でAIを活用するアイデアや、地元の業者さんに使ってもらえそうな企画もいくつかあるのだが、実現が難しいのはハードウェアの作り込みだ。過酷な自然環境に耐えるようなハードが趣味の電子工作と日曜大工レベルの人間に簡単に作れるようになるとは到底思えない。そういったノウハウを持った業者さんに発注すれば、大きなコストがかかることは想像に難くない。紹介記事はそのことを具体的に示唆するものであり、大いに参考になった。

で、肝心の「違和感」である。記事の中では精度について述べられているのだが、印象として「精度が良くない」という内容になっていると受け取った。で、実際の数字云々はともかくとして、何に違和感があるのか?それは精度について、人間が仕分けた場合との比較が示されていないことだ。人間がどの程度の精度で仕分けができているのかがわからないと、AIの仕分け精度の良し悪しは判定できないはずだ。理想的な判定は、まずパーフェクトに仕分けられた画像が存在し、それを機械学習にかけて判定を行うことだ。そして、それが人間が仕分けた場合の精度とどちらが高いのか、これが精度の良し悪しの判定となるはずだ。しかし、記事の中では、人間の仕分け精度については全く触れられていない。そこで、「中の人」のブログがあったので、これに関する記事を探してみる。すると、「今回の場合は、各分類クラス間が離れていないため、人間がやっても“2LとL”や“LとBL”の判別は難しい(けっこう適当)だったりします。」という記述を発見。うーん、これはやはり仕分けの「正解」に問題があるのではなかろうか?

もし厳格なルールがなく、人間が一度仕分けしたものを「正解」としているのであれば、それはその「正解」の精度を疑うべきである。どんなに優れた熟練者であろうとも人間であればバイアスから逃れることは困難だし、間違いも起こす。しかも、「けっこう適当」と言っているのであればなおさらだ。やっている本人は百も承知でやっていることと思うが、記者はきっとこういったことが分からないで書いているのだろう。前回書いた記事は、実は今回の記事の伏線だったりするのだが、AIは人間のバイアスをそのまま取り込むのである。これは非常に難しい課題なのだろう。

では、このようなケースではどうやって訓練画像をカテゴライズすべきなのだろうか?そういった研究もされているのだろうか?人間が経験と勘で仕分けたものを正解とするより、AIに学習させたものを正解にするほうが最終的な精度は高くなるのではないか?などと思ったりもするのだが、実際はどなのか。そんなこともディープラーニングを勉強する中で実験できれたら、などと思うのである、今だけは。

2018年2月26日月曜日

Cousera Machine Learningの日本語字幕の不足分

機械学習入門の定番と言って過言ではないだろう、スタンフォード大学発のMook、CourseraのMachine Learning。非常に丁寧な解説であるとともに、日本語字幕もあるということで、日本のWeb上ではかなりの評判。最近ではDeep Learningを中心とする、日本語の機械学習コンテンツも増えてきているが、認定書が不要であれば無料で受講できることもあってか未だに人気のようだ。かくいう私も受講し、非常に有意義なものだという印象を受けている。

しかし、字幕がズレて利用困難になっていたり、字幕が飛んでしまっている講義があって難儀することも確か。特にWeek6は3本の講義が字幕を使えない状態で、私も難儀した。で、最近復習がてら講義ビデオを見直したので、その時に足りない字幕を作成してみた。作業自体はかなり機械的だったにもかかわらず、かなり苦労した。せっかくなので公開して、必要な方に利用してもらおうか、と。

作製した字幕は以下の通り。

  • Week1
    • Gradient Descent For Linear Regression
  • Week2
    • Gradient Descent in Practice II Learning Rate
  • Week3
    • Classification
    • Simplified Cost Function and Gradient Descent
  • Week6
    • Model Selection and Train/Validation/Test Sets
    • Diagnosing Bias vs. Variance
    • Regularization and Bias/Variance

字幕のズレを修正し、不足分は英文字幕のGoogle翻訳で補いつつ文言を合わせ、どうしても理解できない箇所だけ意訳をした。正直なところ意訳したところはイマイチだし、文言合わせもいいかげんだ。それをご了承の上、利用していただきたい。元にした字幕のライセンスについては調べていないので、問題があるようなら指摘して欲しい。

※字幕ダウンロード(7zipファイル)
https://www.dropbox.com/s/em1f7mst16zsomq/Coursera_Machine_Learning_vtt.7z?dl=0

※2018/3/19 追記
Week3の2つのファイルが入っておらず、別のファイルを入れてしまっていた。差し替え済み。

最近の投稿

セミリタイヤ

九州へ一人旅をしてきた。 過去にも自分で節目を感じるようなときに一人で遠出し、自分自身を振り返る機会を作ったことがある。今回もそういった意味もあり、過去に行きながらも時間が足りなかった熊本(阿蘇)と長崎へ。 阿蘇の風景 カルデラそのものの阿蘇の景観は他では見るこ...

人気の投稿