Sansan Tech Blog

Sansanのものづくりを支えるメンバーの技術やデザイン、プロダクトマネジメントの情報を発信

連載

「弱いつながり」の誤解と本質──社会ネットワーク研究の世界(前編)

本記事はオウンドメディアの閉鎖に伴い、一部編集し転載したものです 初出:2018.06 BNL(Business Network Lab) 加筆:2022.09 弱いから有益なのではなく、つながっていない者同士をつなぐ「橋渡し」こそが本質である。Sansan株式会社のデータ化およびデー…

【R&D DevOps通信】AWS Step Functions で失敗したステップから再開する方法

こんにちは、R&D Architectグループの藤岡です。今回は Step Functions(以下SFn) が実行途中で失敗した場合に、失敗した時点から再開できるような仕組みを実現したので、その内容について共有します。<2024/2/8追記> AWS公式で Step Functions の失敗し…

【Dive into the Economics of Networks】vol.10 Dyadic Cluster-Robust Standard Error を計算する

R&D研究員の小松です。本連載ではネットワーク経済学の近年の発展について、忘備録的に書かせてもらっています。 前回まではネットワークにおける相互依存関係を考慮したモデル ERGM のミクロ的基礎づけとその推定・応用について概観してきました。 builders…

【Techの道も一歩から】第48回「Inf1のSageMaker推論エンドポイントをカスタムコンテナで試す」

こんにちは。 技術本部研究開発部の高橋寛治です。 SageMakerのInf1推論エンドポイントで機械学習モデルを試したので紹介します。 部分的に紹介しているため、SageMakerやHuggingFaceを使ったことがないと、わかりづらいかと思いますがご了承ください。

【R&D DevOps通信】Cloud ComposerのDAGでデータ基盤の転送パイプラインを監視

こんにちは。研究開発部 Architectグループにてデータエンジニアとしてデータ基盤の開発・運用を担当しているジャン(a.k.a jc)です。 4月1日に入社してから、全社横断データ基盤のCI/CD自動化、承認システムの実装、監視の強化やリファクタリングなどの業務…

【R&D DevOps通信】Cloud Composerを用いたデータ基盤の転送パイプライン構築

こんにちは。研究開発部でデータエンジニアをしている鈴木翔大です。 今回は【R&D DevOps通信】連載 9回目として、以前構築したデータ基盤の転送パイプラインについて書こうと思います。AWSのS3上に存在するデータをGCPのGCSに転送して、データのETL処理をし…

【Dive into the Economics of Networks】vol.9 ERGM で学校における Segregation を分析する

R&D 研究員の小松です。前回は Double Metropolis-Hastings 法による ERGM のパラメーター推定方法を確認し、それを R で実装してみました。 buildersbox.corp-sansan.com これまでは ERGM の理論的な話が続いていました。今回は ERGM の応用として、racial …

【R&D DevOps通信】SQSキューのメッセージ数とオートスケーリンググループのサイズに比例したオートスケーリングを行う

こんにちは、R&D Architectグループの辻田です。 今回はカスタムメトリクスを使ってターゲット追跡スケーリングを行い、費用の無駄が少ない最適なスケーリングの実現に取り組んだ内容を紹介します。 カスタムメトリクスはSQSキューのメッセージ数とオートス…

【R&D DevOps通信】Kinesis Data FirehoseでログをETL処理してRedashからクエリする

R&D Architectグループの辻田です。SBB*1 2回目の登場です。 今回は【R&D DevOps通信】連載の5回目として、Kinesis Data Firehoseを使用したログのETL処理について書こうと思います。 CloudWatch Logsサブスクリプションフィルタ + Kinesis Data Firehose + …

【R&D DevOps通信】GCP Workflows を業務で使ってみた

こんにちは、研究開発部 Architect グループで DevOps エンジニアをやっている八藤丸です。 今回は【R&D DevOps通信】連載の4回目、データ同期システムを構築した際に利用した GCP の Workflows*1 について紹介します。同じグループの張が最近 GitHub Action…

