タグ

ブックマーク / www.m3tech.blog (31)

  • 行動ログデータからのユーザーアンケート予測モデルを作り、ユーザーの嗜好分類をする - エムスリーテックブログ

    こんにちは。エンジニアリンググループ AI機械学習チームの大垣です。 これは エムスリー Advent Calendar 2019 の10日目の記事です。 前日は id:sora_sakaki による、量子ゲームを開発した話でした。 さて、この記事ではデータエンジニアの皆さんが戦われているであろうログデータの活用の話をします。 もちろんエムスリーでもレコメンドやコンテンツの出し分けなどログデータを活用したシステムが開発されています。 ここでは、そのログに加えて、アンケートを用いることで、解釈しやすいユーザーの嗜好分類を行う話をします。 なおこの内容は日の Machine Learning Night というイベントで簡単に紹介し、スライドも公開する予定です。ご興味のある方はそちらも是非ご覧ください。 webサービスでの行動ログとアンケートの結果を紐づけて予測モデルを作る。アンケート非回

    行動ログデータからのユーザーアンケート予測モデルを作り、ユーザーの嗜好分類をする - エムスリーテックブログ
  • 数としての赤黒木 - エムスリーテックブログ

    エンジニアリンググループの高島(@rst76)です。 社内の勉強会で、計算機科学の有名な教科書、アルゴリズムイントロダクション(Introduction to Algorithms)を輪読しています。 ちょうど赤黒木の章を私が担当したので、要点をかいつまんでご紹介したいと思います。 今回お話したいのは「ある条件の下で、赤黒木は記数法表現と見ることができる」という話です。 赤黒木の例 赤黒木 二分木というデータ構造があります。 計算機科学では一般的なデータ構造で、ランダムなデータであれば、検索や挿入などの操作を で実現できます。 ただ、データの与え方によっては偏った木ができてしまうことがあり、そうすると各操作の性能が に落ちてしまうので、どうやって木の平衡性を維持するかが課題です。 赤黒木は二分木の一種で、ノード(節点)を赤と黒に塗り分けて、赤と黒の組み合わせによって平衡性を保つための調整を

    数としての赤黒木 - エムスリーテックブログ
  • 機械学習プロジェクト向けPipelineライブラリgokartを用いた開発と運用 - エムスリーテックブログ

    こんにちは。前回書いた突撃!隣のキーボード M3 2019という記事が、HHKBの公式Twitterアカウントにツイートされ、舞い上がっているエムスリーエンジニアリングGの河合 (@vaaaaanquish) です。 今回はエムスリー AIチームが開発、運用している機械学習プロジェクト向けのPythonライブラリである「gokart」の説明と、その周辺ライブラリとなる「cookiecutter-gokart」「thunderbolt」「redshells」について紹介したいと思います。よろしくお願いします。 はじめに Pipeline化のメリット・デメリット Pipeline化のメリット Pipeline化のデメリット gokart 共通化のための出力ファイル形式の制約と拡張 強力かつ簡易な再現性のためのデータ保持 クラウドサービスやSlack通知のサポート gokartのメリット、デメリ

    機械学習プロジェクト向けPipelineライブラリgokartを用いた開発と運用 - エムスリーテックブログ
  • M3 における CTO - 権威ではなくロールとしての CTO - エムスリーテックブログ

    2019 年度から M3 (日)の CTO を Global CTO の Brian から引き継いだ矢崎(id:Saiya)です。 ...とは言いましたものの、CTO という単語は幅広い解釈が可能であり、M3 の CTO がどのようなものかというのも自明ではないように思われます。 そこで、弊社の特性・魅力の宣伝も兼ねて、M3 における CTO が(現時点で)どのようなことを目指しているのか、を記してみました。 エムスリー (株) について 弊社は2000年の創業から 19 年弱を経ている企業です。 「インターネットを活用し、健康で楽しく長生きする人を一人でも増やし、不必要な医療コストを一円でも減らすこと」をビジョンに、インターネット・コンピューティング技術を活かしたビジネスを展開しております。 19 年という歴史はありますが、しかし会社説明資料*1の背景画像の建設中のサグラダファミリアが

    M3 における CTO - 権威ではなくロールとしての CTO - エムスリーテックブログ
  • Pythonのパッケージ周りのベストプラクティスを理解する - エムスリーテックブログ

    砲撃する自走砲(PzH2000自走榴弾砲)。自走砲は戦車によく似ていますが、戦車ではありません。*編とは関係ありません。 こんにちは、エムスリー基盤開発チーム小です。 Pythonのパッケージ管理周りでは、 「setup.pyでrequirements.txtを読み込むのが普通なんですよね?」 「pipenv があれば venv はオワコンなんですね?」 「pyenvは要らないんですよね!?」 「Python歴史が古い分、Rubyなどに比べてカオス」 みたいな混乱をよく目にします。 実際、複数のツールがあって(一見)複雑です。また「なぜこうした状況にあるのか」がドキュメント化されているわけでもありません。 なので、私なりに整理してみることにしました。 ※「追伸」を追加しました。この記事では汎用プログラミング言語としてPythonを使うケース(Webアプリとか、CLIツールとか、ライブ

    Pythonのパッケージ周りのベストプラクティスを理解する - エムスリーテックブログ
  • エムスリーエンジニアリングGの組織構成について - エムスリーテックブログ

    エムスリーエンジニアリンググループ(以下エンジニアリングG)の山崎です。この記事は エムスリー Advent Calendar 2018 の24日目の記事です。 私自身はエンジニアバックグラウンドのプロダクトマネージャですが、昨年12/1よりVPoEとして、今年の4/1より業務執行役員としてエムスリー及びグループ会社の経営に関わっています。 日はカジュアル面談や採用面接などでもよく聞かれるエンジニアリングGの組織構成について、掘り下げてご紹介できればと思います。 概要 エンジニアリングGには現在14の公式チーム(8の事業チーム+6の横断チーム)の他、4つのフィジビリ中のチーム、2つの組織運営のためのチームが存在します。 2018年12月時点65名のエンジニアでこれらのチームを運営しています。 今日はそれぞれのチームについて簡単に説明します。 エムスリーエンジニアリングGの組織構成 事業チ

    エムスリーエンジニアリングGの組織構成について - エムスリーテックブログ
  • コードレビューを支える『褒め文化』 - エムスリーテックブログ

    コードレビュー、好きですか? エンジニアリンググループの山口です。 クラウド電子カルテ「エムスリーデジカル」を開発しています。 今回は、チームに根ざしている『褒め文化』についてお話しします。 ※この記事は、エムスリー Advent Calendar 2018 13日目の記事です。 『褒め文化』とは 簡単に言えば、コードレビューで褒める文化です。 コメントに対してコメントしている様子 とても簡単です。 とても簡単なのですが、前職(SIer)ではこういった経験が全く無かったため*1、join直後は(良い意味で)驚いたのが印象に残っています。 とにかく褒める けっこう安易に安直に褒められますし、褒めます。 アカウント名は一部加工 思ったことを素直にコメントにしてしまいます。 褒め文化の効用 ここからは「※個人の感想です」になってしまいますが、こうした褒め文化は、レビュア・レビュイどちらの立場でも

    コードレビューを支える『褒め文化』 - エムスリーテックブログ
  • 業務未経験でエンジニアに転職する方へ。 〜やっておいた方が良い3つのこと〜 - エムスリーテックブログ

    この記事はエムスリー Advent Calendar 2018 8日目の記事です。 こんにちは。エムスリー エンジニアリンググループの川俣です。 最近驚いたことは、勉強会*1でLTしてプロテインをもらったことです。 ※注 プログラミングの勉強会です。 私は、今年2月に6年務めた消防士から業務未経験でエンジニア転職しました。 今回は同じようにエンジニア転職する方に向けて、「転職前にやっておけばよかったな」と思ったことをお伝えします。 1. 他の人が書いたコードを読み込んでみる 業務未経験でエンジニア転職をする方が最初に従事する業務は、0-1での新規開発ではなく、 既存システムの改修・運用だと思います。 そのような時、まず向かい合わなくてはならないのが、誰かが書いた何千何万行ものコードです。 大変恥ずかしいことなのですが、入社前まで他の人が書いたコードを真剣に読み込んだことがありませんでし

    業務未経験でエンジニアに転職する方へ。 〜やっておいた方が良い3つのこと〜 - エムスリーテックブログ
  • この処理Pythonでどう書く? - エムスリーテックブログ

    EF15形は高性能な電気機関車であったが、引き出し性能が蒸気機関車に劣ると誤解されていた。 誤った運転方法により来の性能を引き出せていなかったのである。 (spaceaero2 [CC BY 3.0], ウィキメディア・コモンズより) こんにちは、エムスリー・エンジニアリングG・基盤開発チーム小です。 WEBサイトは RailsやSpringなどの「体部分」だけでは完結しません。レポート作成・データ更新などの細かい処理も必要です。 過去にはこうした用途にはBashがよく使われました。しかし、Bashは落とし穴が多かったり、クラスなどの抽象化機能がなかったりして、規模が大きくなると辛くなります。 そこで、Bashの代替候補に挙がるのがPythonです。エムスリーでもかつてはBashを使っていましたが、現在は新規案件にはPythonを推奨しています。 しかし、実際にPythonで書き直そ

    この処理Pythonでどう書く? - エムスリーテックブログ
  • エムスリーSREチームのご紹介 - エムスリーテックブログ

    こんにちは。エンジニアリングGでSREチームのチームリーダーを務めている池田(@progrhyme)です。 以前のエンジニアリングG内には、システムインフラの構築・運用を主に担当する「インフラチーム」が存在していましたが、今年の7月から改称して「SREチーム」と名乗ることにしました。 以降では、SREチーム設立の経緯や、その役割、ミッション等について記します。 SREとは SREは「Site Reliability Engineering」の略で、2003年にGoogleで誕生したSREチームが実践してきたプラクティスに基づくシステム運用の新しい形です。 2016年にO'Reillyから同名の書籍が出版されたことで、IT業界を中心にその考え方やメソッドが広く普及していったと思います。 SRE(= Site Reliability Engineer)が単なる運用チームと異なるのは、彼らがソフ

    エムスリーSREチームのご紹介 - エムスリーテックブログ
  • 医師への情報伝達を最適化したい - エムスリーテックブログ

    機械学習エンジニアの西場です。 私が「今していること」から「将来しようとしていること」や「仕事のモチベーション」が連想するのが難しいのかなっと思うことが何度かあったので、実現したいことやモチベーションを紹介します。 仕事のモチベーション 私の仕事のモチベーションは、医師への情報伝達を最適化し、医療の質の向上に貢献すること。 そのために、様々なプロジェクトを進めており Archimedesでは医師の短期トレンド、長期トレンドのモデル化 Bourbakiではコンテンツのバナーのデザインの最適化 Cantorではコンテンツのテキストから特徴量の抽出 GaussやIsaacsでは医師が興味がある医療系のキーワードの取得 を行っています。(※ プロジェクト名に数学者・物理学者を使っています。個人的にはBourbakiは不満ですが) それぞれのプロジェクトは独立して既存サービスに貢献しています。将来的

    医師への情報伝達を最適化したい - エムスリーテックブログ