機械学習

学会発表してきました (@鳥取)

技術研究所の(あ) です。
クレスコのウェブページのニュースのところにも出ていますが、我々は最近、人工知能 (機械学習) を用いた眼の病気の画像診断という課題に取り組んでおり、ここまでの成果に関して先日、学会発表をしてきました。

今回はその内容を簡単にご紹介します。

光干渉断層計 (OCT)

対象としたのは、OCT と呼ばれる検査機器で得られる画像です。Optical Coherency Tomography の頭文字で、光の干渉を使って立体像を得る装置、といったところです。眼科では、これを使って網膜などのある眼底の様子を、断面を切って見ることができます。造影剤などを用いる必要がなく、患者さんにあまり負担を掛けずに詳しい情報が見られるので、たいへん便利で重宝する検査機器なのです。

続きを読む


Caffe のハマりどころ三題

技術研究所の(あ)です。
他の記事もいくつか書きましたが、最近、機械学習をちょこちょこ試してます。その一環で、オープンソースのフレームワークの Caffe での画像分類も試してみました。ウェブ等でいろいろ調べて試行錯誤しつつインストールしたり実行してみたりしたのですが、いくつか凄まじくハマったところがありましたので、それらの点について、同じようなトラブルに出くわした方々のためにここにメモっておきます。

1. インストールでハマったところ

Caffe (version は 1.0.0-rc3 てことでいいのかな?) をインストールしたのは、Ubuntu の載った AWS の GPUインスタンス上に CUDA 7.5 (GPGPU のライブラリ) を入れて、という環境です。

事前に「必要なライブラリ等が多くて、インストールがたいへん」と聞いていましたが、確かにたいへんでした。具体的な手順等は検索するといろいろ出てくるのでここでは端折ります。調べて出てくることに加え、make の途中で既に入れたはずのライブラリが「ない」と言われるので、パスを修正したりシンボリックリンクを張ったり、などの作業はいくつかやりましたが、このへんはまあ、ちょっと Unix に慣れた人ならば普通に対応できる範囲だと思います。

続きを読む


機械学習で自然現象の写真を分類してみる

技術研究所の (あ) です。
前回書いたとおり、ちょいと機械学習を用いた画像分類を試してみる機会がありました。
そうすると、せっかくなので自分の手持ちの写真で試してみたくなります。
手持ちの写真で、判りやすく分類できて、そこそこ数があって、すぐに用意できるものというと…僕の場合こんなのになります。

arcs_rainbows1

虹と環天頂アークと、環水平アーク、後者二つは聞いたことがない人も多いかもしれませんが、太陽の周りにできる暈の仲間です。似てるような似てないような、これらの自然現象の写真の自動分類をやってみます。

続きを読む


人工知能学会全国大会(第30回)に参加してきました

こんにちは、技術研究所のウエサマです。
人工知能分野における日本の先進的な取り組みや、研究成果を知るため人工知能学会の全国大会(第30回)に参加してきましたので、いくつか紹介したいと思います。
尚、今回の会場は北九州の小倉。
小倉は「焼うどん」、「アーケード商店街」発症の地だそうです。そして世界遺産 官営八幡製鐵所旧本事務所がありますね。
あと初日から気になっていた、駅前にあるシロヤベーカリー。ここのサニーパン、アノン、オムレットはとっても美味しかったです^^

続きを読む


適当にサンプルを選ぶ

技術研究所の(あ)です。
ここ数年の流行りの機械学習ですが、僕もちょっと機械学習を用いた画像分類を試してみる機会がありました。
識別したい対象 (例えば猫) が写っている画像(正例)と、写っていない画像(負例)を用意し、機械学習アルゴリズムで学習させると、「その対象 (猫) が写っているか?」という確信度を返す分類器ができあがります。

試したシステムの説明では「正例と負例は同じくらいの数で学習させるとよい」と書いてありました。

