Webエンジニアがde:code2019で機械学習を学ぶ
遅くなりましたが、普通のWebエンジニアがAI関連技術を学ぶために参加してきたde:code2019のメモです。
Day 1
AI82 開発者のための機械学習入門:Azure Machine Learning Studio で構造化データから予測分析
Azure Machine Learning Studioデモがメインでした。学習モデルの構築の一連の流れがGUIで直感的に組めて、簡単にできそう!と思わせてくれるセッションでした。
AI01 "Everyday AI" 時代の人工知能使いこなし ~ Azure Cognitive Services を効果的に利用するための基礎知識
Azure Cognitive Servicesの紹介。印象に残ったのは簡単な音声・文字・画像認識は非エンジニアでも利用できる環境が整ってきたことです。学習モデルを構築するレイヤーはこれからもサービス化が進みそうで、より企画(機械学習でどんな課題を解きたいのか)が重要になりそうと感じました。日本語にも積極的に対応している点がよかったです。
フォームを認識してデータを抽出するForm Recognizerには未来を感じました。
AI06 OCR 案件で Azure Computer Vision と他社サービス含めて徹底検証してみた
部品の設計図をタグで分類するためにOCRを使った話。Azureは英語+日本語混在しているのを認識できないdisっていたいのが印象的で、今後の改善に期待です。Google Cloud Vision APIも日本語の精度がいまいちだったとのこと。このケースでは比較の結果、設計図特有のフォントを追加学習させることができるTesseractを使って自前で実装したということでした。サービスの中身を理解し自社の課題解決にあった方法を選ぶべきというのを再認識するセッションでした。
Day 2
CD43 170 万の事業者を支える弥生のクラウドサービスの開発と運用
弥生のクラウドサービスについての概要。会計データの勘定科目の推測にベイズ推定が使われているとのことでした。想像していたよりもずっとシンプルな仕組みで、どの程度精度がでているのかが気になりました。機械学習の導入の際に専門の大学教授に協力をしてもらったという話も実導入の話として参考になりました。
AI04 あなたがコルタナさんに「ラーメン」と尋ねたとき、それはコルタナさんに何を求めていますか?
ラーメンと聞くときの背景を統計的に意図を判断するようなデータ設計と機械学習の話でした。NLPといえば形態素解析ぐらいの知識がなかったので
intentの抽出方法やintentテーブルの話は自分にとっては少し高度でしたが、テキスト処理のイメージがより具体的になったいいセッションでした。
Bing、CosmosDB、Databricks、Machine Learning ServiceとAzureのサービスがかなり使われているのも参考になりました。
AI08 機械学習のためのデータ加工 ~ 特徴量の見つけ方と作り方
教師データの作り方に関するセッション。例えばユーザ評価のアンケート結果がないデータソースに対しても、利用回数やリピート回数を評価データの代わりとして教師データとする方法だったり、時系列データを束ねて特徴量として扱う方法だったりは実例と参考になりそうでした。
また、データ準備のポイントとしてどの粒度で何が予測できればビジネス課題解決に繋がるかを検討しましょうということや、説明変数は5W2Hやモデルを活用するタイミングをイメージして洗い出しましょうという聞けば普通のことなのですが、改めて基本が大事と感じました。
AI03 Azure Machine Learning service Deep Dive ~自動機械学習から MLOps まで~
Azure Machine Learning serviceの紹介。WebアプリのCI/CDみたいに機械学習モデルを継続的な運用に載せるのをMLOpsと呼んでいて、Azure Machine Learningでそれができるという話でした。必要なツールはほぼ揃っていそうで、MLOpsに乗せられせなプロジェクトなら使えそうな印象を持ちました。
まとめ
この領域におけるMicrosoftの力の入れ具合がかなり強いことがわかり、かつかなり簡単に使えるサービスやツールがそろってきていて自分にも何かできそう!と思えたことが一番の収穫でした。日本語の対応が進んでいることもMicrosoftの強みですね。