サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
WBC 侍ジャパン
buildersbox.corp-sansan.com
こんにちは、研究開発部のDataAnalysisグループの糟谷勇児です。 今回は、統計学について書いていこうと思います。ただし今回の対象は研究員の方ではなく、統計学初心者の方を想定しています。 皆さんはスマホのゲームはやりますか? 最近はガチャでアイテムやキャラをゲットするゲームが多いですよね。 私もガチャが大好きです。 ガチャはいいですね。モンスターハンターなどのゲームも好きですが、最強の武器を手に入れるのはいつも一番強い敵を周回して素材を集めた後で、それ以上倒しに行きたい敵がいなかったりします。 しかしガチャは運次第では最初から最強のぶっ壊れキャラを引くことができるのです。 ところで、私の趣味はガチャの期待値計算をして某巨大掲示板に投稿することです。 そんな生活をしていて思いついてしまいました! 「ガチャだけで大体の統計学を学べるんじゃね?」 統計学はギャンブルから生まれたともいわれて
はじめに NineOCR とは NineOCR が抱える課題 Amazon SageMaker Training とは SageMaker Training の始め方 事前準備 AWS が提供しているコンテナイメージを拡張する方法 独自のコンテナイメージに SageMaker Training Toolkit をインストールする方法 スクラッチでコンテナイメージを作成する方法 まとめ 学習ジョブの実行 学習結果の確認 終わりに はじめに こんにちは、研究開発部の石井です。 本エントリーでは、弊社の OCR エンジン「NineOCR」の開発フローに SageMaker Training を導入した話を紹介します。 NineOCR とは NineOCR は Sansan が独自に開発した名刺特化の OCR エンジンです。 名刺をデータ化するフローの中で実際に活用されており、タスクの高速化・高精
はじめに 技術本部 R&D の小松です。先日、一橋大学の手島健介教授より『経済セミナー』2023年2・3月号をご恵贈いただきました。 www.nippyo.co.jp 手島教授はその中で「米国経済学会データエディター制度の取り組み 再現性向上のためのreplicationチェック」を書かれています。私たちが『経済セミナー』にて「実証研究マネジメントのためのツールキット」の連載時に、手島教授を始めとした研究者の皆さんに草稿を確認いただいたのですが、このトピックはその際に出た議論をまとめられたものです。 そこでは手島教授が体験した、採択された研究論文の再現性チェックのプロセスが事細かに書かれており、興味深いです。現在 AEA P&P のために replication code を準備している私たちにとっても、大変参考になっています。 その中で論文の筆者として行うべきこととして、以下の4点が挙げ
こんにちは。研究開発部の青見 (@nersonu) です。 そろそろ花粉症の季節ですね。週1でしか出社しない私は、なんとか引きこもって数ヶ月しのぎたいところです。 さて、今回は BERTopic という OSS について、さっくりとした手法の解説もしつつ、簡単に文書のクラスタリングを試そうと思います。 github.com 目次 目次 BERTopic とは 文書の埋め込み 文書のクラスタリング トピック表現 手法の概要まとめ BERTopic を試してみる インストール モデルのロード クラスタリングの実行 結果の確認 トピックごとの単語の重要度 トピックごとの文書を眺めてみる 次元削減手法・クラスタリング手法の変更 使ってみての所感 BERTopic とは BERTopic はいわゆるトピックモデリングを行うための OSS です。 トピックモデルは、文書集合から「トピック」は何が含まれ
社内に蓄積された顧客データを整理・統合し、マーケティングに最適なデータに進化させる顧客データ統合サービス「Sansan Data Hub」。そして、あらゆる請求書をオンラインで受け取り、請求書受領から月次決算を加速するインボイス管理サービス「Bill One」。いずれも急成長を遂げており、Sansan株式会社の事業の柱になっているサービスです。 これらのサービスは、データの処理効率やシステムの信頼性などを向上させるために、さまざまなアーキテクチャの工夫が行われています。今回は「Sansan Data Hub」と「Bill One」それぞれの開発の中核を担う千田智己と加藤耕太にインタビューし、前後編の2回に分けて記事化。前編では、両サービスのアーキテクチャ設計の工夫や思想について語ってもらいました。 【Sansan Data Hub】アーキテクチャ解説 ――「Sansan Data Hub」
はじめに こんにちは、 Mobile Application Group で iOS アプリエンジニアをやっている多鹿です。 前回は Sansan / Eight の iOS アプリにて共通で使っている社内ライブラリを Swift Package Manager (以降 SwiftPM) に対応させた話の「その1」を公開しました。 buildersbox.corp-sansan.com 今回はもう一つの社内ライブラリを SwiftPM に対応させた話になります。 はじめに SwiftPM 対応した社内ライブラリについて 対象リポジトリのディレクトリ構成 対応手順と注意点 1. ライブラリが依存する OpenCV の xcframework 化 OpenCV の xcframework 生成スクリプトを利用する ① Python スクリプトを動かすのに必要な依存ツールのインストール ② Op
「公立はこだて未来大学」にお招きいただき、学生さん向けに講義をさせていただきました。 講義で用いたスライドは公開済みで、既にTwitterやはてブでも反響をいただいております。 スライド内には埋め込み動画やリンク等、Speaker Deckでは再現されないものもあるので、講義資料をあらためて「記事形式で」全ページ公開したいと思います。 講義のテーマ/構成について 講義のタイトルは「学びを仕事に繋げる」としていますが、 「海外進出」(外貨を稼ぐという選択肢を持つ) 「成長サイクル」(継続的に成長する) と併せた 3本立て 1 にしています。 講義のテーマは非常に悩んだのですが、私の経験から学生さん向けに話せるもっとも価値のある内容はなんだろう?どうやったら90分飽きずに聞いてもらえるだろう?と考えた結果このようになりました。 2 学生さん向けの講演ではありますが、現場でバリバリ活躍されている
研究開発部Architectグループの堤(@shu223)と申します。新任マネージャーとして自身のキャッチアップも兼ねて、研究開発部の技術や成果物について紹介する記事を書いています。 buildersbox.corp-sansan.com 第5弾となる今回は、Sansan/Eightのニュース配信システムがどのように実現されているか、またその中で研究開発部のどのような技術が利用されているかについて紹介したいと思います。 ニュースの種類 現在、SansanやEightでは以下のようなニュースを配信しています。 人事異動情報 社内の共通人脈の通知 企業の最新ニュース 同業他社の最新動向 ニュースフィード 企業の最新ニュース ニュース配信のための自然言語処理技術 質の高いビジネスニュースを配信するために、以下のような研究開発部の自然言語処理技術が利用されています。 固有表現抽出 ジャンル判定 プ
はじめに 研究開発部の小松です。 本記事は Sansan Advent Calendar 2022 の17日目の記事になります。 adventar.org 普段こちらのブログではネットワーク経済学をテーマに細々と書いています。今回は少し話題を変えて、日頃の分析でお世話になっている R のパッケージ {targets} に (半年ぐらい前になりますけれど) OSSコントリビュートした話をします。 普段の業務では Python と R 両方使っていますが、素早い対応が求められる分析業務では私は R を使っています。{tidyverse} によるデータハンドリングに慣れた身からすると、pandas での処理はまどろっこしく感じられて未だに慣れません。*1 その R を用いた分析の生産性を向上に大きく寄与しているのが、1年程前に使い始めた {targets} です。以下の記事にも、研究開発部の R
こんにちは。研究開発部Architectグループ、ML Platformチームの神林です。ML Platformチームは主に研究開発部の成果を最大化するための基盤開発を行っているチームです。この記事では、Kubernetes(EKS)を導入することになった経緯や、周辺技術の選定、運用する上で必要な設計について書いていきます。 導入の経緯 研究開発部では、プロダクトのコアな技術を開発している特性上、プロダクト組織からの要求等で、絶え間なく新しい機能を提供していく必要があります。私達Architectグループのエンジニアは、新しい機能提供のためのインフラ構築を行っていますが、毎回0からアーキテクチャ設計を行っていたため、構築するためにそれなりに大きな工数をかけていました。また、デプロイ方法もCodeBuild、CodePipeline、GitHub Actions等様々なサービスを使っており、
研究開発部Architectグループの堤と申します。新任マネージャーとして自身のキャッチアップも兼ねて、研究開発部の技術や成果物について紹介する記事を書いています。 第三弾となる今回は、Sansanの名刺データ化フローの中で使われている弊社が独自開発した名刺に特化した文字認識エンジン「NineOCR」についてご紹介します。 Sansanの名刺データ化フロー NineOCRについては本日プレスリリースが出た通り、データ化範囲が名刺記載の「全項目」 1 となり、いずれの項目でも高い読み取り精度を実現しています。 独自開発の背景 名刺のデータ化では、Emailアドレスや電話番号などを1文字間違えただけでも大問題です。 Sansanでは従来より、オペレーションセンターでの人力処理とコンピュータによる処理をうまく組み合わせて、高精度を維持しつつ、コスト削減やスケーラビリティの両立を実現してきました。
研究開発部Architectグループの堤と申します。新任マネージャーとして自身のキャッチアップも兼ねて、研究開発部の技術や成果物について紹介する記事を書いています。 buildersbox.corp-sansan.com 第二弾となる今回は、「スマキャプ」と社内で呼んでいる技術について紹介します。スマキャプではスマホ上で機械学習モデルの推論処理をオンデバイスで行っているのですが、筆者がもともとiOSエンジニアだったこともあり、本記事ではそちらについて厚めに解説しようと思います。 OCR結果を即時に返すSmart Captured(スマキャプ) 営業DXサービス「Sansan」やキャリアプロフィール「Eight」を縁の下で支える社内システムのひとつが、「GEES」と呼ばれる名刺のデータ化システムです。GEESは、セキュアに、高精度に、低コストに名刺をデータ化するためのシステムです。 Sans
研究開発部 Architectグループの堤と申します。今年4月より、まったくの門外漢だったところから研究開発部でマネジメントを担当することになりました。入社して早6カ月が経とうとしていますが、マネジメントの面でも技術面でもまだまだ学ぶことだらけです。キャッチアップしたことの整理も兼ねて、これからしばらくの間、研究開発部の技術や成果物について紹介する記事を書いていきたいと思います。 まず第一弾として、本記事ではSansanの名刺データ化フロー 1 の中で使われている研究開発部の技術についてご紹介します。 2 切り出し(背景分離) 物体検出・セグメンテーション技術を用いて、背景から名刺を切り出します。 こちらは、スマホのカメラ経由で名刺を取り込む場合は、オンデバイスで処理を行っています。こちらについてはまた記事を書きたいと思っています。(弊社ではこの技術を「Smart Captured」略して
Bill One 開発組織 ( *1 ) のグループマネージャーをしている山口です。 日々、マネージャーの役割として数十名の仲間と話す機会があり、成長観点でスキル向上の相談を受けることがあります。単にスキルといっても業務を遂行するためには多種多様なスキルが必要です。それゆえ、どのスキルに向き合うか悩んでいる人が多いように感じます。本記事はそのような人のサポートになればと思い執筆しています。 本記事ではスキルを便宜的にハードスキル、ソフトスキルと分類し、現代のエンジニアに要求されるスキルを考察します。そして、メタスキルという「スキルを俯瞰したスキル」の重要性について触れます。 ※ 本記事で扱う各スキルの概念は学問分野、ビジネス分野において、あいまいな使われ方をしています。あくまでも、とある組織のマネージャーが日頃の業務を通して得た経験からの整理としてご覧ください。 ハードスキル、ソフトスキル
本記事はオウンドメディアの閉鎖に伴い、一部編集し転載したものです 初出:2018.06 BNL(Business Network Lab) 加筆:2022.09 弱いから有益なのではなく、つながっていない者同士をつなぐ「橋渡し」こそが本質である。Sansan株式会社のデータ化およびデータ活用組織、技術本部 研究開発部の研究員、前嶋直樹が解説。前編・中編・後編の3つの記事に分けてお届けする。 SNSが普及し、より多くの人と継続してコミュニケーションが取れるようになったことにより、1970年代に社会学の分野で提示されていた「弱いつながり」の価値に、最近あらためて注目が集まっている。 しかし、そもそも「弱いつながり」という考え方は、社会ネットワーク理論の研究から出てきたものである。そこでBNL編集部は、Eightの運営会社であるSansan株式会社のデータ化およびデータ活用を担う技術本部 研究開
こんにちは。Sansan Tech Blog 編集部です。 先日Speaker Deckに「Bill One 開発エンジニア 紹介資料」を公開しました。 speakerdeck.com この記事では資料を元に、Sansanが提供するインボイス管理サービス「Bill One」の開発組織についてご紹介します。 Bill Oneとは さまざまな方法・形式で届く請求書をオンラインで一括受領し素早くデータ化する、社内の請求書をクラウド上で一元管理できるサービスです。 bill-one.com 2022年7月には、インボイス制度を見据え「請求書発行機能」の提供も開始しています。 開発組織の体制 Bill Oneのプロダクト開発チームにはPdMやアーキテクト、エンジニア、デザイナーの約40人が所属しています。 チームは表参道の本社、関西支店、福岡支店の3拠点に置かれており、1チーム5名前後で6チームあり
技術本部 Eight Engineering Unit(社内通称:Eight EU)の秋本です。普段は Eight をインフラ面からお世話することでご飯を食べています。 酷暑が続いていますね。酷暑は人々の健康を害し、健康が害されると稼動可能な人員が減り、人員が減ると業務負荷が増え、業務負荷が増えるとオペミスが発生しやすくなります。オペミスが発生してもバックアップがあれば最悪なんとかできる事が多く、もはや運用作業にはバックアップ取得が欠かせぬものとなっています。 本項では Eight におけるバックアップ取得の前史を述べ、そのうえで AWS Backup を導入していい感じになった風景を述べるものになります。 AWS Backup 導入まで Eight で使用しているデータの置き場所は以下があります。Eight では現状 AWS のみを使用しています: サービス 用途 S3 名刺画像データ、
こんにちは。Sansan Tech Blog 編集部です。 2022年7月27日に、LINE社・SmartHR社・freee社・Sansanの4社合同「サーバーサイドエンジニア採用説明会」がオンラインにて開催されました。 この記事では、登壇した加畑(技術本部 Sansan Engineering Unit / テクニカルリード)の登壇資料をもとに「Sansan」のサーバサイドエンジニアの仕事や働く環境、現在の課題などをご紹介します。 当日の様子も公開されていますので、ぜひ合わせてご覧ください。 youtu.be sansan.connpass.com Sansanのサーバサイドエンジニアについて speakerdeck.com Sansanが提供するサービス Sansanでは、人と企業にかかわる出会いをビジネスチャンスにつなげるデータベースとして、複数のプロダクトを提供しています。 その中
技術本部 R&D研究員の前嶋です。梅雨の季節ですが、少しでも快適に過ごせるようにOnのCloud 5 wpを購入しました。水に強くて軽快な履き心地で最高ですね。(追記:この記事の公開作業をしている間に梅雨が終わってしまいました) 今回は、データフレームのテストについての記事です。 データフレームのテストをどう書くか データが中心となるサービスのネックになるのが テストをどう書くか です。というのも、データフレームは行×列の構造になっているため、入力あるいは出力値がデータフレームになるような関数が多いプログラムでは、テストケースを書くのが非常に面倒です。仕様の変更があった場合、それぞれのテスト用の疑似データに修正を加えることを考えると、より簡潔にデータフレームのバリデーションをする方法が欲しいところです。実は、データフレームのテストはProperty Based Testingという考え方と
データ戦略部*1でエンジニアをしています、22新卒の金子です。 突然ですが、皆さんはコードにアノテーションコメントを使っていますか?アノテーションコメントというのはTODO、FIXME、NOTEなど、コメントに何かしらのプレフィックスを付けて、コメントの意図、性質を分かりやすくするというものです。 今回の記事では、その中でも最もよく使われるであろう、TODOコメントとの向き合い方について考えたいと思います。 TODOコメントの問題点 何の気なしにTODOコメントを使っていると、以下のような問題が生じます。 数カ月前に書かれたTODOコメントが未対応のまま放置されている。 対応済みのTODOコメントが消されていない。 メンバーによってTODOコメントの温度感が違う。 このような理由から、TODOコメントは増加の一途をたどります。私の所属するプロジェクトはまだ発足から日が浅く、古くとも数カ月前
Bill One Entry*1グループの秋山です。 1. はじめに 2010年代前半に登場したReactやVue.jsに代表される宣言的UI実装は、大規模なSPAの構築を可能にしました。その一方、フロントエンド領域に新たなアーキテクチャが導入されたことで、それまでWebアプリケーション開発で定石とされたテスト手法を適用しづらいケースが増え、新たなベストプラクティスが求められるようになりました。 その要請に応える形で、2010年代後半にはフロントエンドのテスト手法に緩やかなパラダイムシフトがありました。この記事ではそのパラダイムシフトを振り返りながら、フロントエンドで必要なテストについて考察し、最後にChromaticを用いたビジュアルリグレッションテストを紹介します。 2. Testing Pyramid と フロントエンド テストを語る際によく持ち出されるメタファとして、Testing
Sansan株式会社でAndroidアプリのアーキテクト・マネジメントをしている山口です。今回Sansan/Eightを始めマルチプロダクト体制にシフトしていく中でモバイルのアプリ横断チーム「Future Successチーム」ができたのでそのことについて書きたいと思います。 なぜアプリ横断チームを作ったのか? Sansan株式会社ではSansanやEightを始め、Bill OneやContract Oneなどさまざまなプロダクトが生まれ、ソフトウェアエンジニアの体制がマルチプロダクトに向けて一新されました。 prtimes.jp その中でモバイルエンジニアはMobile Application Groupとして1つのグループになりました。しかし、発足当時は同じグループという箱に入っただけでそれぞれが独立して開発を進めるだけの組織になっていてグループとして一緒になった利点を活かせずいまし
こんにちは、技術本部 Mobile Application グループの山名です。 WWDC から早くも1ヶ月が経とうとしており、時の流れの速さを感じています... (ちなみに自分は今年も What’s new in UIKit があることに絶望したのが一番印象に残っています) そんなことはさておき、今回は Sansan アプリにおける iOS 12 のサポート終了対応についてお話しします。 iOS 12 というと大分前なので、既に世間には沢山知見が溜まっていて楽勝やろなあ…と高を括っていたのですが、思わぬ地雷を踏んでしまったのでぜひ最後までお楽しみください。 修正した内容 KeyWindow の取得方法 statusBar 系の取得方法 UIActivityIndicatorView.Style の指定方法 特定 OS でのみ TabBar のテキストが見切れてしまう その他 おわりに 修
初めまして! 2022年の3月に入社しました渡邉です。 現在はデータ戦略部という部署に所属しておりまして、多種多様なデータを収集・活用するためのサービス開発に携わっています。 タイトルにある通り、今更になって Shift_JIS と格闘する羽目になったのですが、その背景として長期に渡って稼働していたシステムの一部をリプレイスすることになったことがあります。 旧システムは他社のシステムとデータを Shift_JIS でエンコードしたファイルでやりとりしているのですが、これは他社が保守しているシステムとのファイル連携であり、リプレイスプロジェクト期間中に連携ファイル仕様を変えることは現実的ではないという判断です。 背景 突然ですが、皆さまはこれらの文字の違いがわかりますか? 1. − 2. - 3. ー 正解はそれぞれ、 1. 全角のマイナス 2. ハイフン 3. 漢字の一 となっています。
こんにちは、技術本部 Bill One Engineering Unitの江川です。 2021年4月に入社し、早くも入社から1年と2ヶ月が経過してしまいました。 いい機会なので今回は入社から今までを振り返り、新卒としてのBill Oneでの経験や学び、感じたことについてお話ししていこうと思います。 自己紹介 はじめに簡単に自己紹介をします。 私は大学院卒業後、2021年4月にSansan株式会社に新卒として入社しました。 入社前は大学院で自然言語処理の研究をしていたのと、スタートアップでプロダクトの立ち上げをやっていました。 私は就活において企業のミッション・ビジョン・バリューといった組織や文化的な側面を重要視しており、数社を比較した上で最終的にはSansanが最も自分に合ってると感じたので「自分の選んだ道を正解にするぞ!」という気持ちを胸に入社を決意しました。 入社後は新卒としての2週間
はじめまして。 技術本部 Quality Assuaranceグループの岡山です。QAグループとして新たにBill Oneに参画しました。そこで今回は「一人目QAの始め方」についてお話をしたいと思います。 一人目QAとして入ることになったきっかけ 今まではQAグループとしては、プロパーの数の問題もあり、Sansan(PC)、Sansan(mobile)、Data Hub、Eightの4つのプロダクトに参画し、プロダクトの品質を高める活動をしてきましたが、Bill Oneの開発側の体制が大幅に拡大することに伴い、メンバーの増員に耐えうる品質保証体制の確保が急務となり、QAも参画する運びとなりました。 一人目QAとして考えたこと はじめに開発側にプロダクトが抱えている課題感やAsIsとToBeのチーム体制についてヒアリングしました。 ヒアリング結果として上がってきた解決すべき課題は以下のとおり
こんにちは。Eight でエンジニアをしている鳥山(@pvcresin)です。 散歩が趣味なので、暖かくなってきて嬉しい今日このごろです。 さて今回は Web フロントエンドのビルド時間短縮のため、esbuild-loader を導入した話をしたいと思います。 背景 ビルドにかかる時間はプロダクトが大きくなるにつれてじわじわ伸びていき、開発者体験(DX)を悪くする原因となるため、常に短縮する方法を考える必要があります。 Eight の Web フロントエンドは主に TypeScript・React で開発を行っており、ビルドには webpack を使用していますが、 ビルド時間の大部分はこの TypeScript や React の JSX 記法を JavaScript に変換する処理の時間です。 そこで、この処理を代替することのできるより高速なツールを使うことでビルド時間を短縮しようと考
Eightでフロントエンドエンジニアをしている青山です。 今回はEightのCI環境にtextlintという文書校正ツールを導入してみたので、その経緯や実施した内容をお伝えします。 サービスを複数抱えているなど、文書管理が煩雑になってチェックが大変、といった場合に活用できるかもしれません。 textlint.github.io ある日のフィードバック Eight(およびSansanの各プロダクト)では、社内のslackでフィードバックを受け取るチャンネルが存在しています。活発に社内外からのフィードバックが投稿されていますが、ある日の投稿で以下のようなものがありました。 今日届いたお知らせの文言に「副業」というのが使われてました。 Eightでは「副業」使わずに「複業」とする、みたいな方針だった気がしたので、気になりました。 実際このフィードバックが上がった直後には、素早く修正リリースが行わ
こんにちは。 技術本部 研究開発部の高橋寛治です。 Python でプロジェクトを始める際に、ディレクトリ構成を考えたり、パッケージ方法を考えたり、もしくは何か参考になるものを見つけてコピペしたり、と意外と時間をかけていました。 これをコマンド一つで解決する Cookiecutter および社内での活用事例を紹介します。 Cookiecutterとは Cookiecutter とは、プロジェクトテンプレートからプロジェクトを作成してくれるコマンドラインツールです。 ここでのプロジェクトとは、ディレクトリとファイルおよびそれらの命名や記述されている項目を指します。 Cookiecutter には次の2つの側面があります。一つはプロジェクトテンプレートを利用すること、もう一つはプロジェクトテンプレートを作成することです。 インストール Cookiecutter は Python で書かれたライ
次のページ
このページを最初にブックマークしてみませんか?
『Sansan Tech Blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く