【Techの道も一歩から】第47回「StreamlitのアプリをNginxで複数ホスティングする」

こんにちは。 技術本部研究開発部の高橋寛治です。 以前に紹介したStreamlitは、非常に便利でよく使っています。 buildersbox.corp-sansan.com Webアプリとしてインターフェイスが提供されるため、ちょっとしたデモを誰かに試してもらうのが容易で重宝してい…

【R&D DevOps通信】データ基盤におけるGitHub Actionsを使ったTerraformとCloud ComposerのCI/CD

こんにちは、今年4月にSansanにジョインしたジャン(a.k.a jc)です。研究開発部Architectグループにてデータエンジニアとしてデータ基盤の開発・保守を担当しています。 今回は【R&D DevOps通信】連載の3回目、データ基盤におけるGitHub Actionsを使ったTerra…

【Techの道も一歩から】第46回「CookiecutterでPythonプロジェクトを高速に開始する」

こんにちは。 技術本部 研究開発部の高橋寛治です。 Python でプロジェクトを始める際に、ディレクトリ構成を考えたり、パッケージ方法を考えたり、もしくは何か参考になるものを見つけてコピペしたり、と意外と時間をかけていました。 これをコマンド一つで…

【Dive into the Economics of Networks】vol.8 Double Metropolis-Hastings Sampler によって ERGM のパラメーターの事後分布を推定する

Sansan R&D 研究員の小松です。前回までは、ネットワークをシミュレーションする際に発生する問題、およびその解決方法の1つについて議論してきました。 buildersbox.corp-sansan.com なぜこれらが重要かというと、効用関数のパラメーターを推定するためにネ…

【Dive into the Economics of Networks】vol.7 Large sampler を導入してネットワークシミュレーションの収束を改善する

Sansan R&D 研究員の小松です。ERGMの性質についてこれまで眺めています。前回の記事では以下を確認しました。 ERGM から生成されるネットワークの構造は、パラメーターが変わると極端に変化する(相転移)。 パラメーターの値が相転移の境界線にあるとき、ネ…

【Techの道も一歩から】第45回「pyppeteerを使いヘッドレスブラウザでログインして情報を取得する」

こんにちは。 DSOC R&D グループの高橋寛治です。 ログイン後に動的にレンダリングされたページから必要な情報を抽出する、いわゆるスクレイピングを最近行いました。 スクレイピングを行うためにはヘッドレスブラウザ*1の操作が必要です。 pyppeteerを少し…

【ネットワークの統計解析】第10回 PageRank とその周辺を探りたい

こんにちは. DSOC 研究開発部の黒木裕鷹です. 膝が痛いです. やってしまいました. なまじ走れるようになってきたのが楽しく,まだ脚ができてないにも関わらず走りすぎてしまいました... 調べてみたところ,膝の外側の靭帯(腸脛靭帯)と前十字靭帯を…

【Dive into the Economics of Networks】vol.6 ERGM から生成されるネットワークがパラメータによってどう変化するかを理解する

Sansan DSOC R&D 研究員の小松です。前回は、R で ERGM を扱うことに慣れることから始め、ERGM に関わる問題点をあげていきました。 buildersbox.corp-sansan.com そこであげた問題点は以下の通りでした。 難点その1: リンク間の相互依存関係を考慮する時、E…

【Techの道も一歩から】第43回「競技プログラミングやアルゴリズム練習サイト向けのPythonでの練習環境を整える」

こんにちは。 DSOC R&D グループの高橋寛治です。 お昼休みに、社内制度Geek Seek Workshops*1を活用し懇親会代補助を受けて、ご飯を食べアルゴリズム勉強会を行っています。 そこでは、競技プログラミングサイトやプログラミングサイトを利用し問題を解いて…

【Techの道も一歩から】第42回「Luigiとgokartを試用して比べて特徴を掴む」

こんにちは。 DSOC R&D グループの高橋寛治です。 最近は、ことあるごとにMLOpsと言っています。 そんなMLOpsの本丸とも言えるパイプラインツールの一つであるgokartを開発された西場さん(@m_nishiba)が部長ということで、使ってみないわけにはいかないgok…

