フレクトのクラウドblog re:newal

http://blog.flect.co.jp/cloud/からさらに引っ越しています

TFLiteをWasm化(WasmSIMD化)してGoogle Meet 仮想背景機能を動かす

こんにちは。研究開発室の岡田です。

以前、Google Meetの仮想背景のモデル(Segmentation Model)をTensorflowjsで動作させた記事を投稿しました。今回はさらなるパフォーマンス改善を目指しWasm化したTFLiteで動かしてみようと思います。

結果、かなりの好成績でした。 image

続きを読む

MuleSoftを感じてみる

こんにちは。CI事業部の川瀬です。
フレクトでも2020年度から新しい技術、MuleSoftに取り組んでいます。

MuleSoft一体どんなもので、どんな会社が使っているのか?と見てみると以下のリンクに辿れます。

www.mulesoft.com

トヨタNETFLIXも使っているのですね。

MuleSoftを使うと何がいいのでしょうか? ERPの代表格としてはSAP、Oracle富士通、ORBICなどの有名どころがあります。じゃ、プログラム書いて繋いじゃえばいいじゃないかと思います。 ところが実際は、業務Aを実行するにはシステムA、業務Bを実行するにはシステムB、挙句の果てには途中でデータ加工のためAccessやエクセルが出てくる場合もあります。 システムAからこのデータを取得して、システムBからはあのデータを取得して、ムムムとなってしまいます。
簡単にデータを取得して、うまいことと混ぜて画面に表示したい、ということでMuleSoftが着目され始めています。 もちろん、接続先をプラグイン化して様々なシステムにつなげることができる凄腕エンジニアがたくさんいれば話は別です。
対向システムのAPIを調べ、今度は別の対向システムのAPIを調べといった具合に、エンジニアの立場からは面白いかもしれませんが、経営者からみたらたまったものではありません。早い、安い、うまいが基本ですよね。
そんな中でMuleSoftは各種コネクタを用意してあり、簡単に対向システムと接続できちゃいます。

docs.mulesoft.com

一体、MuleSoftと通常の実装とではどこが違ってくると思いますか?比較すると以下のような感じになります。

          MuleSoft               カスタムコード(Java)                 
