Slide 1

Slide 1 text

Azure AI servicesと歯のおはなし 2024/10/19 第4回 Azure Travelers 勉強会 福岡の旅 馬場ひろの Hirono Baba

Slide 2

Slide 2 text

株式会社オルターブース エンジニア 馬場 ひろの Hirono Baba X:@nina-sensei27 2013/3 歯科医師免許取得 2018/4 大学病院で勤務開始 2020/4 プログラミングをはじめる 2020/12 株式会社オルターブースに入社 2024/9 Microsoft MVPを初受賞 一年間の研修医期間を経て、働きながら大学院へ 途中一年間フィンランド トゥルク大学へ研究留学、のちに博士号取得 助教として臨床、教育、研究に従事 補綴(ほてつ)科に所属し入れ歯を専門に歯科業務に勤しむ 研究テーマの一環でプログラミングに興味を持ちスクールに通い始める 歯科業務に関するアプリをPHPで作成 開発、トレーニング、コンサルティング業務に従事 AzureやGitHub, .NETがんばってます カテゴリー:Developer Technologies Technology Area:.NET

Slide 3

Slide 3 text

コミュニティ活動① ⚫JAZUG Fukuoka ⚫ 近年活動できていなかったふくあずをリニューアルし 新たなメンバーとともに再始動 ⚫ 地理的になかなか東京イベントに顔出せない 地方で活動の場がほしい…! ⚫ 基本はオンラインイベント ⚫ LT会や定期もくもく会やりたい ⚫ 全国からご参加お待ちしてます! ⚫ オフラインイベントも視野に ⚫ 11/11(月)19:00- イベント開催します!!

Slide 4

Slide 4 text

コミュニティ活動② ⚫GitHub Dockyard ⚫ GitHubに関する知見の共有や、質問・ サポート、雑談を行えるコミュニティ ⚫ 運営メンバーになりました ⚫ イベント計画中なので 遊びに来てください!

Slide 5

Slide 5 text

アジェンダ ⚫今日話すこと ⚫ 歯科業務のおはなし ⚫ Azure AI servicesを使って業務改善 ⚫ GitHub Copilot Workspaceを使って開発してみよう ⚫対象者 ⚫ Azure AI servicesの可能性を考えたいひと ⚫ Azureを扱うすべてのひと ⚫ むずかしい話はありません、息抜きにご覧ください

Slide 6

Slide 6 text

歯科業務のおはなし

Slide 7

Slide 7 text

⚫歯医者さんに行くと必ず最初にすることがあります 1. 問診 2. 歯の記録を取ること = 歯式(ししき)を取る ⚫歯式とは ⚫ 上下左右の歯が生えている場所を示す言葉 ⚫ 永久歯は1~8、乳歯はA~E 歯医者さんの初診で絶対すること

Slide 8

Slide 8 text

⚫歯式を取ることが必要な理由 ⚫ 保険診療で必要 ⚫ 現在の歯の状態を把握するため ⚫ 問診のため ⚫ 治療歴の把握 ⚫ 治療計画の立案 ⚫ 故人の身元特定のため なぜ歯式が必要なのか

Slide 9

Slide 9 text

⚫歯科用ミラーで一歯ずつ歯の状態をチェック ⚫上の奥歯から歯を一周するように読み上げる人が多い気がする ⚫利き手でミラー、逆の手でほっぺたや唇を引っ張ります 歯式の取り方① 8 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 右 左 上 下 Start Goal

Slide 10

Slide 10 text

⚫2人がかり ⚫ 1人が歯式の読み上げ、1人が歯式の記録 ⚫ 誰も空いてなかったら待つ or 1人で ⚫1人で頑張る ⚫ 片手でミラーとペンを持ち替え ⚫ 非常にめんどくさい 歯式の取り方②

Slide 11

Slide 11 text

Azure AI servicesを使って業務改善

Slide 12

Slide 12 text

