SlideShare una empresa de Scribd logo
1 de 31
Workshipにおける
レコメンドエンジン実装
Shogo Ishikura
@issy_s16
自己紹介
石倉 彰悟
バックエンドエンジニア / 株式会社GIG
CakePHPをごりってやってます。
個人でこんなサービスも作ってます
● QiitaDeck: https://qiitadeck.com
● inazuma: https://inazuma.tech
https://issys16.info
( 協調フィルタリングを用いた )
レコメンドエンジンの仕組み理解
発表の目的
アジェンダ
1. Workshipについて
2. 要件定義フェーズ
a. レコメンド機能を実装したい
3. 実現方法の検討フェーズ
a. どんなレコメンドが理想か考える
b. 各種レコメンド方式と説明
4. 実装フェーズ
a. 協調フィルタリングの仕組み
b. Workshipにおける実装
c. 意識すべき点と工夫
5. まとめ
Workshipについて
Workshipについて
「コラボレーションを加速させる、フリーランス プラットフォーム」
https://goworkship.com
要件定義フェーズ
いかにベストなマッチングを増やすか
また、多い情報の中で埋もれないようにするか
要件定義フェー
ズレコメンド機能を実装したい
ユーザが「気になる!」を押しそうな
求人をレコメンドしたい
レコメンド機能を実装したい
要件定義フェー
ズ
ユーザが「気になる!」を押しそうな
求人をレコメンドしたい
=
ユーザが興味を唆られるような
求人をレコメンドしよう
レコメンド機能を実装したい
要件定義フェー
ズ
実装方法の検討フェーズ
「興味を唆られる」とは何か?
実装方法の検討フェーズ
どんなレコメンドが理想か考える
ユーザが興味を唆られるような
求人をレコメンドしよう
どんなレコメンドが理想か考える
例えば
1. 職種が同じで、高単価
1. 気になる!した求人に特徴が近い求人
1. 自分と趣向が似ているユーザが閲覧した求人
実装方法の検討フェーズ
それぞれ違ったレコメンド方式
1. 職種が同じで、高単価
1. 気になる!した求人に特徴が近い求人
1. 自分と趣向が似ているユーザが閲覧した求人
どんなレコメンドが理想か考える
実装方法の検討フェーズ
レコメンド方式一覧
各種レコメンド方式と説明
引用: https://www.slideshare.net/masayuki1986/recommendation-
ml
実装方法の検討フェーズ
レコメンド方式一覧
各種レコメンド方式と説明
引用: https://www.slideshare.net/masayuki1986/recommendation-
ml
実装方法の検討フェーズ
実装フェーズ
実装フェーズ
協調フィルタリングの仕組み
1. そのユーザと似ているユーザを見つける(類似度計算,相関分析)
1. 似ているユーザを基に、よく見られている求人などを計算し
そのユーザにレコメンドする求人を決める
1. そのユーザと似ているユーザを見つける(類似度計算,相関分析)
1. 似ているユーザを基に、よく見られている求人などを計算し
そのユーザにレコメンドする求人を決める
実装フェーズ
協調フィルタリングの仕組み
実装前に決めないといけないこと
何を基に似ていると判断するか
どの位似ているユーザの影響を結果に反映するか
実装フェーズ
Workshipにおける実装
何を基に似ていると判断するか
どの位似ているユーザの影響を結果に反映するか
気になる!した求人、閲覧した求人
全員の履歴を参照して似ているユーザほど重み付けするのではなく、
全ユーザの中から自分と傾向が似ている上位10%のみを採用
実装フェーズ
Workshipにおける実装
1. そのユーザと似ているユーザを見つける(類似度計算,相関分析)
求人A 求人B 求人C 求人D
Aさん 気になる! 気になる!
Bさん 気になる!
Cさん 気になる! 気になる!
Dさん 気になる! 気になる! 気になる!
実装フェーズ
Workshipにおける実装
1. そのユーザと似ているユーザを見つける(類似度計算,相関分析)
求人A 求人B 求人C 求人D
Aさん 気になる 気になる
Bさん 気になる
Cさん 気になる 気になる
Dさん 気になる 気になる 気になる
Aさん Bさん Cさん Dさん
Aさん - 0/4 1/4 2/4
Bさん 0/4 - 0/4 0/4
Cさん 1/4 0/4 - 2/4
Dさん 2/4 0/4 2/4 -
Jaccard係数を使った
J(A,B)=
|A∩B
||A∪B|
実装フェーズ
Workshipにおける実装
1. そのユーザと似ているユーザを見つける(類似度計算,相関分析)
Aさん Bさん Cさん Dさん
Aさん - 0.00 0.25 0.50
Bさん 0.00 - 0.00 0.00
Cさん 0.25 0.00 - 0.50
Dさん 0.50 0.00 0.50 -
Jaccard係数を使った
J(A,B)=
|A∩B
||A∪B|
求人A 求人B 求人C 求人D
Aさん 気になる 気になる
Bさん 気になる
Cさん 気になる 気になる
Dさん 気になる 気になる 気になる
実装フェーズ
Workshipにおける実装
1. そのユーザと似ているユーザを見つける(類似度計算,相関分析)
Aさん Bさん Cさん Dさん
Aさん - 0.00 0.25 0.50
Bさん 0.00 - 0.00 0.00
Cさん 0.25 0.00 - 0.50
Dさん 0.50 0.00 0.50 -
実装フェーズ
Workshipにおける実装
2. 似ているユーザを基に、よく見られている求人などを計算し
そのユーザにレコメンドする求人を決める
求人A 求人B 求人C 求人D
Aさん 気になる! 気になる!
Bさん 気になる!
Cさん 気になる! 気になる!
Dさん 気になる! 気になる! 気になる!
実装フェーズ
意識すべき点と工夫
ユーザが増えれば増えるほど、計算量が乗数で増えていく
ユーザ数のループだけでも
ユーザ数が100人なら、100*100 = 10,000ループ
ユーザ数が10,000人なら、10000*10000 = 100,000,000ループ
※しかもそこから履歴を参照する・・・。
ISSUE
実装フェーズ
意識すべき点と工夫
全ユーザ分見なくていいように、INDEXを用意した
SOLUTION
KEY_userId VALUE(jobIds)
index_likejob_1 [1,3]
index_likejob_2 [2]
index_likejob_3 [1,4]
index_likejob_4 [1,3,4]
気になるした求人リスト
KEY_jobId VALUE(userIds)
index_likeuser_1 [1,3,4]
index_likeuser_2 [2]
index_likeuser_3 [1,4]
index_likeuser_4 [3,4]
求人を気になるしたユーザリスト
まとめ
まと
め
参考になりました
■協調フィルタリングとは
https://www.albert2005.co.jp/knowledge/marketing/recommendation_basics/coll
aborative_filtering
■協調フィルタリング型レコメンドエンジン開発のため仕様について考える
https://qiita.com/haminiku/items/ca7eec8ed09982aec9b5
■【レコメンド】内容ベースと協調フィルタリングの長所と短所・実装方法まとめ
https://qiita.com/haminiku/items/f5008a57a870e0188f63
有難うございました
Good is good.
We provide opportunities to the SEKAI by fusing technology and ideas.
テクノロジーとクリエイティブでセカイをより良くする
のこと

