タグ

2018年10月12日のブックマーク (5件)

  • テキストの構造化を支える技術 -概要編- - Ahogrammer

    最近、情報抽出、特にOpen Information Extraction(OpenIE)という分野について勉強しています。せっかく勉強しているので、学んだ内容について何回かに分けて紹介していこうと思います。第一回目の今回は、OpenIEという分野の概要について紹介し、OpenIEのきっかけとなったシステムであるTextRunnerとその仕組みについて説明します。 Open Information Extractionとは? OpenIEについて述べる前に、まずは伝統的な情報抽出について述べておきましょう。情報抽出は非構造化データであるテキストを構造化された表現に変換するタスクです*1。情報抽出で抽出される情報は関係のタプルの形(arg1, rel, arg2)で表現されます。このタプルは関係を示すフレーズ(rel)とその対象であるエンティティ(args)から成ります。一般的な処理の流れと

    テキストの構造化を支える技術 -概要編- - Ahogrammer
  • 実践的低レベルプログラミング

    はじめに 学校で習わないが(習う学校もある)、現実に必要になるプログラミング技術に、低レイヤプログラミングなどと呼ばれるものがある 厳密な定義は聞いたことがないし、おそらく存在しないとは思うが、大体のみんなの共通認識として、 「高級プログラミング言語を使わないプログラムを書き、OSで抽象化されないデバイスの機能を使う」といったような認識があると思う。 筆者の経験から言わせてもらうならば、低レイヤプログラミングに関する知識は、プログラミングにおいてあらゆる場面で、常に、少しずつ役立てられる知識だと言えると思う。 普段はRubyPHPなどを書いてる人であったとしても、メモリが足りなくなった場合や、デバッガを使っている場合、性能が足りなくなった場合など、 厳しい環境におかれた時に低レイヤプログラミングに関する知識が必ず役に立つ場面が来ると信じている。 また、役に立つかどうかは置いておいても、「

  • Makefileを自己文書化する | POSTD

    私たちのプロジェクトではいつも、非常に長い Makefile を使用して、インストールやビルド、テスト、デプロイメントの処理を自動化しています。ターゲット名はほとんど標準化されていますが( make install 、 make deploy )、中には説明が必要なものもあります( make run-dev 、 make restart-api )。そして、詳細なmakeターゲットを追加するほど、それらの処理内容をテキスト形式で大量に記載しなければなりません。私たちのプロジェクトでは通常、このような文書を README ファイルに書いています。 しかしCLI(コマンドラインインタフェース)を用いる場合は、主に自己文書化ツールを使っています。 make と打つだけで、利用可能なコマンドとその説明が一覧表示されたら便利だと思いませんか? それを実現するのは、実はとても簡単です。まずは各ターゲッ

    Makefileを自己文書化する | POSTD
  • ミクシィグループのサービスと利用技術(技術スタック)についてまとめてみた|ミクシル

    ミクシィグループではこちらで説明している通り、様々な事業領域にてサービスを展開しています。運営しているプロダクトには10年以上稼働しているシステムもあれば、リリースしたばかりのものまで多岐にわたっているため、様々な技術が各所で採用されています。 多数のサービスを展開していることもあり、改めてミクシィグループの各サービスや事業部が現在どのような技術を採用しているか、技術スタックをまとめてみました。開発言語やインフラ環境、デプロイツールなどをサービス/事業部ごとにまとめています。 【サービスおよび、技術スタック一覧】 ※サービスやプロダクトに該当しないケースは、各事業部で採用している技術を紹介します。 ※2018年8月30日時点での情報です。 ※8月30日に実施された社内イベントの内容を元に作成しています。 その2はこちら スマートヘルス 事業部の取り組み スマートヘルス事業部は、超高齢社会を

    ミクシィグループのサービスと利用技術(技術スタック)についてまとめてみた|ミクシル
  • なぜPythonはこんなにも遅いのか? | POSTD

    (編注:2020/08/18、いただいたフィードバックをもとに記事を修正いたしました。) Pythonは高い人気を誇り、DevOps、データサイエンス、Web開発、セキュリティの分野で使われています。 しかし、速度に関しては高い評価が全くありません。 JavaとC、C++、C#、Pythonの速度を比べるには、どうしたらいいのでしょう? 答えは、実行するアプリケーションのタイプに大きく左右されます。完璧なベンチマークはありませんが、[手始めに比べる手段](https://algs4.cs.princeton.edu/faq/)としてはThe Computer Language Benchmarks Gameが適しています。 私は10年ほどthe Computer Language Benchmarks Gameを参照していますが、Java、C#、GoJavaScriptC++などの他言

    なぜPythonはこんなにも遅いのか? | POSTD