Sansan Builders Blog

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

【ML Tech RPT. 】第18回 構造に関連する機械学習を学ぶ (4) ~格子構造~

f:id:ssatsuki040508:20181210005017p:plain
DSOC研究員の吉村です。最近は朝ごはんを完全ルーティーン化していて、ヨーグルトにフルーツグラノーラを入れたのを毎日食べてます。これを続ける中でわかったことですが、ヨーグルトはプレーンじゃないとフルーツグラノーラに合いません。

さて、今回も構造に関する機械学習の話題について見ていきましょう。今回は格子構造についてです。格子構造自体はグラフ構造の特殊な場合として考えられますが、隣り合う点同士が相互に全て接続されているところが特徴的です。例えば、画像を構成している構造がまさに格子構造ですが、この場合には位置が近いピクセル同士は何らか関係があると考えられるので、そういった情報を用いてタスクを取り扱っていくことになります。他の例としては、機械学習というよりはむしろ離散最適化周りの文脈で、整数格子点上の劣モジュラ関数に関する話題などがあります。

そこで下記では、画像の構造に着目した扱い方と整数格子点上の劣モジュラ関数に関する説明をしていきます。

続きを読む

REST APIが主流のプロジェクトの中でGraphQLを導入してみた話(サーバーサイド編)

こんにちは。Eight事業部の古本です。Eightで"企業向けプレミアム"という企業内で名刺を共有できるサービスのサーバーサイドの開発・運用を主に行っています。

その企業向けプレミアムですが、去る2020年5月にバージョンアップが行われました。
そこでEightの中では初めてGraphQLを取り入れてAPI開発を行いました。

EightではRailsを採用しているためAPIといえばREST形式で書かれています。
そんな中で方式が異なるGraphQLを採用するということは、当初思い描いていた以上に様々な課題がありました。

この記事では、そこで起きた様々な課題とそれに対するアプローチや解決策などサーバーサイドの目線から述べたいと思います。

続きを読む

歴史をたどってディープラーニングを学ぶ 第八回 データオーギュメンテーションを実装して学ぶ

こんにちは、ニューラルネット老人こと糟谷勇児です。

今回はデータオーギュメンテーション(Data Augmentation)を見ていきます。データオーギュメンテーションは学習データを人工的に変えて水増しして学習させる技法です。画像なら縮小や回転、左右反転、平行移動などが行われます。今回はニューラルネット自体をいじらないので簡単そうですね。(実際はだいぶハマった)

前回は、ソフトマックス層を実装しました。ソフトマックスはドラクエに例えるとチャモロという話をしましたが、データオーギュメンテーションはドラクエに例えると「ゲントの杖」ぐらいの期待感はあります。

というのも、今までの誤認識をした結果を見ると明らかに失敗しているものに傾向があるからです。

小さいもの
f:id:kasuya_ug:20200703094122j:plainf:id:kasuya_ug:20200703094124j:plainf:id:kasuya_ug:20200703094126j:plainf:id:kasuya_ug:20200703094130j:plainf:id:kasuya_ug:20200703094133j:plainf:id:kasuya_ug:20200703094136j:plain
下のほうにあるもの
f:id:kasuya_ug:20200703094302j:plainf:id:kasuya_ug:20200703094306j:plainf:id:kasuya_ug:20200703094309j:plainf:id:kasuya_ug:20200703094311j:plain

アップのもの
f:id:kasuya_ug:20200703094443j:plainf:id:kasuya_ug:20200703094446j:plainf:id:kasuya_ug:20200703094448j:plainf:id:kasuya_ug:20200703094451j:plainf:id:kasuya_ug:20200703094454j:plain

低コントラストなもの
f:id:kasuya_ug:20200703094625j:plainf:id:kasuya_ug:20200703094629j:plainf:id:kasuya_ug:20200703094632j:plainf:id:kasuya_ug:20200703094634j:plainf:id:kasuya_ug:20200703094637j:plain

これらを認識するのに、画像を拡大・縮小したり、平行移動したり、低コントラストにしたりした画像を増やしていくとよさそうです。

続きを読む

企業内研究のウラガワ〜SOCIOECONOMIC NETWORKS AND NETWORK SCIENCE WORKSHOPの登壇を通じて