Más contenido relacionado

La actualidad más candente

普段Reactを触ってる僕が Angularを触ってみた感想を共有する
普段Reactを触ってる僕が Angularを触ってみた感想を共有する普段Reactを触ってる僕が Angularを触ってみた感想を共有する
普段Reactを触ってる僕が Angularを触ってみた感想を共有するkazuki matsumura
 
イベント駆動AngularJS / 今から書くAngular 2.0
イベント駆動AngularJS / 今から書くAngular 2.0イベント駆動AngularJS / 今から書くAngular 2.0
イベント駆動AngularJS / 今から書くAngular 2.0Okuno Kentaro
 
Angular 4がやってくる!? 新機能ダイジェスト
Angular 4がやってくる!? 新機能ダイジェストAngular 4がやってくる!? 新機能ダイジェスト
Angular 4がやってくる!? 新機能ダイジェストMasahiko Asai
 
クリエイティブの視点から探るAngular 2の可能性
クリエイティブの視点から探るAngular 2の可能性クリエイティブの視点から探るAngular 2の可能性
クリエイティブの視点から探るAngular 2の可能性Yasunobu Ikeda
 
Angular js開発事例
Angular js開発事例Angular js開発事例
Angular js開発事例Shun Takeyama
 

La actualidad más candente (6)

React and-rx
React and-rxReact and-rx
React and-rx
 
