OPTiM IoT Agent を GitLab CIでクロスコンパイルとパッケージング自動化

こんにちは。AI・IoTサービス開発部の青木です。 前回はチームリーダとしてのMTG運用方法などを投稿しました。 tech-blog.optim.co.jp OPTiM IoTではIoTデバイス関連のデバイスエージェントの開発も行っていまして、 デバイスのアーキテクチャやディストリビ…

「v-btnコンポーネントのテキストが折り返されない問題」における戦いのいく末を覗く

こんにちは、AI・IoTサービス開発部の岩丸です。 普段の業務では主に**Vue.js + TypeScript + Vuetify**と格闘しております。VuetifyやMUIなどのCSSライブラリを使用していると、非常に多くの恩恵を受ける反面デフォルトのCSS設定に悩まされることが多々ある…

不要なPCで最低限のWebサーバを作ってみる

こんにちは、OPTiM Storeの開発チームの半田です。 クラウドでサーバを構築したことはあっても物理サーバを構築したことはないなとふと考え、自宅で簡単にやってみることにしました。 不要なWindows 7のPCがあるので、これをCentOS 8のWebサーバにしてみます…

✨ 自分流絵文字で綺麗なコミット

gitのコミットメッセージを分かりやすく、楽しく絵文字で書く方法を紹介します。

PG BATTLE 2021 に参加しました

はじめに 問題の紹介と感想 ましゅまろ 1問目 物理現象グラフィックバトル 2問目 ゼロのない整数 所感 せんべい 1問目 7番勝負 2問目 連結成分数の見積もり 最小値について 最大値について 3問目 トーナメント表 4問目 [リ[[スー]バ][ズパ]ル] 所感 かつお…

Rust 1.57を早めに深掘り

定数文脈でもパニック出来るようになったRust 1.57の変更点を詳しく紹介します。

AlphaGoで学ぶ強化学習 ~次の一手を予測する将棋AIを作ってみよう~

こんにちは、R&Dの宮城です。 将棋の竜王戦が世間を賑わせる中、オプティムでも人知れず将棋AI vs 私の熱闘が繰り広げられていました。 今回の記事では強化学習について簡単に説明した後、次の一手を予測する将棋AIを作成し、作成した将棋AIと実際に戦ってみ…

Deep Learningによる異常検知デモ①:回転レーン上のブロックを撮影し、ブロックの位置とゲート跡を検出する

お久しぶりです、R&Dの加藤です。最近は「A列車で行こう~はじまる観光計画~」をコツコツ進めていますが楽しいですね。Steamでも公開されるそうなのでNintendo Switchを持っていなくてもプレイできますよ。 さて、今回はDeep Learningによる異常検知デモを作…

Storybookを活用して開発とデザイナー連携

こんにちは、AI/IoTサービス開発部のIoTサービス開発ユニットの下村です。 今回はOPTiM IoTサービスを開発するにあたりデザイナーとの連携をどのように行ったかについてご紹介したいと思います。 デザイン開発における課題 OPTiM IoTの開発におけるデザイン…

Rasa+GiNZAによるお手軽チャットボット作成

R&Dチーム所属の伊藤です。GiNZAについて検索しようとして(地名の)銀座についての結果が出てくると悲しくなります。 今回はチャットボットの作成についてです。前から気になっていたRasaを試してみたので備忘録がてらまとめてみました。 はじめに 準備 ドメ…

入社半年の新卒が、Ruby on RailsでOPTiM AI Camera Web APIの混雑状況取得を試してみた

はじめまして。AI・IoT サービス開発部所属、21 卒の岩丸です。 今回は「入社半年の新卒である私が、配属されたAI Cameraチームの公開 API(OPTiM AI Camera Web API)をRuby on Railsで試してみた」という内容となっております。 配属チームの理解をより深め…

EKSのワーカーノードで使用できるPodの制限緩和を行いました

はじめに こんにちは!技術統括本部SREユニットに所属している岡田です。SREでは、ちょっとしたテスト環境としてAmazon Elastic Kubernetes Service (EKS)を使用しております。EC2インスタンス(ワーカーノード)はセルフマネージド型ワーカーノードであり、…

1on1でコーチングをする

はじめに はじめまして!AI・IoTサービス開発部 開発マネージャーの高村です。 OPTiMでは隔週に上長とメンバーが1on1をする制度があります。 今回の記事では、IoTサービス開発ユニットが行っている1on1について書こうと思います。 1on1って何? 簡単に言うと…

Rust 1.56を早めに深掘り

Rust 2021が安定化されたRust 1.56の変更点を詳しく紹介します。

チーム間連携で定例会を激減させた話

こんにちは。AI・IoTサービス開発部の青木です。 今年度に入ってからOPTiM IoTというプロダクトのチームリーダとして開発を行っています。 新卒入社後初めてのチーム開発 + チームリーダで経験も浅いので、周りのスタッフに助けていただきながら推進していま…

EfficientDetによるドキュメントレイアウトを意識したOCR解析

