人工知能に関する断創録

人工知能、認知科学、心理学、ロボティクス、生物学などに興味を持っています。このブログでは人工知能のさまざまな分野について調査したことをまとめています。最近は、機械学習、Deep Learning、Kerasに関する記事が多いです。



第1回 AI・人工知能 EXPO 基調講演まとめ

6/28から6/30に東京ビッグサイトで開かれた第1回 AI・人工知能EXPO*1に参加して、基調講演を聴いてきたので概要をメモ書き程度にまとめた。個別の展示はちょっと数が多いので省略^^;

今年の目標(2017/1/1)にも書いたけれど、AIをどうビジネスにしていくかという点は関心があるので今後も動向をウォッチしていきたい。MicrosoftとWatsonのAPIはあとで使い込んでみる予定。

全体的な所感

  • カスタマーサービス向けのチャットボットツール(ルールベース)に関する展示が非常に多い
  • コンピュータビジョンに関連したDeep Learning技術も目立ったが既存モデル(YOLO物体検出、人検出など)の活用が中心
  • DL以前の機械学習手法・データマイニング・テキストマイニングの活用事例も多い
  • テキスト・画像・音声データの収集・アノテーションに特化した会社(IR-ALT、REALWORLD)が興味深かった

基調講演

http://www.ai-expo.jp/ja/Previous-Show-Report/seminar-event/

人工知能の将来展望:国家政策・企業動向・研究開発戦略(安西祐一郎、日本学術振興会)

  • 人工知能技術戦略会議(総務省・文科省・経産省合同)R&Dの司令塔・産官学協力の推進役との位置づけ
  • AI産業化ロードマップ(PDF)を作った
  • 日本の主な課題
    • IT関連企業の国際競争力の弱さ(R&D投資が桁違い)
    • AIの人材育成不足
    • 労働生産性の低さ => AIによるサポートへ
    • 人口減少 => AIによる解決
  • AI戦略は米国産業界の戦略の影響を強く受けざるをえない
  • IT企業に限らずにありとあらゆる産業がAIを活用する時代
    • このような状況では「自企業がAIを使って何をやりたいのかを明確化することが非常に重要
    • AI技術をどう役立てたいのか?どういう技術を開発するべきか?
  • これからやらなければならないことはたくさんあるため自分の組織が何をやるのか明確化する
    • 社会の中でAIを使って解決したい目標を見出す
    • 投資拡大
    • 既成分野にこだわらない柔軟性
    • オープン・イノベーション
    • スタートアップ支援
    • 大規模データ収集・開発(なければ自分たちで作る)
    • 人事の流動性・人材育成
    • ハード・インフラ・ネットワークなどの周辺環境の開発支援
    • 機械学習に整合するシステム開発のあり方

人工知能とグランドチャレンジ:RoboCupからNobel Turing Challengeまで(北野宏明、Sony CSL)

  • 過去のAI研究のグランドチャレンジ
    • チェス(1997)
    • 将棋(2014)
    • 囲碁(2016)
    • IBM Jeopardy!
  • RoboCupを提唱
    • 2050年までにロボットチームがサッカーのワールドカップで人間に勝つ!
    • グランドチャレンジは目的よりもその過程での技術創出が目的
    • 最初はおもちゃだと思われていたがすごいスピードで実用化が進んでいる
      • コーネル大学の優勝チーム => ピッキング棚が移動する倉庫のベンチャー => Amazon Roboticsに買収された
      • アルデバラン・ロボティクス => 二足歩行リーグのロボット開発 => Softbank Pepper
      • レスキューリーグ => Rescue Robotics => 福島震災などで負傷者探知ロボ投入
    • RoboCup 2017は名古屋でやるので見に来てください
  • Nobel Turing Challenge
    • 医学・生命科学分野でAIでノーベル賞級の発見を目指す新しいグランドチャレンジ
    • Turingテストとかけていて論文の執筆者が人かAIかわからなければOK
    • 科学的発見を行うAI
      • 実は古くからある Dendral (1969)
    • 背景
      • すでの論文投稿数は多すぎて人が読める量を超えている => AIで読む
      • 人は高次元・非線形・動的・認知バイアスにとても弱い => AIで補う
    • Garuda Platform という創薬に向けたプラットフォームを構築
    • さまざまなデータ、解析手法を組み合わせるAI
  • AIの可能性
    • 人には見えないものを見る
      • AIは人と違って高次元・非線形・動的な情報の検出が得意
      • さらにDLによる特徴量抽出により人による認知バイアスが入らない
      • 高次元データ・クラスタリング・可視化手法・医療データ・異常検知
    • 人が見逃しているクリエイティビティ
      • Sony Paris AI作曲 => AI Makes Pop Music
      • 楽曲空間 ⊃ The Beatlesスタイルの楽曲空間 ⊃ 実際にThe Beatlesが作曲した楽曲(楽曲空間内の1点)
        • このプロジェクトでは「The Beatlesスタイルの楽曲空間」から楽曲サンプルを生成した
      • 仮説空間 ⊃ まだ人が発見していない仮説空間 ⊃ 科学者が発見した仮説
        • 「まだ人が発見していない仮説」を発見するのがNobel Turing Challenge
      • ここはこれからのHotなフロンティアになるはず