【Dive into the Economics of Networks】vol.5 Exponential Random Graph Model (ERGM) を R で推定・シミュレーションしてみる

Sansan DSOC R&D 研究員の小松です。前回の記事では、ネットワーク形成ゲームが Exponential Random Graph Model (ERGM) に収束する証明を確認しました。 buildersbox.corp-sansan.com ERGM を推定することで、効用関数のパラメーター (例えば、共通の友人の…

【ML Tech RPT.】第26回 Crowd Counting (群衆の数え上げ) を学ぶ

DSOC研究員の吉村です。最近は、現代短歌について少し興味を持ち始めて、歌集を読んだりしています。様々な解釈ができるので、思考を色々と巡らすのがとても楽しいです。まだまだ基礎も分かっていないところもあるので、その辺りも知りつつ更にいろいろな角…

歴史をたどってディープラーニングを学ぶ 第十九回 GPGPU入門 CUDAによる画像フィルタ編

こんにちはニューラルネット老人こと糟谷勇児です。 このようなブログをやっていてなんですが、私自身はほとんどディープラーニングを実務で使っていません。 ディープラーニングがはまるということは、学習データが豊富で、説明力はある程度弱くてもよく、G…

【ネットワークの統計解析】第8回 事例紹介「Uber における GNN の活用」

こんにちは. DSOC 研究開発部の黒木裕鷹です. 夏の訪れを感じつつある最近ですが,ランニングをはじめました. 形から入ろうと思い,かっちょいいシューズとウェアを揃えたのですが,なんとか1週間は続いており気分が良いです. まだまだ2, 30分走るだけで…

【ML Tech RPT.】第25回 k-center クラスタリングを学ぶ

DSOC 研究員の吉村です。あまり外出できない日々が続いているので、読書に勤しんでおります。直接業務に関係の無いようなものでも、蓄積しておくことでどこかで役に立つだろうという気持ちで幅広いジャンルの本に手を出しては、本の山が部屋を埋め尽くしてい…

【Dive into the Economics of Networks】vol.4 ネットワーク形成ゲームが Exponential Random Graph Model (ERGM) に収束することを示す

Sansan DSOC R&D 研究員の小松です。前回の記事では、ネットワーク形成ゲームがポテンシャルゲームとして表せることをみました。本稿では、ポテンシャルゲームとして表せるネットワーク形成過程が Exponential Random Graph Model (ERGM) に収束することを確…

SocSci Radio #2 社会ネットワークはデザインできるか

soundcloud.com こんにちは、Sansan DSOC R&D研究員の前嶋です。 SocSci Radio powerd by DSOCの第2回を配信しました。 SocSciラジオとは SocSciラジオとは、Sansan DSOCの社会科学系データサイエンティストチームのM研究員が、 社会ネットワークの話題を中…

歴史をたどってディープラーニングを学ぶ 第十八回 GPGPUを学ぶCUDA入門編

こんにちは、ニューラルネット老人こと糟谷勇児です。最近はメルカリでアンモナイトが入っている(かもしれない)北海道の石を買って化石発掘を子どもと一緒にやっています。 売っているアンモナイト化石はどれも立派なんですが、実際自分で掘ってみると1mm…

歴史をたどってディープラーニングを学ぶ 第十七回 GPGPUを学ぶ準備編

こんにちは、ニューラルネット老人こと糟谷勇児です。以前化石集めが趣味という話を書きましたが、最近はコロナのせいかあまり新しい化石が流通せず、ちょっと退屈です。 そこでフローライトやラブラドライトなどのいわゆる天然石を集めています。それはそう…

【ML Tech RPT.】第24回 ソフトラベルを学ぶ

DSOC 研究員の吉村です. 先日スーパーに買い物に行ったところ、玄米が目に飛び込んできました. 早速買って, 玄米を初めて自分で炊きました. それまで, 全く知らなかったのですが, 炊く前にそれなりの時間, 玄米を水につけておく必要があるらしく, 結構面倒だ…

© Sansan, Inc.