Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
犬の心電AI解析プロダクト開発奮闘記 _クラウドからハード開発までてんこ盛り
Search
Hacarus Inc.
October 08, 2022
Technology
0
1.5k
犬の心電AI解析プロダクト開発奮闘記 _クラウドからハード開発までてんこ盛り
JAWSDAYS 2022の発表資料です。
Hacarus Inc.
October 08, 2022
Tweet
Share
More Decks by Hacarus Inc.
See All by Hacarus Inc.
GitLab CI/CD で C#/WPFアプリケーションのテストとインストーラーのビルド・デプロイを自動化する
hacarus
0
930
QA4AIに則ったMLOpsツールの活用
hacarus
0
610
0から協働ロボット外観検査システムを3ヵ月で具現化した軌跡
hacarus
0
180
ワンちゃんの健康を願う皆様に送る 犬心電図AI解析プロダクト紹介_AWS DevDay2022
hacarus
0
140
ExplainableAIの概要とAmazon SageMaker Clarifyでの実装例
hacarus
0
780
AWS Step Functions を用いた非同期学習処理の例
hacarus
0
860
Dashでmyダッシュボードを作ろう ーpytrendsで見るコロナの感染拡大時期ー
hacarus
0
1.2k
Interpretable Machine Learning: モデル非依存な解釈手法の紹介
hacarus
0
900
時系列データ予測手法の宇宙天気予報への応用
hacarus
0
1.2k
Other Decks in Technology
See All in Technology
Next.jsとNuxtが混在? iframeでなんとかする!
ypresto
2
1.1k
20241120_JAWS_東京_ランチタイムLT#17_AWS認定全冠の先へ
tsumita
2
320
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
740
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.8k
あなたの知らない Function.prototype.toString() の世界
mizdra
PRO
4
1.4k
SREが投資するAIOps ~ペアーズにおけるLLM for Developerへの取り組み~
takumiogawa
4
1.1k
強いチームと開発生産性
onk
PRO
36
12k
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
200
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
340
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
180
FlutterアプリにおけるSLI/SLOを用いたユーザー体験の可視化と計測基盤構築
ostk0069
0
190
The Role of Developer Relations in AI Product Success.
giftojabu1
0
160
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
133
8.9k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Gamification - CAS2011
davidbonilla
80
5k
Faster Mobile Websites
deanohume
305
30k
Docker and Python
trallard
40
3.1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Into the Great Unknown - MozCon
thekraken
32
1.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
Automating Front-end Workflow
addyosmani
1366
200k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
140
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Transcript
1 犬の心電AI解析プロダクト開発奮闘記 ~クラウドからハード開発までてんこ盛り~ 株式会社HACARUS 宇佐見一平
2 名前: 宇佐見 一平 略歴:2017-04 新卒でメーカーに入社 2019-03 HACARUSに転職 職務内容:外観検査プロダクトの開発 趣味
:テレビゲーム、Spotifyで音楽巡り 社会人アメフトチームの分析スタッフとしても活動 自己紹介
3 • ロボット制御アプリ開発 • 異常検知ライブラリの開発 • 異常検知ライブラリをノーコードで実行でき るクラウドアプリケーション開発 Mission 次世代の“はかる”をあらゆる産業へ
4 • 診断/治療支援AI開発 • 創薬工程の効率化AI開発 • ライブラリをノーコードで実行できるクラ ウドアプリケーション開発 共 同
開 発 ・ 研 究
5 ▪所属内訳 ①京都本社 ②東京R&Dセンター ③白浜サテライトオフィス ▪拠点 インダストリー 事業部 医療事業部 海外事業部
新規事業開発部 プロダクトオーナー データサイエンティスト データサイエンティスト データサイエンティスト エッジエンジニア アプリケーションエンジニア データサイエンティスト HACARUSの雰囲気を知りたい方はWantedly blogまで ↓ 開発 66.7 % 営業 19.0% 常勤取締役 7.1% 管理 7.1%
6 発表内容
7 • 話すこと ◦ AWSに構築したシステム全体の構成 ◦ ハードウェア、SORACOM、AIそれぞれとAWSの連携 ◦ 開発の変遷と苦労話 •
話さないこと ◦ AIや分析手法の詳細 ◦ 詳細なコード 話すこと/話さないこと
8 • 2018年から住友ファーマアニマルヘルス様と共同での開 発が開始 • 特殊なシートに犬を立たせることで立位にて測定可能 ◦ 測定結果はAWSに構築されたシステムに送られて解析 • 住友ファーマアニマルヘルス様のクラウドサービス(あに
さぽ)にて結果を医師に表示 犬の心電解析プロジェクト概要
9 • 循環器疾患は犬の死亡理由第二位 ◦ 循環器疾患の早期発見が重要 • ただし、日常的には確認されていない ◦ 心電図を解析できない、手間、時間がかかる etc…
◦ 上記課題が解決すれば検査をしたいという獣医師が多数存 在することは事前に調査済み →拘束なしで短時間に測定、解析できれば疾患の早期発見に 役立つ なぜ犬の心電解析プロダクトが必要なのか 既存の 心電測定装置
10 心電解析プロダクトの全体像
11 心電解析プロダクトの全体像 HACARUS担当部分 ※電極シート除く
12 • 測定ハードウェアの開発 • クラウドアプリケーションの開発 • 心電解析AI(信号の前処理含む) 必要な開発項目
13 • 測定ハードウェアの開発 • クラウドアプリケーションの開発 • 心電解析AI(信号の前処理含む) 必要な開発項目 全て1人で担当😇 (PMとインターン生はいました)
14 • 測定ハードウェアの開発 ◦ はんだ付けはやったことある • クラウドアプリケーションの開発 ◦ AWS,GCP,Azureとかの名前は知ってる •
心電解析AI(信号の前処理含む) ◦ 信号処理はしたことある 当時の自分のレベル
15 ハードウェア編
16 時系列 2019年: プロトタイプ開発 2020年:量産設計 2021年:コストダウン版開発 - ハードウェア設計コ ンサル会社と協力 -
Raspberry Pi 3B+ をベース - データ送信は SORACOMを利用 - プロトタイプでの 課題を解決 - 全体を覆うカバー の設計 - 回路の設計 - 量産に耐えうる部 品の選定 - コストダウン版の 制作 ここでハードに強い人 が入社!
17 時系列 2019年: プロトタイプ開発 2020年:量産設計 2021年:コストダウン版開発 - ハードウェア設計コ ンサル会社と協力 -
Raspberry Pi 3B+ をベース - データ送信は SORACOMを利用 - プロトタイプでの 課題を解決 - 全体を覆うカバー の設計 - 回路の設計 - 量産に耐えうる部 品の選定 - コストダウン版の 制作 ここでハードに強い人 が入社! 2019年: 3台だけのお試し 2020年:限定的なデモ公募 2021年:実稼働の公募
18 プロトタイプ外観 SORACOM 通信ドングル A/Dコンバーター マイコン 本体
19 測定時の全体観
20 測定できた!
21 • 横幅24cm→17cm • 縦幅15cm→9cm 量産&コストダウン版
22 • ほぼ初心者でも外部コンサルと組めばプロトタイプまで はいける • ただ量産設計は難しい ◦ やっぱりハードに強い人は社内に必要 ハードウェア編まとめ
23 ソフトウェア編
24 • ハードウェアからのデータをクラウドで受け取りたい • 受け取ったデータに前処理、学習済みのAIモデルを適用 したい • 外部サービスに固定IP認証でデータを送りたい やりたいこと
25 2019年: 最初期のアーキテクチャ
26 2019年: 最初期のアーキテクチャ
27 • APIKeyを使った認証を採用 ◦ Raspberry Piを配布するので認証情報を持たせたく ない RaspberryPiからどう認証するか?
28 • ラズパイに認証情報を持たせなくてよくなる SORACOM Beam
29 通信のイメージ 参考: https://users.soracom.io/ja-jp/docs/beam/aws/
30 グループごとに送信先も変えられる • Raspberry Piの設定を変えずとも、クラウド側で病院ごとに 使う処理を変えられる
31 • http://metadata.soracom.io/v1/subscriber.imsiにリ クエストを送ることでIMSI(SIMのID)を取得可能 ◦ IMSIはユニークなので、これをハードウェアの識別 情報として利用 subscriberを利用したIDの付与 http://metadata.soracom.io /v1/subscriber.imsi
GET IMSI(4231244…)
32 外部サービスとの通信について
33 • FargateにElasticIPが振れない ◦ オープンなサブネットとクローズドな サブネットに分け、オープンな サブネットにElasticIPを振ったNAT を介して通信 固定IPを用いた認証 参
考:https://aws.amazon.com/jp/premiumsupport/knowledge-cen ter/ecs-fargate-static-elastic-ip-address/
34 • メモリリークが起きてコンテナが落ちてしまった 順調に動いてそうだったが…
35 • Pythonの描画パッケージであるmatplotlibを使うとメ モリリークしているよう • 公式の対策を講じても効果薄 →Fargateのタスク数を増やし、メモリが一定以上に増え たコンテナはリスタートすることで対処 原因と対策
36 2020年:アーキテクチャ変更 GItlab Runner (LocalでのMock を使ったUnittest)
37 2020年:アーキテクチャ変更 GItlab Runner (LocalでのMock を使ったUnittest)
38 • メモリリークの解消 • ただし都度起動は時間がかかる ◦ EC2 on ECSを採用し、キャッシュを用いることで起動 時間を1分→10秒弱に高速化
処理コンテナを都度生成
39 • EC2を利用し始めたことでインスタンスのコストがか かってしまっている • 大量のリクエストが来た際に取りこぼす可能性がある 今後の改善点
40 あるエンジニアとの会話 なんかいいアーキテクチャ ないっすかねー AWS SAの人に相談したら? 自分 アプリエンジニアの人
41 相談時のアーキテクチャ
42 色々アドバイスもらえました 直接API Gatewayからレスポン ス返せる SQS噛ませて取りこぼしを防 ぐとよい
43 • SORACOMを用いることで、ハードとクラウドの繋ぎ込 みが容易になった • 初の試みで問題はあったが、クラウド環境の再構築の容 易さからある程度すぐに対応できた • AWS SAの方に相談するのはおすすめ
ソフトウェア編まとめ
44 実稼働している病院でこんなデータが採れてます
45 本プロダクトは絶賛関西の病院でデモ稼働中! 見かけたら是非ご贔屓に 最後に
46 ありがとうございました!