Machine Learning Casual Talks #9 に参加してきた


Machine Learning Casual Talks に ブログ枠で参加してきました。

当日の発表内容をまとめます。なお、発表資料などは随時更新します。

Talk

Data Engineering at SmartNews

  • Role
    • Data Analysis や ML には Data Engineering の下支えが必要
    • 体制
      • Data scientist 5名
      • ML engineer 12名
      • Data engineer 2名
  • Infrastructure
  • AWS based
    • Data Store: S3
    • Workflow management: Airflow
    • Batch processing: Hive, Spark
    • Interactive Query: Presto
    • Stream processing: Kinesis + Spark Streaming
    • GUI for SQL: shib, superset
    • BI Dashboard: Chartio
    • Analytics Tool: Jupyter hub
  • For Data analysis
    • Presto
      • Hive metastore に乗っているデータを Presto でクエリする
    • Airflow
      • ETL の実行管理、依存性管理
      • Version の更新が頻繁にある
        • DAG の検証環境が必要
    • DataOps
  • For ML
    • ML in product
      • カテゴライズ
      • recommendation
      • push のパーソナライズ
      • 広告配信の最適化
      • LTV の予測と打ち手
    • Pipeline
      • Apache airflow でエンドユーザーのための機械学習パイプラインを構築する
    • AWS sagemaker
      • Jupyter で train/eval/deploy が Python API を叩くだけなので組み込みやすい
      • Train Deploy .. Inference まで Sagemaker がよしなにやってくれる
      • 課題: model 作りっぱなし問題
        • 継続的に開発していって 時間の流れとともに経過が見えなくなっていく
      • 対策: Sagemaker Airflow Presto による Workflow
        • data updata train eval deploy を継続的にしたい

発表資料

LegalForceにおける契約書言語処理システムの開発について

  • 主な機能
    • 検索書検査
      • チェックポイントを抽出して、修正例を提案してくれる
    • 条文検索機能
      • 過去の文書のなかから検索できる
  • 体制
    • サービス開発 と研究開発に分かれる
    • 研究開発は API をサーブする
    • サービス開発は App をつくる
  • 研究開発の役割
    • API と Demoの開発
    • Infra(Elasticsearch など) も
  • 契約書言語処理の特徴
    • Good
      • ある程度パターンある
      • 主語が必ずある
    • Bad
      • 論文ない
      • データ公開されてない
      • 文書が特殊な構造
  • チャットボットに近い
    • 入力がテキスト、出力もテキスト
    • 構造にマルチラベルをつける
    • 機械学習とヒューリスティクを活用
  • 非エンジニア向けツール
    • アノテーション
    • DSL
  • AI 開発の心得
    • ML を使わなくてもよい方法をまず考える
      • 時間がかかる
    • 仮説検証までやりきるのが研究開発
    • Web API も責任持ってつくる
  • 事例紹介
    • やりたいこと: 条に分割したい
    • 結構パターンがあって ロジックがスパゲッティ化
    • 処理を3分割
      • 行分割
      • 行ラベルつけ
        • 正規表現
      • まとめる
        • オートマトンを使ってロジックをシンプル化
    • 機械学習を使わなくてもやりたいことは実現できる

LT

Pytorch強化学習フレームワークHorizonのドキュメントを読む

  • Chainer と Keras にも RL がある
    • Pytorch にもきた
  • README
    • モデリングとトレーニングには Pytorch
    • serving には caffe2
    • ワークフローが含まれている: 前処理など
  • Abstruct
    • プロダクションユースケースを念頭に置いている
  • Introduction
    • 大規模データセットに対する処理が重要となる
  • Data processing
    • ログデータを変換する Spark Pipeline がある
  • Future normalization
    • 特徴量の正規化が重要
    • 正規化パラメータを決定するワークフローを備えている
  • Trainning
    • GPU サポートあり/ マルチGPUはまだ
  • Case study
    • Facebook
      • CTR の予想に supervised learning だったが、 Discreate-Action DQN モデルにした

発表資料

Graphの推薦システムへの応用

  • Graph conv net のアルゴリズム紹介
  • なんで?
    • データがすくない
    • すくないからグラフ構造がメモリに載るかも
  • GCMC
    • (内容にキャッチアップできませんでした..)

発表資料

Webサービスにおけるデータサイクルのデザイン

  • 悩み
    • ユーザーにとって良いものと研究にとって良いものが異なる
    • インパクトと品質のトレードオフ
    • 外注的に取り組むとコントロールできる幅が狭くなる
  • 取り組み: キャッチコピーの自動生成
    • 文字数などの制約が多い
    • テンプレの手法は厳しい
    • ユーザーの口コミからキャッチコピーを切り出す
      • 流暢性とキャッチコピーらしさで評価
      • ロジスティック回帰だけで作れる
  • プロダクトとユーザーの共生関係が作れるといい

発表資料