手持ちの写真がたくさん (例えば1万枚) あって、その中に猫の写真が100枚 (集合C としましょう) あったとしたら、猫の写ってない写真を残りの 9900枚 (not-C としましょう) から 100枚選んでやる必要があります。どうせならなるべく偏りがないよう、ランダムにせねばなりません。
C と、not-C から選んだ100枚から、それぞれ同じ割合でランダムに学習用データとテスト用データに切り分ける必要もあります。どうやって選ぶのがスマートかなー、調べれば出てくるよなー、と思ったのですが、その前にちょっと自力で考えてみました。

続きを読む


Azure Machine Learningでナンバーズ予測(後編)

こんにちは、技術研究所のウエサマです。
このエントリーは”Azure Machine Learningでナンバーズ予測”の後編となります。
前編はこちら⇒Azure Machine Learningでナンバーズ予測(前編)

チュートリアル部分の記事が長くなるため、先に”まとめ”と”予想実績”について記載します。
試してみたい方は、後半のチュートリアルをご覧ください。

続きを読む


Azure Machine Learningでナンバーズ予測(前編)

こんにちは、技術研究所のウエサマです。
今回、Microsoft Azure Machine Learning(以下、Azure ML)を試してみたので、それを前後編の記事にしたいと思います。
前編は全体の概要について記載し、後編はチュートリアルとなります。

続きを読む


Raspberry Pi で Watson 日本語質問応答システムを作ってみた

こんにちは、技術研究所のウエサマです。

本ブログにて取り上げた、自然言語分類器 IBM Watson  Natural Language Classifier(以下、NLC)に記載した内容を活用し、日本語のしゃべれる質問応答システムとしてRaspberry pi(以下、ラズパイ)上に構築してみましたので、その様子を構成や仕組みについて記載します。
尚、質問応答システムと書いてますが、単に分類器をうまいこと使い、質問応答風に見えるよう開発したものです。

参考:

続きを読む


自然言語分類器 IBM Watson Natural Language Classifier(後編)

こんにちは、技術研究所のウエサマです。

このエントリーは、”自然言語分類器 IBM Watson Natural Language Classifier”の後編となります。
前編はこちら⇒自然言語分類器 IBM Watson Natural Language Classifier(前編)

前回の記事ではIBM Watson Natural Language Classifier(以下 NLC)の概要、生成のステップ、トレーニングデータの準備まで記述しました。今回はその続きとして準備したトレーニングデータをもとに分類器を生成してみます。ただし、単に分類をするのではなく分類したクラス名が答えとなるようトレーニングし日本語によるなんちゃって質問応答システムを作ってみます。

大まかな手順としては、BluemixのダッシュボードからNLCサービスを作成し、このサービスに対してトレーニングデータをアップロードすることで分類器を生成します。その後、分類器に対して質問を行いクラスの取得を行ってみます。

続きを読む


自然言語分類器 IBM Watson Natural Language Classifier(前編)

こんにちは、技術研究所のウエサマです。

技術研究所では、研究テーマのひとつとして機械学習をどのように事業へ適用していくか調査を行っており、各種の機械学習について主に使う側の視点で調査を行っております。
こうしたなか本年7月クレスコはWatsonを活用しpepperをはじめとするロボット、モバイル、パソコンに対応する様々なWatsonアプリケーション開発を行うことを、ソフトバンクと共にプレスリリースを行いました。

このエントリーでは記事を前後編に分け、機械学習を採用したIBM Watson APIのひとつであるNatural Language Classifierを取り上げます。公式サイトでは日本語はサポート外(執筆時点)となっておりますが、設定をちょこっと変更し日本語を扱ってみます。

前編では分類器の概要とトレーニングデータの準備までを記述します。後編では実際に分類器を作成し日本語でのクラス分けを試してみます。ただし、本来の単純なクラス分けだとつまらないため、なんとなく質問応答になるような使い方で遊んでみたいと思います。

続きを読む