⚫歯の写真を撮影 → 歯式に変換してくれる ⚫ Custom Visionで頑張れば実現可能…? ⚫ 歯の写真は必ずしも初診で必要ではない + 歯の写真を撮る作業は容易ではない → 却下 ⚫歯式の読み上げ → 歯式を自動記録 ⚫ Azure AI Speech + Azure AI Language ⚫ 1人でできるようになり時間短縮 歯式自動記録サービスが作りたい 舌やほっぺた、唾液などが邪 魔してなかなか撮れない あらゆる角度を撮るのは大変 こっちを作ります

Slide 13

Slide 13 text

⚫今回のゴール:今ある歯を読み上げると自動で記録してくれるアプリを 作る(歯の状態の記録はいずれまた…) 1. 歯の番号を読み上げる 2. Azure AI Speechで文字起こし 3. 内容をAzure AI Languageで解析 4. 解析した歯の番号をブラウザに表示 まず残存歯(今ある歯)の記録を取る 8 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 右 左 上 下

Slide 14

Slide 14 text

⚫音声からテキストへの高精度の文字起こし、自然な音声変換のテキスト 音声を生成、音声の翻訳、会話中の話者認識等を提供するサービス ⚫今回はPCに接続したマイクから直接文字起こしをしてみる Azure AI Speech 出典:What is the Speech service?

Slide 15

Slide 15 text

⚫テキストを理解し分析するための自然言語処理機能を提供するサービス ⚫ Text Analytics、QnA Maker、 Language Understanding (LUIS) Azure AI Language 出典:Azure AI Language とは? エンティティ 認識 キーフレーズ 抽出 感情分析 言語識別 文章要約 変換、翻訳

Slide 16

Slide 16 text

⚫Azure AI Speech と Azure AI Language を使いたい → Azure AI servicesのリソースを1つ作ればおk Azure AI services ⚫ OpenAI ⚫ Speech ⚫ Content Safety ⚫ Computer Vision ⚫ Language ⚫ Translator ⚫ Document Inteligence ⚫ Token

Slide 17

Slide 17 text

GitHub Copilot Workspaceを使って 開発してみよう

Slide 18

Slide 18 text

⚫自然言語で書かれたIssueをもとに、Copilotが仕様案と実装計画を示し、 コーディングや既存のコードの修正を行い、プログラミングのほとんど 全ての工程をCopilotが自動的に実行してくれるGitHubの新機能 GitHub Copilot Workspaceとは 現在は テクニカルプレビュー

Slide 19

Slide 19 text

⚫Blazor、.NET8を使用 ⚫作成するIssueは4つ 1. Blazorのプロジェクト作成 2. 音声の文字起こしを実装 3. 音声の連続文字起こしを実装 4. 文字起こししたテキストから1~8の番号を抽出 構成 作る前に自分で コード書いた

Slide 20

Slide 20 text

作る前に自分でコード書いた

Slide 21

Slide 21 text

⚫ 設計がすべて ⚫ 作るものの全体像を詳細に把握しておく必要がある(部分だけ…と思うと事故る) ⚫ 言語やフレームワークの知識がより求められる ⚫ Issueを自然言語で書くか、コーディングした方が早いと思うかは人によりそう ⚫ Issueテンプレート使うと良さそう ⚫ とはいえ新時代の開発体験、ツールであることは間違いない ⚫ タスクを細分化するとよりよい結果が得られる(はず) ⚫ 一気にやろうとせず、細かく実装していく ⚫ レビュー力が求められる ⚫ レビューするのは開発者自身 GitHub Copilot Workspace 感想

Slide 22

Slide 22 text

⚫4ブロック(上下左右)認識できるように実装する ⚫ ブロック別に音声認識できるようにする ⚫歯の状態を記載できるようにする ⚫ どうやって歯と状態を対になるよう認識させるか(例:右上7, C1、右上6, C2) ⚫ 歯式を読み上げたテキストでパターンを学習させる…? ⚫ 実装イメージがいまいちついてないのでアドバイスください アプリの展望

Slide 23

Slide 23 text

おしまい ⚫ 久々歯のこと考えて楽しかった ⚫ Azure AI services アップデートはやい ⚫ Copilot Workspace の今後に期待! ⚫ ご清聴ありがとうございました