Upgrade to Pro — share decks privately, control downloads, hide ads and more …

あと何分?タクシーアプリ『GO』到着予測AIの社会実装まで【DeNA TechCon 2022】

DeNA_Tech
March 17, 2022

あと何分?タクシーアプリ『GO』到着予測AIの社会実装まで【DeNA TechCon 2022】

自分たちのサービスで取得するデータを活用し、外部 API を利用するより高精度で低コストな内製システムをつくることはできないか?

タクシーアプリ『GO』では日々蓄積されていくログデータを活用することで、より良いユーザー体験を提供するための機能を実現しています。その中でも、ユーザーがタクシーに配車依頼を行ったときに何分でお迎えすることができるかを示す「到着予想時間(ETA)」はサービス提供のために必要不可欠な要素です。

本発表ではこのETAを予測する到着予測AIをどのように開発したかについて、外部APIに頼っていた状態から内製化を行った経緯、開発からサービス導入までの社会実装に至るまでを詳細にご紹介します。

自分たちのサービスで取得するデータを活用し、外部 API を利用するより高精度で低コストな内製システムをつくることはできないか?

タクシーアプリ『GO』では日々蓄積されていくログデータを活用することで、より良いユーザー体験を提供するための機能を実現しています。その中でも、ユーザーがタクシーに配車依頼を行ったときに何分でお迎えすることができるかを示す「到着予想時間(ETA)」はサービス提供のために必要不可欠な要素です。

本発表ではこのETAを予測する到着予測AIをどのように開発したかについて、外部APIに頼っていた状態から内製化を行った経緯、開発からサービス導入までの社会実装に至るまでを詳細にご紹介します。

資料内でのリンク集:
p33, https://engineering.dena.com/blog/2020/03/automotive-big-data-processing/
p39, https://engineering.dena.com/blog/2020/03/automotive-big-data-structure/
p45, https://lab.mo-t.com/blog/what-is-eta
p47, https://github.com/kubernetes/community/tree/master/icons

◆ You Tube
https://youtu.be/YRjKEV0YPPc

◆ You Tube チャンネル登録はこちら↓
https://youtube.com/c/denatech?sub_confirmation=1

◆ Twitter
https://twitter.com/DeNAxTech

◆ DeNA Engineering
https://engineering.dena.com/

◆ DeNA Engineer Blog
https://engineering.dena.com/blog/

◆ DeNA TechCon 2022 公式サイト
https://techcon2022.dena.dev/spring/

DeNA_Tech

March 17, 2022
Tweet

More Decks by DeNA_Tech

Other Decks in Technology

