エンジニアの技術的独り言

技術的な独り言を書いています。独り言なのでどうでもいいことです。でも他の人の参考になればとっても嬉しいです。

de:code 2016 Day2のメモ

 これから始める Xamarin ~環境構築から iOS/Android/UWP アプリのビルドまで~

朝一のセッションなのに立ち見でした。

完全に「ちょまどさん」を見に来た人でいっぱいの雰囲気。

XamarinとNativeの違いを分かりやすく解説してくれた。

SlackもXamarinで作られてるらしい。

日本酒を学んで、自分好みのお酒と出会える日本酒アプリSakenomy

も紹介されていた。

早くベースクラスライブラリを共通化して欲しいですね。

(今は.NET Frameworkと.NetCoreとWindowsだったかが別になっている)

 
Programmable Video ~Azure Media Services でのビデオ サービス開発~

AzureMediaServicesExplorerToolというオープンソースツールで色々な機能が確認できるらしい。

Assetを作る=暗号化してAzureにアップロード

基本的にマルチデバイス対応してくれる。

LiveStreamingにも対応している。

Azure Media Analyticsには機械学習が仕込んであるので動画の検索が可能になる。

  • Indexer 話しているものからテキストを生成
  • Face Detection 人の顔の取得
  • Emotion Detection 感情の推測
  • Video Summarization ビデオのサマリを作成

プレビュー版ではOCRも付いている。

 
りんなを徹底解剖。"Rinna Conversation Services" を支える自然言語処理アルゴリズム

4月にSharpインターンしたりんな。

1日で5年分のSharpのツイート数を超えたらしい。

使われている技術

・Learning to Rank
 検索エンジンのランキングのような仕組み
・Word to Vector
 200次元で単語の近さを表現
・Term frequency Inverse Document Frequenxy
 単語の出現頻度や逆出現頻度 情報検索や文章要約に利用される
ニューラルネットワーク
 自然言語の学習に応用

 りんなのパフォーマンスを出すのに結構なインスタンス数は使ってるらしい。

DSSM(2つの文字列の類似度を学習するモデル)とRNN(再帰ニューラルネットワーク)の組み合わせ。

類似度の差を最大にすることで感動を与えるという考え方。

単純に言葉を分解してベクトル化しているだけではない。

→左から右への言葉の流れによって重み付けしている(右から左も同様にやっているらしい→日本語は動詞に重みがあるから)

辞書があるわけではなく、りんなはちゃんと単語から文章を作成しているというところが結構な衝撃だった。

あとは、ビジネスへの活用のテストとして、Rinna Conversation Serviceが限定公開されていた。

www.itmedia.co.jp

 
Azure Search Deep Dive ~検索エクスペリエンス向上のためのノウハウ徹底解説~

全文検索でやられる転置インデックスの仕組み。

サジェスト機能も簡単につけられる。

文字フィルタ→トークナイザ→トークンフィルタという3レイヤ構造。

基盤はLuceneCoreが使われている。

自動的に関連性をもとにソートされる。

ただし、orderbyを指定すると関連性は考慮されない。

 

まとめ

  • りんなすごい
  • Cognitive ServiceのAPIがいろいろすごいので使ってみたい
  • Media Serviceがいたれりつくせりで動画配信基盤を簡単に作れそう