API 仕様 1. API 仕様を GUI の専用ツールで作成。シンタクックスの習得不要。
2. API 仕様に基づき API を実装
成果物:RAML / OAS
1. API 実装をコーディング
2. API 仕様を自動で生成
成果物:RAML/OAS
API 実装 GUI でフローを作成
データの変換部分のみ少量のコーディング
Eclipse 等の IDE 上でインテリセンスを活用してコーディング
具体例
f:id:k2-flect:20210321142424p:plain
実装例
public class DBSample {
public static void main(String[] args) throws Exception{
Connection conn = null;
...

どうですか?簡単そうでしょう。次回はもっと具体例と出したり、他の製品との比較もやっていきたいです。

Manipulate AR objects using UI Gesture and Hand Gesture

This is Shuochen Wang from R&D department in Flect. In this blog I am going to explain how to move AR objects by both translation and rotation using UI Gesture and Hand Gesture.

Table of contents

  • Introduction
    • Why do we need to learn about AR?
    • Why use Apple for AR apps?
    • What is the difference between VR, MR and AR?
    • What is ARKit?
    • What is SceneKit?
    • What is UI Gesture?
    • What is Hand Gesture?
  • Start Up
    • Setting up the view
    • Adding AR objects
  • Setting up UI Gesture recognizers
    • Setting up the Pan Gesture for Translation
    • Setting up the Rotation Gesture for Rotation
  • Setting up Hand Gesture
    • Setting up Hand Gesture for Translation
    • Setting up Hand Gesture for Rotation
  • Conclusion
  • Reference

Introduction

Why do we need to learn about AR?

The need to learn about AR (Augmented Reality) has become more important than ever. In 2020, AR has disappeared from Gartner’s Hype Cycle. This means

AR has reached maturity and became an industry-proofed technology that executives can safely invest in to improve and innovate their business.(AR Post)[^1]

In other words, AR is going to be an essential technology to be used behind other new, trending technologies. As a software developer/ engineer, one needs to learn how to use AR.

続きを読む

価格の最適化に関する論文の紹介: Price Investment using Prescriptive Analytics and Optimization in Retail

こんにちは.研究開発室の福井です.

現在,研究開発室ではリモートコミュニケーションと自動化をメインテーマとして研究開発を行っております.その中でも私は自動化の役に立ちそうな技術に関する研究を行っております.より詳細に言いますと,最近はオペレーションズ・リサーチ(OR)と呼ばれる分野に含まれるいくつかの問題に関して研究を行っています.今回の記事では,最近私が勉強中の価格の最適化に関する問題に関連した論文を紹介させていただきます.

今回は,KDD2020 で発表された以下の論文を紹介します.

  • Mehrotra, Prakhar, et al. "Price Investment using Prescriptive Analytics and Optimization in Retail." Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. 2020.

この論文では,Walmart(アメリカの大手スーパーマーケットチェーン)において実験的に利用されている,機械学習と OR (の数理計画問題)を用いて利益が最大化するような最適価格を推薦するシステム(Price Recommender System; PRS)について紹介されています.

続きを読む

Building a Slack bot using Google Dialogflow

This is Shuochen Wang from R&D department in Flect. In this blog I am to explain how I implemented a Slack bot using Google Dialogflow.

Table of contents

  • Introduction
    • Why do we need chatbot?
  • Design brief
    • Purpose of the Slack bot
    • The process
    • Why choose Google Dialogflow? (Figure 1 step 3 and 7)
    • Why use external API?
    • What kind of external API? (Figure 1 step 5)
    • Why choose Google for webhook? (Figure 1 step 4 and 6)
  • Cloud Run script specifics
    • Libraries/modules to be used
    • Setting up the main web application
    • Setting up the app route
    • Setting up the request handler
    • Setting up the fallback handler
    • Setting the interactive button for Slack
    • Setting the return message function
  • Conclusion and future work
  • Reference

Introduction

Why do we need chatbot?

According to a new market report pertaining to the global chatbot market published by Transparency Market Research the global chatbot market was valued at US$ 274.5 Mn in 2019 and is projected to reach US$ 2,358.2 Mn by 2027, at a CAGR of 31.3% during the forecast period from 2020 to 2027[^1]. Since the outbreak of the corona virus, the need for automatic chat support is greater than ever before.

続きを読む

Microsoft AzureでSpring Boot製バッチを動かすために(2)

こんにちは。クラウドインテグレーション事業部の上原です。

前回の記事では、とりあえず Azure上でバッチ処理を動かすためにシンプルな構成を作ってみました。

cloud.flect.co.jp

しかしシンプルゆえに問題点も多かったので、少しずつ改善していきましょう。
今回は必要なときだけバッチが稼働する構成 、いわゆるサーバレスアーキテクチャを検討してみます。

続きを読む

AR map base on Twitter tweets

研究開発室の馮 志聖(マイク)です。

Content

  • Introduction
  • ARKit + Core Location + Twitter API
  • Demo
  • Conclusion
  • Other
  • Reference

Introduction

In the era when social media is prevalent, there are various types of content. Some of the content includes location information, such as events, news.... Displaying these location-containing content on the map is convenient for other users to find and read, but they are generally in 2D. Based on flat maps, we will use the latest AR technology combined with 3D maps to present these content including locations, which will bring users a greater experience.

We will develop the Twitter AR map.

Why we choose Twitter?

This chart shows the recent market share of social media in Japan, updated in January 2021.

f:id:fengchihsheng:20210203144724p:plain
Social media stats in Japan until January 2021.

For details, please refer to the link below.

https://gs.statcounter.com/social-media-stats/all/japan

From this chart, we can see that the ratio of Twitter is 59%, nearly half of the market share, so we choose Twitter.

This information get from statcounter GlobalStats.

https://gs.statcounter.com/

続きを読む