Transcript

  1. ΒƠˌᷨ/ᶒᷝṫᷝᷨ෭ݨ þᡧþྙᷟ෽ࠌᶇḭḞ ΒƠˌ ᅙᙡࣴᅆᷨᷓ ᶉᷨ/Ⴜʧ ୽૙ֵማᷗᶊḍᷨᷓ ᶉᷨ/Ⴜʧ ᡧࡰ ྙࡰ Ɣ

    /ᶙ׃׌༭ Ɣ ছᔘᶒḇᵶᶉᷖ؂ݵΆ Ɣ ᶳᷝᶰḁ᷈ḜḨᶙƎᶲ Ɣ ᧶ᜍᷟḄḜ᷽ᷝḜ Ɣ ᶳᷝᶰḁ᷈ḜḨᶙ᧶ᶲ Ɣ ᜢ຦ḕ᷊ᷥᶲ Ɣ /ᶙĆ׃׌ Ɣ ছᔘͪɚᶙѨᣩ
  2. ┠ḟ ᭅᮩ /ᷨЁᥥᕇ׌ḧਦছྡ၍ ᭆᮩ \zq{\ᷨେ࡙ ᭇᮩ ᄜۦ४ЍᷨḞ᷐ᷨښԝ ᭈᮩ ᶳᷝᶰḁҴན ᭉᮩ

    ᧶ᜍ̣ᷨḞ᷐ᷨښԝ ᭊᮩ ḇḇᵩḜᷥṖḌ˷੯ ᭋᮩ ᖁᥥḧŚݗᷨرਲ
  3. ┠ḟ ᭅᮩ /ᷨЁᥥᕇ׌ḧਦছྡ၍ ᭆᮩ \zq{\ᷨେ࡙ ᭇᮩ ᄜۦ४ЍᷨḞ᷐ᷨښԝ ᭈᮩ ᶳᷝᶰḁҴན ᭉᮩ

    ᧶ᜍ̣ᷨḞ᷐ᷨښԝ ᭊᮩ ḇḇᵩḜᷥṖḌ˷੯ ᭋᮩ ᖁᥥḧŚݗᷨرਲ
  4. ┠ḟ ᭅᮩ /ᷨЁᥥᕇ׌ḧਦছྡ၍ ᭆᮩ \zq{\ᷨେ࡙ ᭇᮩ ᄜۦ४ЍᷨḞ᷐ᷨښԝ ᭈᮩ ᶳᷝᶰḁҴན ᭉᮩ

    ᧶ᜍ̣ᷨḞ᷐ᷨښԝ ᭊᮩ ḇḇᵩḜᷥṖḌ˷੯ ᭋᮩ ᖁᥥḧŚݗᷨرਲ
  5. ┠ḟ ᭅᮩ /ᷨЁᥥᕇ׌ḧਦছྡ၍ ᭆᮩ \zq{\ᷨେ࡙ ᭇᮩ ᄜۦ४ЍᷨḞ᷐ᷨښԝ ᭈᮩ ᶳᷝᶰḁҴན ᭉᮩ

    ᧶ᜍ̣ᷨḞ᷐ᷨښԝ ᭊᮩ ḇḇᵩḜᷥṖḌ˷੯ ᭋᮩ ᖁᥥḧŚݗᷨرਲ
  6. ┠ḟ ᭅᮩ /ᷨЁᥥᕇ׌ḧਦছྡ၍ ᭆᮩ \zq{\ᷨେ࡙ ᭇᮩ ᄜۦ४ЍᷨḞ᷐ᷨښԝ ᭈᮩ ᶳᷝᶰḁҴན ᭉᮩ

    ᧶ᜍ̣ᷨḞ᷐ᷨښԝ ᭊᮩ ḇḇᵩḜᷥṖḌ˷੯ ᭋᮩ ᖁᥥḧŚݗᷨرਲ
  7. ┠ḟ ᭅᮩ /ᷨЁᥥᕇ׌ḧਦছྡ၍ ᭆᮩ \zq{\ᷨେ࡙ ᭇᮩ ᄜۦ४ЍᷨḞ᷐ᷨښԝ ᭈᮩ ᶳᷝᶰḁҴན ᭉᮩ

    ᧶ᜍ̣ᷨḞ᷐ᷨښԝ ᭊᮩ ḇḇᵩḜᷥṖḌ˷੯ ᭋᮩ ᖁᥥḧŚݗᷨرਲ
  8. + !'͔+*'4'$) ͔' )"/#͘ ͔/͚̪̩̪͛.#+ ͔'/')".͙̪  !̪ $)/$Ѕ̞ 

    ͔/"Ѕ̨̞̞ !*-$$)-)" ͘' )͘.#+ ͔'/')".͙̟͙̪̾ "ЀЅ"- /͔$-' ͔$./) ͘ .#+ ͔'/')".͚$̩̞̩͛ .#+ ͔'/')".͚$̩̟̩͛ .#+ ͔'/')".͚$Ѐ̟̩̞̩͛ .#+ ͔'/')".͚$Ѐ̟̩̟̩͛ ͙ - /0-)" ˜‹p}{ᷥṖḌ᧶ᜍ̣᯸{…ᮩ{g\ˆˆ\˜ഊႼṋṎ᷐Ḍ᯹ Ҙţ᷄᷑ᷗḇᶂṣᵩᶉ{…ᮩ\ˆˆ\˜ᰦᷨ ᷑ᷗḇᵾḯᶰᵺᷥ˷ุ༭ᷥᵶ᷋ḓḜ ᶀ᷋Ḩḍᶉᶣ᷊ᷟ ᔑᅄᶟḧᷥᔷႼ
  9. !-*('$̨(/#$(+*-/.,-/̩*.̩͔ $(+*-/)0(+4.)+ /4+  !)+̨!'*/̢̤͔/ ͔/  ! ͔/ "̠-͘

    ͔/ "͙̪ - /0-) "͔͘͢ ̨̟̦̞̞͙͞ ˜‹p}{ᷥṖḌ᧶ᜍ̣᯸ ᷨᡸॿᷥᇶ᷄ऌᶑḌ᯹ ᶉईƲḏḃḡᶲḌᡸॿṋ຦ᶲḌ {…ᮩgioᭆˆ\gᰦᷨũṀḆᷥɯאᓙ
  10. \zq{\ᰦᷨ෭ݨ᷍ḧ᷐ ᬼḪṋΒṀḒḞᶲᶲḧ᷇ᶍḆṋא๔ ΒƠݗ ᅙᙡࣴᅆᰦ᰽ᰦ୽૙ֵማᷥ ṖḌ/Ⴜʧ ΒƠˌ ᅙᙡࣴᅆᷨᷓ ᶉᷨ/Ⴜʧ ୽૙ֵማᷗᶊḍᷨᷓ ᶉᷨ/Ⴜʧ

    ྙࡰ Ɣ ᶳᷝᶰḁ᷈ḜḨᶙ᧶ᶲ Ɣ ᜢ຦ḕ᷊ᷥᶲ Ɣ /ᶙĆ׃׌ Ɣ ছᔘͪɚᶙѨᣩ Ɣ ཝᶊᵩḟ̣ᶉ᷈ḜḨˉವ Ɣ ᅙᙡࣴᅆᶙᶀᵩḜᶉ׃׌༭ Ɣ ছᔘᶒḇᵶᶦᷨرᡮᶙ؂ݵΆ ४Ѝൻ
  11. ┠ḟ ᭅᮩ /ᷨЁᥥᕇ׌ḧਦছྡ၍ ᭆᮩ \zq{\ᷨେ࡙ ᭇᮩ ᄜۦ४ЍᷨḞ᷐ᷨښԝ ᭈᮩ ᶳᷝᶰḁҴན ᭉᮩ

    ᧶ᜍ̣ᷨḞ᷐ᷨښԝ ᭊᮩ ḇḇᵩḜᷥṖḌ˷੯ ᭋᮩ ᖁᥥḧŚݗᷨرਲ
  12. ┠ḟ ᭅᮩ /ᷨЁᥥᕇ׌ḧਦছྡ၍ ᭆᮩ \zq{\ᷨେ࡙ ᭇᮩ ᄜۦ४ЍᷨḞ᷐ᷨښԝ ᭈᮩ ᶳᷝᶰḁҴན ᭉᮩ

    ᧶ᜍ̣ᷨḞ᷐ᷨښԝ ᭊᮩ ḇḇᵩḜᷥṖḌ˷੯ ᭋᮩ ᖁᥥḧŚݗᷨرਲ