こんにちは!Sansan DSOC 研究員の西田です。
最近は着る予定も当分ないのにもかかわらず、3つボタンのスーツを購入しようと検討しています。もちろん生地はポリエステル縮絨です。

さて、今回のブログは、企業内研究のウラガワと題して、7月3~4日にてオンラインで開催されたSOCIOECONOMIC NETWORKS AND NETWORK SCIENCE WORKSHOPでの登壇を題材とし、登壇まで企業内研究にどのように取り組んでいたのかをできるだけ詳細にお伝えしたいと思います。

登壇資料はこちらです。

speakerdeck.com


以降は、以下の目次に沿ってお話しできればと思います。

  • 何のために登壇するのか?
  • Research Questionを立てる
  • Solutionを学び、形にする
  • Presentationを組み立てる
  • 社会理論を武器にする
f:id:sansan_nissy:20200709184441j:plain
オンライン登壇の風景
続きを読む

OSSコントリビュート始めてみませんか?

こんにちは。プロダクト開発部の福山です。Sansanでは主に法人向け名刺管理サービス「Sansan」の開発をしていますが、プライベートでは月に1回程度(*1)OSSにPull RequestをあげているゆるいOSSコントリビューターです。

「なぜOSSにコントリビュートするのか?」

という問いには、

「自分のコントリビュートによって世界の誰かが、よりそのOSSを好きになってくれる可能性があるから」

と答えます。

大げさに言ってしまいましたが、世界の前線に立っているエンジニアから「Awesome!」って言ってもらえるのが単純にうれしいからというのが本音です。

ということで本記事ではOSSへのコントリビューションについて書きたいと思います。

*1:ここ半年はなかなか活動できていません。2019年は達成しました。

続きを読む

【Techの道も一歩から】第30回「久々の Windows」

f:id:s_yuka:20200424095303j:plain

こんにちは。DSOC 研究開発部の 高橋寛治です。

今回は業務に利用している手元の環境を Mac から Windows に変更したという軽い話です。 交換した理由や Mac から Windows に乗り換えた時にセットアップする点について記します。

交換した理由

マシンスペックに不足を感じたことと WSL の進化が理由となります。

SSH で基本的に作業するため、軽くて持ち運びしやすい SSH クライアントと思って Macbook を利用していました。 しかしながら、昨今のリモートワーク事情により増えたビデオ通話で限界を迎えました。 ビデオ通話は便利である一方 CPU リソースを消費します。 ファンレスマシンは熱によるクロック低下が起こり、円滑なコミュニケーションに支障を来していました*1

高スペックな Macbook Pro でもいいのではないかと思いましたが、WSL が進化しており Linux が扱いやすくなっていることと、Sansan では Windows ノートパソコンは NVIDIA 製 GPU を搭載したものを選べる*2ことから、Windows としました。

端末のスペック

ThinkPad X1 Extreme

  • OS: Windows 10
  • CPU: i7 8750H
  • メモリ: 32GB
  • ディスク: SSD 1TB
  • 解像度: 4K(3840x2160)タッチパネル
  • GPU: NVIDIA GeForce GTX 1050 Ti with Max-Q Design
  • 重量: 約1.8kg

重量は Macbook の約2倍となりました。

*1:USBファンで冷やしていたが、風きり音が入りそう。

*2:ちょこっと確認したいときに手元にあると楽です。

続きを読む

新サービスのオンボーディングを成功させるためにエンジニアが取り組んでいること

こんにちは!関西支店勤務の大西です。

私の役割は、新規事業開発室におけるエンジニアの責任者 兼 Bill Oneの開発リーダーです。今回のブログでは、Bill Oneの開発リーダーの立場から、オンボーディングを成功させるために取り組んでいることを記載させてもらいます。

Bill Oneとは

Bill Oneとは今年の5/11(月)に公開した新規事業で、ミッションは「あらゆる請求書をオンラインで受け取る」です。

サービスについては、以下を参照してください。
bill-one.com


Bill Oneの現在のフェーズは、ミッションに価値を感じ契約してくれた顧客に対して、オンボーディングを成功させるフェーズです。オンボーディングの成功定義はこのブログでは詳細には紹介出来ませんが、Bill Oneを業務利用してもらい、価値を体感してもらうことです。

続きを読む

© Sansan, Inc.