最新の人工知能技術とその応用 ~自動車、ロボット、バイオヘルスケア~(岡野原大輔、PFN)

  • 3つの領域に力を入れている
    • 交通システム(トヨタ)
    • 産業用ロボット(ファナック)
    • バイオヘルスケア
    • Cloud x Consumerの領域は米企業の独壇場なのでそれとは逆のDevice x Industrialに注力
    • ただ最近はAmazonがリアル領域に入ってくるなど境が薄れている
  • Deep Learning研究の加速
    • 2012年から大ブレイク
    • ArXivは1日20〜30本の論文(年間で1万近い!)
    • ここまで早く進んだ研究分野はない
    • 表現学習 & Back propagationによるend-to-endの一貫学習が大きな特徴
    • タスクごとにそのタスクの性能を最大化するような特徴量が抽出できる
  • 研究事例
    • 自動運転(トヨタ)
      • 歩行者・車両の検出、セグメンテーション
      • 強化学習によるぶつからない車
    • デバイスの異常検知(ファナック)
      • センサーの異常検知
      • 故障の40日前に異常を検知できる(これまでは直前のみ)
    • 乳がん検査
      • 血液のmicroRNA + Deep Learningで精度が向上
  • これから
    • デバイスからのデータ収集
    • 計算リソースの強化(さくら高火力 + 自前でチップ開発)
    • Chainer
    • Deep Learning、強化学習の進歩は速い
    • 研究開発の実用化とビジネス化が同時進行している
    • 想像していなかったようなアプリケーションが出てくる

