タグ

ブックマーク / mixiengineer.hatenablog.com (7)

  • Char2Vec で文字の特性について調べてみた - mixi engineer blog

    ミクシィ Vantage スタジオのAI・ロボットチームで自然言語処理関連の研究開発に関わっている原(@toohsk)です. Vantage スタジオでは人の感情に寄り添った会話ができるAIの研究開発を通じて,新しいコミュニケーションサービスを生み出そうとしています. 今回, Char2Vec を用いた,文字毎の特性について実験を行いましたので,紹介したいと思います. Word2Vec とは Word2Vec は単語をベクトル表現に変換する方法です. これまでは自然言語処理の分野では単語を扱う場合, one-hot の形式で文章内の単語を表現することが多かったです. しかし,自然言語を機械学習で扱う場合や論文では,最近では必ずといっていいほど Embedding された状態,すなわち単語をベクトルに変換してから機械学習のアルゴリズムに与えています. ではなぜ one-hot の形式ではなく

    Char2Vec で文字の特性について調べてみた - mixi engineer blog
  • Androidの機種依存問題を吸収するプロジェクトAndroid-Device-Compatibilityを公開したお話 - mixi engineer blog

    こんにちは。Androidユニットで開発とスクラムマスターをしています、横幕です。すっかり寒くなって、朝起きるのが辛い季節になりました。 先日、Android(TM)の様々な機種に依存する問題を吸収するためのライブラリプロジェクトをmixi, IncのGitHubリポジトリで公開しました。 今回は、このライブラリプロジェクトを公開するに至った経緯をお話しようと思います。 様々な種類の端末に対応するために乗り越えてきた困難 現在、Androidを搭載した端末には、多種多様なものがあります。 そして、OSのバージョンごとの違いだけでなく、同じAndroidを搭載していても、端末ごとに微妙に挙動が異なることがあります。 mixi公式クライアントアプリでも、端末ごとに微妙に挙動が異なることで発生する問題にいくつか直面してきました。 特定の端末で、文字が9,000文字までしか入力できない EditT

    Androidの機種依存問題を吸収するプロジェクトAndroid-Device-Compatibilityを公開したお話 - mixi engineer blog
  • mixiへの認証を行ってくれる「OmniAuth-mixi」を公開しました - mixi engineer blog

    こんにちは。よういちろうです。Ruby on RailsやSinatraで作るWebアプリケーションに各種認証機能を手軽に追加できる機構として、「OmniAuthシリーズ」があります。これのmixi版を作ってみました。 OmniAuth-mixi - Github OmniAuthは、Strategyという形式で任意の認証プロバイダの実装を追加できるようになっています。OmniAuth-mixiを使うことで、OAuth2にてmixi Graph APIの認証認可を行い、People APIで認可ユーザのプロフィール情報を取得する、という処理を行ってくれます。 使い方は簡単です。Ruby on Railsの場合、まずGemfileに以下を追記します。 gem 'omniauth-mixi' 次に、config/initializers/omniauth.rbファイルを以下の内容で作成します。

  • 新社会人のためのバグレポートの基本 - mixi engineer blog

    はじめまして、品質管理部門の柿崎です。 最近、Skyrim にハマってしまい、人生一回休みになりかけています。 季節は春ということで、新社会人になられる方も多いと存じます。 新社会人が会社勤めをするようになって、初めて書くビジネス文書といえば...... そうですね!「バグレポート」ですね。 今回はバグレポートの基について書きたいと思います。 近年、開発現場ではバグトラッキングシステムが定着し、ドッグフーディングのような社内テストを行う現場も増え、テスト担当者以外の方でもバグレポートを提出する機会が増えています。そして前衛的なバグレポートによって、プログラマ達が理不尽かつ不可解なバグ地獄に叩き込まれる機会も増えています。 バグレポートは諸刃の剣です。 良いバグレポートはアプリケーションの問題を速やかに解決まで導きますが、反対にダメなレポートは現場に混乱をもたらします。 良いバグレポートを

    新社会人のためのバグレポートの基本 - mixi engineer blog
    mikage014
    mikage014 2012/03/21
    まとめるとプログラマは死にやすい
  • mixi大規模障害について 解明編 - mixi engineer blog

    こんにちは、システム技術部たんぽぽGの森です。 先日のmixi大規模障害の原因となったmemcachedの不具合の詳細な解明ができました。 再来週まで発表を見合わせようと思ったのですが、早くお伝えしたほうがいいと思いましたので公開発表致します。 memcachedとlibevent memcachedはlibeventというライブラリを使用してクライアントからの要求(接続、コマンド送信)を処理しています。 libeventを使用するにはevent_baseという構造体を用います。 main threadはmain_baseを使用します。 static struct event_base *main_base; ... int main (int argc, char **argv) { ... main_base = event_init(); ... /* enter the ev

    mixi大規模障害について 解明編 - mixi engineer blog
    mikage014
    mikage014 2010/08/24
    mixi大規模障害のまとめ
  • Gmail™×mixi連携スタート!の件について - mixi engineer blog

    (いわゆる宣伝エントリーなので余裕のある方はお読みください) お世話になっております。ソーシャルグラフ開発チーム asannou です。 「Gmailとmixiがつながりました」ということで、Gmail™のアドレス帳(連絡先)からマイミクシィを追加したり、友人をmixiに招待したりできるようになりました。以前から、メールアドレスでマイミク登録という機能がありますが、ここにアドレス帳のメールアドレスを一個ずつコピペするかわりに、まとめてインポートしてサクサクとマイミク申請&招待できるようになるイメージですね。 今回は技術的な部分のご紹介をさせていただきたいと思います。 アクセス権限を委譲する 機能では、Gmail™のアドレス帳をインポートする際に、OAuthという仕組みを利用してアクセスをおこなっているので、mixiに、Googleアカウントのユーザー名とパスワードを入力する必要がなく、G

    Gmail™×mixi連携スタート!の件について - mixi engineer blog
  • いまからでも間に合う開発者テスト - mixi engineer blog

    はじめまして。開発部じゃない加藤和良です。 最近、mixi では Buildbot をつかった継続的インテグレーションをはじめています。安定版の mixi のソースコードにコミットすると Buildbot がそれを検知し、自動的にテストが走るようになりました。 ここでの「テスト」は Test::Simple や prove(1) をつかった、Perl でかかれた開発者テストを指しています。mixi の開発者テストをとりまく環境は、ここ数年でかなり改善されました。今回はその歩みをふりかえりながら、テストの無いコードベースをどこからどうやって変えていったかという話をしたいと思います。 開発環境 はじめに、前提となる mixi の開発環境について説明します。mixi では複数人の開発者がひとつのマシンで作業を行います。それぞれの開発者は、あらかじめ割り当てられたポートで Apache を起動し、

    いまからでも間に合う開発者テスト - mixi engineer blog
    mikage014
    mikage014 2010/03/02
    自社開発、自社運用のライフサイクル。よそに納めるシステムだとこういう環境が整う前後にライフサイクルが終わってしまったりする。
  • 1