R&D チームの徳田(@dakuton)です。 過去記事にて紹介したLayoutParserがバージョンアップ(v0.3.0以降)により、EfficientDetによるドキュメントレイアウト解析がサポートされたので動かしてみました。 技術解説 EfficientDetとLayoutParserの技術的な説明に…

深層距離学習(Deep Metric Learning)の基礎から紹介

こんにちは、R&Dチームの河野(@ps3kono)です。深層学習モデルの開発を担当しております。 今回は、画像分類、画像検査、顔認識や異常検知など様々な分野に利用されている深層距離学習(Deep Metric Learning)について紹介したいと思います。 Deep Metric Lear…

GiNZAのja-ginza-electraモデルでELECTRAベースの単語ベクトルを使用できるようにする

はじめに R&Dチーム所属の伊藤です。相も変わらず自然言語処理と格闘する毎日を送っています。 今回は個人的にとても楽しみにしていたGiNZA v5の新モデルであるja-ginza-electraを使って、前後の文脈を加味した単語ベクトルを求められるようにするまでの手順…

Nuxt.js + TypeScriptで新規プロジェクト作成

自己紹介 はじめまして、今年3月に中途入社しましたAI/IoTサービス開発部のIoTサービス開発ユニットの下村です。現在、OPTiM IoTでフロントエンド開発をしております。 今回は、そのOPTiM IoTで取り入れたNuxt.js + TypeScriptの新規プロジェクト作成につい…

IT研修で作ったアプリをEKSにデプロイしました

自己紹介 初めまして。21新卒で入社いたしました、技術統括本部SREユニットの岡田です。 大学院在籍時にPythonを使用した機械学習でのデータ解析を行っていましたが、入社まで運用はもちろん開発も未経験でした。社内でのIT人財教育プログラム(IT研修)ののち…

プロペラモータのPID制御

プロペラモータを使ったPID制御システムの紹介です。

エンジニア目線でオプティムを紹介

こんにちは、AI・IoTサービス開発部とSREチームのマネージャをしている和田です。 今回エンジニアの皆さま向けのOPTiM会社紹介を公開しましたので、この場を借りてご紹介させてください。 本OPTiM TECH BLOGやOPTiM TECH NIGHT を通じて、OPTiMが技術面でど…

Rust 1.55を早めに深掘り

レンジのパターンや配列の写像が出来るようになったRust 1.55の変更点を詳しく紹介します。

知識0からKubernetesで本番環境までひと月でデプロイした話

自己紹介 初めまして。21新卒で入社しました、AI/IoTサービス開発部のIoTサービス開発ユニットの濱村です。 昨年3月に初めてVue x Laravelでアプリケーションを開発してOPTiMに入社した初心者フロントエンドエンジニアです。 配属されてひと月経った5月の下…

姿勢推定モデル MoveNet を TensorRT でベンチマーク

R&D チームの奥村(@izariuo440)です。日本で気温が暖かくなると姿勢推定が盛り上がってくるように見えるのは私だけでしょうか?今年の5月に発表された人物姿勢推定モデルの MoveNet v3 をTensorRT でベンチマークしてみました。CPU でもかなり高速推論が…

ディープラーニングモデル圧縮手法 Pruning を PyTorch でお試し

こんにちは、R&D チームの宮城です。画像分類モデルの開発や精度改善などの業務を担当しています。 最近は将棋観戦にはまっており、藤井聡太先生の対局を見まくっていますが一向に将棋が強くなる気配はありません。 今回の記事ではディープラーニングモデル…

Redmine APIとExcelを使ってバグチケットダッシュボードを作ってみた

こんにちは、Optimal Bizチームの片岡です。 今年度からQAチームに配属となり、Optimal Bizの品質向上のために何ができるかを日々考えています。 2021年度Q2から開発期間内に摘出されるバグの分析を始めており、今回はその取り組みの中で作ったバグチケット…

Android Studio Arctic Fox 正式リリース! Android プロジェクトの更新方法

皆様こんにちは、医療ユニット開発の山口です。 最近コロナワクチン2回目を打ってきました。38度超えの発熱よりも関節痛併発で首が爆裂に痛くなったほうがヤバかったです。 いやぁ、首がもげるかと思いました・・・すごいですね、モデルナ。 今回は 7 月末に…

なぜJavaScriptにおいて『オブジェクト』という言葉は二重に使われているのか

みなさん、こんにちは。OPTiM Storeの開発チームの半田です。 業務内容とはあまり関係ありませんが、学習初期に疑問に思っていたことが今になってやっと理解出来たので、今回文章に纏めてみようと思います。 ことはじめ JavaScriptにおいて、『オブジェクト…

WebAssemblyを用いてBERTモデルをフロントエンドで動かす

はじめまして。R&Dチーム所属、20.5卒の伊藤です。 普段の業務では自然言語処理と格闘していることが多いです。 今回は自然言語処理モデルとして有名なBERTをWebAssemblyを使用してフロントエンドで動かしてみた話になります。 最近、自然言語処理ライブラリ…