MicrosoftのAIビジョンと最新動向 〜「みんなのAI」が実現する世界〜(榊原彰、日本マイクロソフト)

  • あまり知られていないが25年くらいAIやってます
    • Spamフィルタ、経路探索、会話型AI、未来予測など
    • 6000人体制のR&D
  • AIの民主化を目指している
    • Partnership on AIのメンバ
    • リーズナブルなコストで誰でも使いやすいAI技術
    • 人の代替よりも能力拡張
  • 5つの技術領域に注力
    • パーソナルアシスタント(Cortana)
    • チャットボット(Bot Framework)
    • 画像・翻訳・音声認識API
    • 統計的な機械学習
    • 深層学習フレームワーク(CNTK、Chainer)
  • パテント・トロールへの対応
    • AI領域では深刻な問題になるかも
    • 1万件の特許を保持
    • 顧客とともに戦う姿勢
  • 技術紹介
    • エージェント
    • アプリケーション
    • サービス
  • エージェント
    • 声の時代がはじまる
      • Amazon Echo、Google Home、Apple HomePad、LINE Wave
    • マイクロソフトもCortanaで参入
      • 5億のデバイス(主にWindows PC)
      • 1000以上のアプリケーション
      • 130億の質問応答
      • 1億4500万のアクティブ・ユーザ
    • デバイスは作らずにCortanaをベースにアライアンスベースで進める
      • Cortana + Harman Kardon Speaker
      • Cortana + HP
      • Cortana + Skype
      • Cortana + Nissan Connected Car
  • チャットボット
    • りんな(LINEアプリ)
      • 500万ユーザ
      • Deep Learning + Azure Machine Learning
      • しりとりが面白い
      • 画像アップするとファッションチェックしてくれる(精神ダメージ大きいので注意!)
      • 感情によりそう知的ボット
        • IQ 生産性 => Cortana
        • EQ 感情 => りんな
    • MS Bot Framework
      • ボットアプリを容易に作成できるフレームワーク
      • SDKとConnector
      • Connectorを使うとTwitter, Line, Slack, Facebookなどマルチ展開が簡単にできる
    • 応用例
      • FX取引サービス
      • マクドナルドのドライブスルー
  • Cognitive Service
    • 29種類のAPIを提供
    • 画像・音声・言語・検索・知識の5カテゴリ
    • カスタマイズも可能になった
      • うちの犬を認識したい => 画像 + タグで訓練が可能に
    • Deep Learningの研究
      • ImageNetの画像認識コンペで1位を獲得(ResNet)
      • Semantic Segmentationや動画からの文章生成
    • Disability支援
    • 機械翻訳
      • テキスト翻訳は60言語
      • 音声翻訳が可能に(10言語は音声入力対応、18言語はTTS対応)
      • テキストと音声の組み合わせは自由にできる
      • Skypeをはじめコミュニケーションアプリすべてに組み込んでいく
    • Azure ML Studio
      • Deep Learningではなく従来の統計的機械学習
      • GUIで簡単にモデル作成が可能
      • 基本アルゴリズムは組み込み済み
      • R・Pythonで機能拡張可能
      • 学習モデルの基本テンプレートも用意(Cortana Intelligent Gallery
    • PFNと連携
      • AzureでChainerを使えるようにする
      • Deep Learning Labを立ち上げ
      • 認定制度も用意
    • Project Emma

IBM Watsonの現在 〜 実用化への取り組みと最新活用事例のご紹介(宮坂真弓、日本IBM)

  • AI = Augmented Intelligence
    • 人の仕事を奪うのではなく、支援するという位置づけ
    • IBMはCognitive Solutionとクラウドの会社になる
  • 非構造データの爆発
    • デバイスが86億台に達する
    • 非構造データ(言語・画像など)の爆発的増加(2020年には44ゼタバイト)
    • この非構造データを理解し、処理するのがWatson
  • IBM Watson
    • 理解・推論・学習・対話の4機能
    • Watsonの実体はクラウド上のAPI
      • さまざまな業種・分野でソリューションとして活用されている
      • 2018年までに10億人のWatsonユーザが目標
    • 4層アーキテクチャ
      • 1) クラウド 2) データ 3) AI 4) アプリ(ソリューション)
      • IBMが提供するのはクラウド・AI・アプリの部分
    • 基本的にIBMはデータは持たない、顧客との提携・協業
      • 例外として気象データはThe weather companyを買収して確保
      • 今後、広範囲な使途が考えられる
  • Watsonが提供するAPI
    • 言語系(テキスト理解、対話、パーソナリティ分析)
    • 画像系(認識)
    • 音声系(認識・TTS)
    • 分析系(Discovery、大量データの分析、意思決定補助)
  • 活用事例
    • Watson x コールセンター
      • みずほ銀行のコール時間短縮
      • FAQ、マニュアルから回答を提示
      • 音声認識からキーワードを自動抽出して関連するマニュアル検索
      • 開始時には正答率がなかなか上がらなかったがオペレータが教えていくなかで精度が上がっていった
      • 通話時間の短縮、オペレータの育成期間短縮などKPI上でも効果が出ている
    • Watson x 新卒選考
      • ソフトバンク
      • これまでの全エントリーシートの読み込み => 不合格者の絞込
      • 選考時間が679時間から170時間に75%削減
      • 他にも人材マッチングなど応用事例多数
    • Watson x 税務申告サービス
      • 米国は条件によって確定申告が非常に複雑
      • 7400ページの税務知識、2100万件のクライアントデータ
    • Watson x Oncology
      • ガン研究支援
      • 数十の医療DB、2400万のデータ、20万件の論文を読み込んで白血病の遺伝子特定
    • Watson x 映画
    • Watson x 気象
      • IBMはデータは保持しないが気象データは特別
      • The weather companyを買収
      • 気象データは日本ではあまり活用されていないが小売・流通・損保など様々な活用ができる
      • 気象データとソリューション
    • Watson x Company profiler
      • 企業データベースを読み込み
      • M&A、競合リサーチ、スタートアップ検索などに活用
      • Watson Company Profiler
  • 今後の方針
    • 各業界に特価した学習済みWatsonのラインアップを拡大していく
    • 開発者向け認定資格(IBM Watson Application Developer)を用意
    • Watsonの価値は専門家や業界の知識を学習・活用ができる点
    • あらゆる業界で活用を広めていく