普段Reactを触ってる僕が Angularを触ってみた感想を共有する
普段Reactを触ってる僕が Angularを触ってみた感想を共有する普段Reactを触ってる僕が Angularを触ってみた感想を共有する
普段Reactを触ってる僕が Angularを触ってみた感想を共有する
 
イベント駆動AngularJS / 今から書くAngular 2.0
イベント駆動AngularJS / 今から書くAngular 2.0イベント駆動AngularJS / 今から書くAngular 2.0
イベント駆動AngularJS / 今から書くAngular 2.0
 
Angular 4がやってくる!? 新機能ダイジェスト
Angular 4がやってくる!? 新機能ダイジェストAngular 4がやってくる!? 新機能ダイジェスト
Angular 4がやってくる!? 新機能ダイジェスト
 
クリエイティブの視点から探るAngular 2の可能性
クリエイティブの視点から探るAngular 2の可能性クリエイティブの視点から探るAngular 2の可能性
クリエイティブの視点から探るAngular 2の可能性
 
Angular js開発事例
Angular js開発事例Angular js開発事例
Angular js開発事例
 

Similar a LT13(前半)Workshipにおけるレコメンドエンジン実装

Goji とレイヤ化アーキテクチャ
Goji とレイヤ化アーキテクチャGoji とレイヤ化アーキテクチャ
Goji とレイヤ化アーキテクチャShiroyagi Corporation
 
