LINE DEVELOPER DAY 2019に参加したので感想など。 #linedevday #linedevday_report

投稿者: | 2019年11月28日

イベント概要

・日程:2019年11月20日(水)・21日(木)
・会場:グランドニッコー東京
当日のセッション資料一覧はこちら。

全体について

DAY-1は技術寄り、DAY-2は製品寄りの構成。特にDAY-1は、研究部門の方によるガチな学会風セッションも多くて、凄く刺激になった。強く印象に残ったのは「OSSを活用しつつ、必要な技術は自社で開発する」という姿勢。AI(音声/文字認識)やブロックチェーンといった基礎技術から、プライベートクラウドによるインフラ基盤まで、幅広い分野で社内に技術者を抱えて自前で用意しているところに、迫力を感じた。

参加したセッションと感想

DAY-1

10:40 – keynote

“LIFE with LINE” をスローガンに、アジア地域で様々なサービス開発をリリースしているLINE。冒頭ではこの一年で一番のトピックとなった「LINE Pay」、最新のトピックから「LINE Mini App」について紹介。LINE Mini AppとはLINEアプリ内でサードパーティのWebアプリを動作することができる仕組み(WeChat Payにも同様機能あり)。
続いて「AI」「Data Platform」「Security & Privacy」についてそれぞれ責任者から説明。LINEのAI事業はLINE Brainという子会社からサービス販売を進めており、この日はOCR APIのお試し利用権が参加した開発者に配布された。データプラットフォーム面では課題解決のイニシアチブのためにOSSによる自社プライベートクラウド(Verda)を構築していることが紹介された。最後にセキュリティ重視の取り組みとしてLINEアカウントの乗っ取り対策へのAI適用や、アプリのFIDO2(生体情報によるアプリ認証)対応が紹介された。

12:00 – プライベート Kubernetes クラスタにおける gRPC サービス開発

登壇者はLive Commerce Serviceという、LINE LIVE上でECを行う仕組みの開発に従事している。有名人による配信などでトラフィックが急激にスパイクするといったサービス特性のため、Kubernetes, gPRC, SpringBoot, Envoyといった技術を使いマイクロサービスを開発しているとのこと。
Envoyをクラスタ内ロードバランサとしてだけでなく、gRPC-WEB<->gRPC間のプロトコル変換やJSONエンコードにも活用している一方、Istioはレイテンシ悪化というLIVEサービスには致命的な欠点のために使わないなど、技術の取捨選択と活用がすごく考えられているなぁ~と感じた。

13:40 – DUET:電話応対AIを作る方法

AI電話応対サービス「LINE AiCall」として、まさにDAY-1当日からレストラン予約の実証実験が始まった技術がDUET project。レストラン予約はWeb予約が普及した現在でも65%が電話での予約とのことで、ここに商機を見出している。
会話モデルについて、スマートスピーカーが交互に会話するモデルなのに対して電話は一度に複数発話されてしまうモデルであること、ChatBotと異なり過去の会話内容が見通せない(音声だから)ということで、既存技術の会話モデルとは全く異なるとのこと。具体的な特徴としては、「ウェイクワードがない」「AI側が先に会話を始める「会話終了時のお決まりのフレーズがある」「双方の会話がオーバーラップしたり、逆に無音が続いたりする」といったことがあり、これらを踏まえたフレームワークを開発したとのこと。音声予約のレストラン、試してみたいけどちょっとお高そうなんですよねー。こういう店に会社のお金で見学に行きたい(ひどい)。

14:30 – LINT (LINE Improvement for Next Ten years)

“Next Ten Years”とあるので未来の話かと思いきや、LINEアプリの技術的負債の返済について。
2011年にスマホ用メッセンジャーとして始まったアプリは、今や送金・Pay・ポイント・保険・証券・仮想通貨といった金融サービス、様々なECサービスのプラットフォームへと成長。それに伴い、複数サービス間にまたがる障害(Issue)が消えないといった課題が発生し、その解決のためにタスクフォースが組まれたとのこと。独自プロトコルの解消、ユーザの利用頻度によるデータフェッチ方法の切替、ステータス反映の精度向上など、過去の仕組みに縛られつつも地道に解決策を見つけて実装していった。これ、書くのは簡単だけど、やるのは大変だよなーと感じた。すごい

15:30 – Kubernetesの利用・普及、その先は何か?

Yahoo!Japanの100%子会社でインフラ開発とR&Dをやっているゼットラボの河さんによるセッション。
本番環境でのコンテナ利用は世界で73%なのに対し、日本国内は9.2%に留まっているという。その中で、2015年からKubernetesに注目し、Yahoo!向けの本番環境として採用した。Docker Swarm、Apache Mesosといった対抗製品との比較では「スポンサー数」「コントリビュータ数」「コミュニティの活発さ」に注目してK8sを選定したとのこと。
Yahoo!Japanへの提供時は、容易に利用できるようサービス化(CaaS)して提供し、普及のために教育と啓蒙、アドオン提供や技術サポートを手厚く行ったとのこと。王道ですね
今後は、GPUノードと組み合わせた機械学習向け環境、マルチクラウド・ハイブリッドクラウドの利用が増加していくと思われる。更にはK8sの運用負担軽減と開発への集中のためにPaas/Faas on K8sといったことも取り組みたい、という話があった。