*1:AI = 人工知能なのですごい違和感あり^^;

Dogs vs. Cats Redux

今回はPractical Deep Learning for CodersのLesson1の結果をまとめてみた。題材はKaggleの犬・猫分類。

Dogs vs. Cats Redux: Kernels Edition | Kaggle

以前やったVGG16のFine-tuningによる犬猫認識(2017/1/8)と同じタスク。前回は1000画像の小セットだけでFine-tuneしたが、今回は25000画像の全データを使ってFine-tuneしてKaggleに投稿するところまで通しで試した。

Jupyter Notebookはこちら

オリジナルのコードはPython2でKeras1 (Theano backend)でしか動作しない。そこで、今回は

  • Python3 と Keras2 (Tensorflow backend) を使って再実装する
  • 提供されているutils.pyvgg16.pyは使わずにスクラッチからKeras APIだけで書く

でやってみた。最終的にバリデーション精度は98.4%だった。テスト精度は残念ながらわからない。Kaggleではテストセットに正解ラベルが付いてないし、投稿してもLogLossしか表示されないから。

Notebookには全部載せてあるが一部の実行結果だけ載せておこう。上の数字は猫である確率なので0に近いほど犬で1に近いほど猫に分類されたことを意味している。ちゃんと分類できている。

f:id:aidiary:20170603212804p:plain

Kaggleにsubmitしてみた結果がこちら。

f:id:aidiary:20170603211256p:plain

スコア(LogLoss)0.1程度だと460位くらいなので全然ダメ。まあVGG16をそのまま使っただけなのでこんなものか。今後、改良して順位がどう上がるか見ていこうと思う。

Jupyter Notebookの内容をコピペしてブログに貼ろうと思ったんだけ止めた。そのまま見た方がわかりやすいしね。今後はしばらくこのスタイルで行くかも。

Practical Deep Learning for Coders

最近、fast.aiのPractical Deep Learning for CodersというMOOCを受講している。

この講座は

  • 無料
  • 動画形式の講義(1回2時間というボリューム)
  • Jupyter NotebookとKerasを使用
  • CNN、Finetuning、VGG16、ResNet、RNNなどが実践的な例題を通して学べる
  • 実務家がDeep Learningで自分の問題を解決できることが目標

という特徴がある。講義内容は高度で実践的なものが多い印象。例えば、Lesson1でMNISTと思いきや・・・いきなりKaggleのDogs vs. CatsをVGG16 + Finetuningで解いてKaggleに投稿するところまでが課題になっている。これさえできれば画像認識が必要ないろんな課題に同じ技術を適用できるとのこと。

今はまだPart1しかないが、ForumのなかでPart2の動画も公開されており(近日正式公開)、そこではNeural Style Transfer、GAN、Attentionなど高度な話題も実践的に取り上げられている。

講師のJeremy HowardさんはKaggleマスターとのことで、Jupyter Notebookを使ってDeep Learningの課題を解いていく様子が非常に参考になる。Jupyter Notebookでこんなことできんの?というTipsが盛りだくさんなのでそれだけでも受講する価値がありそう。受講者はかなりたくさんいるようでForumに非常に役立つ情報が満載されているのもポイントが高い。

私はようやくLesson1と宿題が終わったところ。キリがよいところでレポートをまとめていこうかなと思ってます。