[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜
[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜
[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜Ryo Sasaki
 
Ml15minutes 190330
Ml15minutes 190330Ml15minutes 190330
Ml15minutes 190330Rio Kurihara
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについてMasahito Zembutsu
 
【evar7】web担当者forum事例_part3
【evar7】web担当者forum事例_part3【evar7】web担当者forum事例_part3
【evar7】web担当者forum事例_part3Shinichiro Oho
 
恊働ロボットCOROの開発における形式的仕様の適用事例
恊働ロボットCOROの開発における形式的仕様の適用事例恊働ロボットCOROの開発における形式的仕様の適用事例
恊働ロボットCOROの開発における形式的仕様の適用事例Life Robotics
 
自動化を支えるCI/CDパイプライン
自動化を支えるCI/CDパイプライン自動化を支えるCI/CDパイプライン
自動化を支えるCI/CDパイプラインJunichiMitsunaga
 
Introduction to NetOpsCoding
Introduction to NetOpsCodingIntroduction to NetOpsCoding
Introduction to NetOpsCodingTaiji Tsuchiya
 
クラウド環境下におけるAPIリトライ設計
クラウド環境下におけるAPIリトライ設計クラウド環境下におけるAPIリトライ設計
クラウド環境下におけるAPIリトライ設計Kouji YAMADA
 
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱Koichi ITO
 
Pyconjp2016 pyftplib
Pyconjp2016 pyftplibPyconjp2016 pyftplib
Pyconjp2016 pyftplibShinya Okano
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編Fixstars Corporation
 
Laravel5を使って開発してみた
Laravel5を使って開発してみたLaravel5を使って開発してみた
Laravel5を使って開発してみたTakeo Noda
 
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用DeNA
 
Django ORM道場:クエリの基本を押さえ,より良い形を身に付けよう
Django ORM道場:クエリの基本を押さえ,より良い形を身に付けようDjango ORM道場:クエリの基本を押さえ,より良い形を身に付けよう
Django ORM道場:クエリの基本を押さえ,より良い形を身に付けようTakayuki Shimizukawa
 
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!史識 川原
 
OpManager導入事例 日テレITプロデュース様
OpManager導入事例 日テレITプロデュース様OpManager導入事例 日テレITプロデュース様
OpManager導入事例 日テレITプロデュース様ManageEngine, Zoho Corporation
 
第9回Symfony勉強会LT Symfony2 meets AngularJS #symfony_ja
第9回Symfony勉強会LT Symfony2 meets AngularJS #symfony_ja第9回Symfony勉強会LT Symfony2 meets AngularJS #symfony_ja
第9回Symfony勉強会LT Symfony2 meets AngularJS #symfony_ja77web
 
Infrastrucure as a CodeにおけるJenkinsの役割
Infrastrucure as a CodeにおけるJenkinsの役割Infrastrucure as a CodeにおけるJenkinsの役割
Infrastrucure as a CodeにおけるJenkinsの役割Takashi Honda
 
Mashup Awards は 新しい技術を試す 絶好の機会です
Mashup Awards は新しい技術を試す絶好の機会ですMashup Awards は新しい技術を試す絶好の機会です
Mashup Awards は 新しい技術を試す 絶好の機会ですNobuhiro Nakajima
 

Similar a LT13(前半)Workshipにおけるレコメンドエンジン実装 (20)

Goji とレイヤ化アーキテクチャ
Goji とレイヤ化アーキテクチャGoji とレイヤ化アーキテクチャ
Goji とレイヤ化アーキテクチャ
 
[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜
[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜
[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜
 
Ml15minutes 190330
Ml15minutes 190330Ml15minutes 190330
Ml15minutes 190330
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて
 
【evar7】web担当者forum事例_part3
【evar7】web担当者forum事例_part3【evar7】web担当者forum事例_part3
【evar7】web担当者forum事例_part3
 
恊働ロボットCOROの開発における形式的仕様の適用事例
恊働ロボットCOROの開発における形式的仕様の適用事例恊働ロボットCOROの開発における形式的仕様の適用事例
恊働ロボットCOROの開発における形式的仕様の適用事例
 
自動化を支えるCI/CDパイプライン
自動化を支えるCI/CDパイプライン自動化を支えるCI/CDパイプライン
自動化を支えるCI/CDパイプライン
 
Introduction to NetOpsCoding
Introduction to NetOpsCodingIntroduction to NetOpsCoding
Introduction to NetOpsCoding
 
クラウド環境下におけるAPIリトライ設計
クラウド環境下におけるAPIリトライ設計クラウド環境下におけるAPIリトライ設計
クラウド環境下におけるAPIリトライ設計
 
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱
 
Pyconjp2016 pyftplib
Pyconjp2016 pyftplibPyconjp2016 pyftplib
Pyconjp2016 pyftplib
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
 
Laravel5を使って開発してみた
Laravel5を使って開発してみたLaravel5を使って開発してみた
Laravel5を使って開発してみた
 
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
 
Django ORM道場:クエリの基本を押さえ,より良い形を身に付けよう
Django ORM道場:クエリの基本を押さえ,より良い形を身に付けようDjango ORM道場:クエリの基本を押さえ,より良い形を身に付けよう
Django ORM道場:クエリの基本を押さえ,より良い形を身に付けよう
 
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
 
OpManager導入事例 日テレITプロデュース様
OpManager導入事例 日テレITプロデュース様OpManager導入事例 日テレITプロデュース様
OpManager導入事例 日テレITプロデュース様
 
第9回Symfony勉強会LT Symfony2 meets AngularJS #symfony_ja
第9回Symfony勉強会LT Symfony2 meets AngularJS #symfony_ja第9回Symfony勉強会LT Symfony2 meets AngularJS #symfony_ja
第9回Symfony勉強会LT Symfony2 meets AngularJS #symfony_ja
 
Infrastrucure as a CodeにおけるJenkinsの役割
Infrastrucure as a CodeにおけるJenkinsの役割Infrastrucure as a CodeにおけるJenkinsの役割
Infrastrucure as a CodeにおけるJenkinsの役割
 
Mashup Awards は 新しい技術を試す 絶好の機会です
Mashup Awards は新しい技術を試す絶好の機会ですMashup Awards は新しい技術を試す絶好の機会です
Mashup Awards は 新しい技術を試す 絶好の機会です
 

Más de GIG inc.

LT38テーマ3-2
LT38テーマ3-2LT38テーマ3-2
LT38テーマ3-2GIG inc.
 
LT38テーマ3-1
LT38テーマ3-1LT38テーマ3-1
LT38テーマ3-1GIG inc.
 
LT38テーマ2-2
LT38テーマ2-2LT38テーマ2-2
LT38テーマ2-2GIG inc.
 
LT38テーマ2-1
LT38テーマ2-1LT38テーマ2-1
LT38テーマ2-1GIG inc.
 
LT38テーマ1-2
LT38テーマ1-2LT38テーマ1-2
LT38テーマ1-2GIG inc.
 
LT38テーマ1-1
LT38テーマ1-1LT38テーマ1-1
LT38テーマ1-1GIG inc.
 
lt23後半
lt23後半lt23後半
lt23後半GIG inc.
 
lt23前半
lt23前半lt23前半
lt23前半GIG inc.
 
LT.22 GitHub Actionsを触ってみた話
LT.22 GitHub Actionsを触ってみた話LT.22 GitHub Actionsを触ってみた話
LT.22 GitHub Actionsを触ってみた話GIG inc.
 
LT.22 機械学習におけるPDCAを回せる環境構築の話
LT.22 機械学習におけるPDCAを回せる環境構築の話 LT.22 機械学習におけるPDCAを回せる環境構築の話
LT.22 機械学習におけるPDCAを回せる環境構築の話 GIG inc.
 
LT.21 SPIN法を活用した人心掌握術
LT.21 SPIN法を活用した人心掌握術LT.21 SPIN法を活用した人心掌握術
LT.21 SPIN法を活用した人心掌握術GIG inc.
 
LT.21 スゴいチームになるフィードバック術
LT.21 スゴいチームになるフィードバック術LT.21 スゴいチームになるフィードバック術
LT.21 スゴいチームになるフィードバック術GIG inc.
 
LT.20 コーディングとマジックナンバー
LT.20 コーディングとマジックナンバーLT.20 コーディングとマジックナンバー
LT.20 コーディングとマジックナンバーGIG inc.
 
LT.20 Wordpress x nuxt.jsで実現するSPA
LT.20 Wordpress x nuxt.jsで実現するSPALT.20 Wordpress x nuxt.jsで実現するSPA
LT.20 Wordpress x nuxt.jsで実現するSPAGIG inc.
 
【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(DONGURI)」
【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(DONGURI)」【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(DONGURI)」
【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(DONGURI)」GIG inc.
 
【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(GIG)」
 【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(GIG)」 【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(GIG)」
【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(GIG)」GIG inc.
 

Más de GIG inc. (20)

Lt41
Lt41Lt41
Lt41
 
Lt40
Lt40Lt40
Lt40
 
Lt39
Lt39Lt39
Lt39
 
LT38テーマ3-2
LT38テーマ3-2LT38テーマ3-2
LT38テーマ3-2
 
LT38テーマ3-1
LT38テーマ3-1LT38テーマ3-1
LT38テーマ3-1
 
LT38テーマ2-2
LT38テーマ2-2LT38テーマ2-2
LT38テーマ2-2
 
LT38テーマ2-1
LT38テーマ2-1LT38テーマ2-1
LT38テーマ2-1
 
LT38テーマ1-2
LT38テーマ1-2LT38テーマ1-2
LT38テーマ1-2
 
LT38テーマ1-1
LT38テーマ1-1LT38テーマ1-1
LT38テーマ1-1
 
lt37
lt37lt37
lt37
 
lt23後半
lt23後半lt23後半
lt23後半
 
lt23前半
lt23前半lt23前半
lt23前半
 
LT.22 GitHub Actionsを触ってみた話
LT.22 GitHub Actionsを触ってみた話LT.22 GitHub Actionsを触ってみた話
LT.22 GitHub Actionsを触ってみた話
 
LT.22 機械学習におけるPDCAを回せる環境構築の話
LT.22 機械学習におけるPDCAを回せる環境構築の話 LT.22 機械学習におけるPDCAを回せる環境構築の話
LT.22 機械学習におけるPDCAを回せる環境構築の話
 
LT.21 SPIN法を活用した人心掌握術
LT.21 SPIN法を活用した人心掌握術LT.21 SPIN法を活用した人心掌握術
LT.21 SPIN法を活用した人心掌握術
 
LT.21 スゴいチームになるフィードバック術
LT.21 スゴいチームになるフィードバック術LT.21 スゴいチームになるフィードバック術
LT.21 スゴいチームになるフィードバック術
 
LT.20 コーディングとマジックナンバー
LT.20 コーディングとマジックナンバーLT.20 コーディングとマジックナンバー
LT.20 コーディングとマジックナンバー
 
LT.20 Wordpress x nuxt.jsで実現するSPA
LT.20 Wordpress x nuxt.jsで実現するSPALT.20 Wordpress x nuxt.jsで実現するSPA
LT.20 Wordpress x nuxt.jsで実現するSPA
 
【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(DONGURI)」
【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(DONGURI)」【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(DONGURI)」
【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(DONGURI)」
 
【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(GIG)」
 【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(GIG)」 【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(GIG)」
【Tech Trend Talk vol.19】社外向け勉強会「拡張するデザイン -(GIG)」
 

LT13(前半)Workshipにおけるレコメンドエンジン実装