16:20 – LINEにおける深層学習を用いた音源分離技術の研究

ガチの学会発表セッション。まずは、伝統的な音源分離技術として統計モデルによる音声分離(複数マイクで音声の到着時間のずれを計測、逆算する)について説明。それを深層学習(Deep Neural Network)で精度向上させるにあたり、学習時に分離した音声を使うことで誤差を最小に持って行ったり、マイクを増やすことで空間情報をより反映して性能向上したりと、工夫して精度向上させた跡が見られました。基礎技術に理論からガッツリ取り組んでいる様子がとてもよくわかるセッションだった

17:20 – Cloud Native Challenges in Private Cloud with K8s, Knative

クラウドネイティブ(疎結合、動的に入替可能でスケーラブル)になぜ取り組むかを、メリットをアプリ開発者目線(インフラ管理からの解放)とインフラ開発者目線(リソース管理においてアプリ開発者との調整が減る)の両方で挙げていた。後者は初めて知った視点だが、実際、LINEが自社で構築・運用しているプライベートクラウド「Verda」では35000台以上のVMが稼働しているが、サーバの6割がCPU利用率10%未満となっていると聞かされると納得した。
そのために、ManagedなKubetenes(APIやモニタリングの仕組み、アドオンの提供)、ManagedなDB、ManagedなKnavive(ファンクションサービス)を提供しており、VMで動作するアプリやスクリプトをインフラ開発者が把握できるようにしているとのこと。

18:10 – NAVER ClovaのOCR(光学的文字認識)

ガチの学会発表セッション、パート2。OCR(文字認識)は、正確には「検出」と「認識」の2工程から成りたっている。この分野、英語を対象としており日本語を対象とした論文が少ないとのこと。「単語区切りのスペースがない」「縦書き横書きが混在」「文字種が3000以上」という日本語の特徴が困難さの理由らしい。
その中、ClovaOCRは「日本語を文字単位で検出・認識」することにフォーカスして研究した結果、「文字のアスペクト比」「ゆがみ(布プリントなど)」「大小サイズの混在」といった課題をクリアしたとのこと。具体的には認識対象の画像に対し「文字単位で区切る」ことと「文字と文字の間のスペースを認識する」ことに着目してフィルタ処理を実施していた。これにより、文字が曲線上に配置されたような画像からも認識が可能となっていた。
自分は大学で画像処理を研究テーマにしており、先輩が文字認識をやっていたこともあり、非常に楽しく聞けた

Day-2

10:40 – Opening DAY2

DAY2のオープニングはリリース済みのサービス・製品と事例が多く紹介された。印象に残ったのは、このイベントの入場ゲートで導入されていた顔認証技術。かなり高速な認証を実現している(ように見えた)が、これも自社開発とのこと。技術の根幹を握り、その優位性により他社サービスとの差別化を図る、という戦略なんだろう。自社で何ができるのか、何をやるべきなのか、考えさせられる

12:00 – つながろういつでも、何とでも。LINE Thingsからはじまるモノと人との新しいコミュニケーション

LINEアプリとIoTデバイスとの連携による多様なサービス創出を狙った基盤技術が、LINE Things。ちょうど一年前のDEV DAYで公開されたこの技術を使ったトライアルは1800プロジェクトに達しており、そろそろ市販製品も登場するとのこと。
ここでは、新要素としてLINEアプリが起動していなくともバックグラウンドでIoTデバイスとの通信が可能となる「Automated BLE Communication」について説明があった。メッセージング・Pay・スマートスピーカーなどLINEプラットフォームとの連携ができるBluetoothデバイスを開発できるのはLINE Thingsの強みであり、ネットワーク接続型IoTデバイスとは全く異なる市場を開拓しそうな気がする

13:40 – What’s New in LINE Front-end Framework

LINEアプリ内でWeb技術に基づくリッチなUXやWebアプリが開発できる、LIFFについてのセッション。10月にLIFF V2がリリースされたばかりで、「UXとDXの改善」がテーマという概要が紹介された。UX面では、よりリッチなUX部品が提供され、またChrome/FirefoxなどPCやスマホのモダンブラウザがサポートされ、LINEアプリ以外からLIFFを呼び出すことも可能となった。DX面では、PCによるデバッグが可能となり、OpenID連携、TypeScript向けSDKの提供、QRコードリーダなど新しいAPIも提供されている。これら機能強化により、ユースケースの拡大と多様なアプリの登場も期待できる。
LIFFの技術はLINE MINI Appにも技術が使われており、LINEのプラットフォーム戦略の中心になっていくと思われるので、今後も継続してwatchしていきたい

セッション以外について

前回と比較して、ユーザビリティがものすごく改善されていたのが印象に残った。朝の入場列の整理と誘導のスムーズさ、余裕たっぷりの会場レイアウトによる会場移動の容易さ、タイムテーブル通りに進むセッション、美味しいご飯と豊富な充電コーナー、使いやすいスマホアプリ、などなど。二日間とても快適でした。

次回も必ず参加しようと思う。いや、参加する。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください