ブックマーク / qiita.com (1,077)

  • 孤独でつらい機械学習データの作成を、ワイワイ楽しくする環境を3日で作る - Qiita

    21世紀でもっともセクシーと言われるデータサイエンスは、18世紀を彷彿とさせる奴隷的な作業によって支えられています(要出典)。その作業とは、データを作る作業(=アノテーション)です。多くの場合、アノテーションは孤独な単調作業の繰り返しです。延々と続けていると、全ての単語にunkとつけるようになる事例も報告されています。つまりつらい!のです。 記事では、「孤独で辛い」アノテーションを「みんなで楽しく」行える環境を作る方法を紹介します。そのポイントは以下3点です。 Easy: アノテーションを楽に Feedback: アノテーションした結果がすぐにわかるように Gamification: アノテーション結果をみんなで競い合う Overview アノテーションを行う流れは以下のようになります。 Annotation Tool for Easy: アノテーションを楽にするためのツールを用意 In

    孤独でつらい機械学習データの作成を、ワイワイ楽しくする環境を3日で作る - Qiita
    yag_ays
    yag_ays 2019/08/30
  • 大規模日本語ビジネスニュースコーパスを学習したELMo(MeCab利用)モデルの利用方法と精度比較検証 - Qiita

    こんにちは、ストックマークの kaerururu (@kaeru_nantoka) です。 今回は、 1 ) 弊社の森長がビジネスドメインのニュース記事で学習し、先日ご紹介した 事前学習済みELMo を Google Colaboratory 上で動かす方法のご紹介 2 ) 単語単位埋め込みモデルと文字単位・単語単位埋め込みモデル、両モデルの精度比較検証 について書いていきます。 精度比較検証のソースコードは私の GitHub リポジトリ に置いておりますので、よろしければご覧ください。 目次 ELMo とは ELMo を Google Colaboratory で使う 単語単位埋め込みモデルと文字単位・単語単位埋め込みモデル、両モデルの精度比較検証 まとめ 1. ELMo とは 森長の こちらの記事 をご参照ください。 2. ELMo を Google Colaboratory で使う

    大規模日本語ビジネスニュースコーパスを学習したELMo(MeCab利用)モデルの利用方法と精度比較検証 - Qiita
    yag_ays
    yag_ays 2019/08/28
  • 深層距離学習(Deep Metric Learning)各手法の定量評価 (MNIST/CIFAR10・異常検知) - Qiita

    各組み合わせにつき、上図で表した10テストケースをそれぞれ実施して統計をとっています。 まとめ: 10テストケースでは、正常・以上に割り当てる具体的なクラスを入れ替える。 8つのセットで評価の条件を組み合わせ、各条件で10テストケースすべてを実施した上で統計をとった結果を出している。 1.3 評価方法 ひとつの組み合わせは10テストケース実施それぞれで、①AUC、②各クラスサンプルの平均距離を得た。 ひとつのテストケースの評価手順 通常のCNN分類器(ResNet18)に、手法を組み込む。(Conventionalのときは何もせずそのまま使う) 学習は、「正常」に割り当てたクラスだけで構成する学習データセットを使い、転移学習によって行う。学習データは、各データセットで元々trainセットに入っているサンプルのみ利用する。 評価データの距離を得る。 正常・異常を問わずすべてのクラスから評価デ

    深層距離学習(Deep Metric Learning)各手法の定量評価 (MNIST/CIFAR10・異常検知) - Qiita
    yag_ays
    yag_ays 2019/08/21
  • 【論文読み】異常検知を支える技術 - Qiita

    前回の記事では、ディープラーニングの異常検知に関するベンチマークを 行いました。その結果、「L2-SoftmaxLoss」が一番良い性能を示しました。 稿では、その元になった「論文の概要」と「異常検知に適用した場合の考察」を 記したいと思います。 ※なお、稿の図は特に明記がない場合は論文(L2-constrained Softmax Loss for Discriminative Face Verification )より引用しています。 論文の結論 結論からいうと、論文で言いたかったことは ということです。この意味が分かる方は、既に論文のほとんどを理解できています。 あとは、分類精度を向上させるために、ソフトマックス関数をどう改造するかのお話しです。 ソフトマックス関数のクロスエントロピー 分類問題で良く使われるソフトマックス関数のクロスエントロピーは 以下のとおりです。 L_S=-\

    【論文読み】異常検知を支える技術 - Qiita
    yag_ays
    yag_ays 2019/08/21
  • Neural NetworkによるTopic Modelingとその実装 - Qiita

    この記事では、Neural Topic Modelingについて調べたことをまとめます。 個人的解釈が多少含まれる記事となっていますので、気になる点がありましたら記事へのコメントやTwitterでリプライをいただければと思います。 Twitter : @m3yrin TL;DR 従来の確率生成モデルとしてのトピックモデルに対して、Neural Topic Modeling(NTM)の強みを説明します。 PyTorchによってNTMの簡易な実装を行い、コードを公開します。 従来手法としてLDAでTopic Modelingを行い、NTMとの比較を行います。 トピックモデルとは トピックモデルは、文書集合で話題となっているトピックを、同じ文書で現れやすい語彙として抽出する手法です。 文書のメタ情報の抽出や、トピックを使って文書の分類に使用できます。 (岩田具治, トピックモデル 機械学習プロフ

    Neural NetworkによるTopic Modelingとその実装 - Qiita
    yag_ays
    yag_ays 2019/08/15
  • 【まとめ】ディープラーニングを使った異常検知 - Qiita

    ディープラーニングを使った異常検知が進歩していますが、最新情報を追うのが大変です。 ここでは、最新情報をまとめておきます(随時更新)。 稿では、以下の内容を記します。 ディープラーニングを使った異常検知について、簡単に歴史をまとめます。 最新の手法(2019年当時)について、ベンチマークを行います。 歴史 完全に独断と偏見で作った歴史です。 全ての論文は読めていないので、ご了承ください。 【~2017年】オートエンコーダによる異常検知 オートエンコーダによる異常検知 2、3年前はオートエンコーダによる異常検知が主流でした。オートエンコーダでは、元画像と再構築画像との差をとって、その和が大きいとき異常と認識させています。Qiitaの記事でも、オートエンコーダによる異常検知はたくさんありますので、気になる人は探してみてください。 Variational AutoEocoder(VAE)による

    【まとめ】ディープラーニングを使った異常検知 - Qiita
    yag_ays
    yag_ays 2019/08/07
  • 大規模日本語ビジネスニュースコーパスを学習したELMo(MeCab利用)モデルの紹介 - Qiita

    はじめに 以前、日語のBERT事前学習済モデルの紹介記事を投稿しましたストックマークの森長です。 前回の記事を多くの皆様に読んでいただき、大変ありがたく思っております。 そこで、今回はBERTに続いて、ELMoの日語学習済モデルを公開いたします。 ELMoとは ELMoは双方向LSTMを用いて学習させた言語モデルです。 ELMoによって、文脈を考慮した単語分散表現(単語ベクトル)を獲得できます。 自然言語処理では、文脈を考慮した単語ベクトルを用いることで、語義の曖昧性解消が見込めます。 例えば、以下の「人気」という単語のように、文脈によって意味が異なる単語でも、ELMoでは文脈を考慮して文脈ごとの「人気」の単語ベクトルを獲得可能です。 あのキャラクターは人気がある。 この道路は、夜に人気がなくて、危ない。 ELMoの単語ベクトルの具体的な利用方法としては、ELMoで獲得した単語ベクトル

    大規模日本語ビジネスニュースコーパスを学習したELMo(MeCab利用)モデルの紹介 - Qiita
    yag_ays
    yag_ays 2019/08/05
  • sourceコマンドを誤って使ってしまいゾッとした話 - Qiita

    ってやってしまった。 ぎゃぁぁあああああああーーーーーーーー!!!!!!!! と叫んでも遅し、、、処理が走ってしまい止められなくなってしまいました。 処理の途中に 「公開鍵を上書きするかどうか?」とか出てきて、 n として回避した後、今は無くなっているレポジトリから git clone しようとしたところで、アカウント確認のために処理が止まり、そこで、 Ctrl + c で強制終了できました。 解説 source コマンドは、ファイルに書かれたコマンドを現在のシェルで実行するコマンドです よって、私がミスして実行してしまった処理の内容は、 .zsh_history にファイルに書かれたコマンドが1行ずつ実行する。という内容になります。 .zsh_history には私が過去に打ったコマンドがすべて記録されているため、つまり、それらのコマンドが順に実行されていくということになってしまいます。

    sourceコマンドを誤って使ってしまいゾッとした話 - Qiita
    yag_ays
    yag_ays 2019/08/04
  • 良い子のためのKubernetesガイド - Qiita

    この記事について Kubernetesの良さをたくさんの人に知って貰いたいと思い、 The Illustrated Children’s Guide to Kubernetes https://www.cncf.io/phippy/ を日語に翻訳してみました。 Kubernetesの主要サービスを絵の物語を通して理解できる構成になっています。 Kubernetesでできることがザックリと分かって頂けると嬉しいです かなり意訳している部分もあり、不適切な表現あった場合ご指摘頂けると助かります。 まず初めに ある日、オフィスで娘とこんなやりとりがありました。 娘「Kubernetesってなにー?」 父「Kubernetesは、Dockerコンテナ群をオーケストレーションするためのオープンソースのシステムだよ。クラスタリングされたコンピューター内のノード群のスケジューリング、ワークロードの動

    良い子のためのKubernetesガイド - Qiita
    yag_ays
    yag_ays 2019/08/02
  • 政府の事業支出データ(Judgit)を使って、事業施策をベクトル化する - Qiita

    TL;DR; ・Judgitというサイトで各省庁の事業支出状況が可視化されている ・そのデータを用いて、事業施策・省庁・部局・支出先のグラフを作った ・グラフ埋め込みを行い、事業施策たちをベクトル化した。類似してる事業施策などを検索できるようにした ・使い道をいろいろ考えたい Judgitについて 7/11にJudgitというサイトが公開されました。複数の団体で運営されているようで、政府が公開している資料をデータベース化して税金の使い道を検索できるようになってます。 【みんなで調べよう!】 大勢の人が来れば来るほど、政治や行政が良くなるサイト、税金の無駄遣いが減るサイトができました! 日の予算をデータベース化しました。税金の使い方を調べてみてください。#ワセクロ #構想日 #vdslab #Visualizing #税金 #予算 #judgithttps://t.co/2AQaGPeE

    政府の事業支出データ(Judgit)を使って、事業施策をベクトル化する - Qiita
    yag_ays
    yag_ays 2019/07/24
  • 説明できるAI ~MMD-critic~ - Qiita

    この記事の概要 機械学習の説明性の研究として,Example-Basedな説明があります.この記事では,説明性の研究のトップランナーの一人である, Been Kimをファーストオーサーとする論文, "Examples are not Enough, Learn to Criticize! Criticism for Interpretability",https://people.csail.mit.edu/beenkim/papers/KIM2016NIPS_MMD.pdf について書いています. Examples are not Enough 機械学習の説明性の1つとして, Example-Basedな説明があげられます. 我々人間も, Example-Basedな意志決定をしています. 例えば弁護士さんなら, 新しいクライアントに似た過去の事例を徹底的に調べ上げ, 何かしらの意志決定

    説明できるAI ~MMD-critic~ - Qiita
    yag_ays
    yag_ays 2019/07/09
  • gunicorn(>=19.2)ではmax_requestsと一緒にmax_requests_jitterも使おう - Qiita

    max_requestsとは何か? gunicornのmax_requestsパラメータを指定すると、各ワーカープロセスが max_requests 回数分リクエストを捌くとプロセスを自動再起動してくれるようになります。 これによってメモリリークを回避し、サーバーのリソース逼迫を防ぐことができます。 max_requestsだけだとどんな問題があるか? gunicornでは各ワーカープロセスにほぼ均等にリクエストが割り振られるため、全ワーカープロセスが一斉にmax_requestsに達して再起動してしまうケースが発生します。 そうなるとリクエストを捌けるワーカーがいない状態が一瞬できるので、ユーザー側から見ると「あれっ、このサイト突然激重になった?」ということがありえます。 バージョン19.2からの新機能max_requests_jitter そこで、バージョン19.2からmax_requ

    gunicorn(>=19.2)ではmax_requestsと一緒にmax_requests_jitterも使おう - Qiita
    yag_ays
    yag_ays 2019/07/02
  • bert-as-serviceで作るGPU無しのBERTサーバー - Qiita

    はじめに 文を投げるとBERTで文ベクトルに変換して返してくれるサーバーを作ります。日語も英語も利用したいので両方対応させます。 BERTとは Googleが2018年の終わり頃に発表した自然言語処理の事前学習済みモデルです。複数のNLPタスクでstate-of-the-artを叩き出し、その凄まじい性能でNLP界隈で話題になりました。 ただモデルのサイズも凄まじ過ぎて、一番性能の高いBERTは安GPUではFine Tuningはおろか推論すらOut of memoryで動きません。目の前に自然言語処理の最先端があるのにそれを使えないのは悔しい限りです。 目的 そこそこのCPUと大容量のメモリを積んだちょっと強い民生向けコンピューター(GPU非搭載)上でBERTを動かし、文ベクトルを出力させます。 データを前処理的にBERTの文ベクトルに変換することで、強力な計算リソースが無い状況でもB

    bert-as-serviceで作るGPU無しのBERTサーバー - Qiita
    yag_ays
    yag_ays 2019/06/26
  • mlflowを使ってデータ分析サイクルの効率化する方法を考える - Qiita

    この記事について mlflowという機械学習の管理をできるPythonライブラリについて説明する mlflowを使って、データ分析サイクルを効率よく回せるかを考える mlflowとは 概要 mlflowは、機械学習の開発を行う上で複雑になりがちな実行環境、モデル、パラメータ、評価結果、その他もろもろの管理を行ってくれるプラットフォームです。モデル作成後のデプロイについても、予測結果を返してくれる簡単なAPIを提供できる機能でカバーしています。 機械学習を行う場合、scikit-learn(または、これに準拠したもの)を用いることが多いと思うので、これを使うことを前提に説明していきます。(scikit-learn以外にも、H2O、Keras、pytorch、tensorflowといったディープラーニング向けのライブラリにも対応しています。) mlflowは以下の大きな3つの機能で構成されてい

    mlflowを使ってデータ分析サイクルの効率化する方法を考える - Qiita
    yag_ays
    yag_ays 2019/06/24
  • elasticmqを使ったsqsとの連携テスト - Qiita

    背景 Amazon SQS。自分のサービスにメッセージキューサービスをとても簡単に組み込めて便利。 http://aws.amazon.com/jp/sqs/ しかし、いざそれを使った機能のspecを書こうと思うと、「外部サービスだからstub書かなきゃ」という辛みと、「結合テスト的に実際にAPI叩きたいし」という欲求が出てきて、どうしたらいいのよ 、という感じになる。 そりゅーしょん 環境用意すれば良いじゃない! ElasticMQ https://github.com/adamw/elasticmq こちら、Amazon SQS-compatible interfacesという素晴らしい特徴を持ったメッセージキューシステムです。 これをローカルに立ち上げれば、そもそも普通の開発の時からローカルでキューシステム使った検証できるし、何よりrspecからキューへの登録、取得などのテストもちゃ

    elasticmqを使ったsqsとの連携テスト - Qiita
    yag_ays
    yag_ays 2019/06/24
  • Prestoの開発環境をdockerでローカルに作った話 - Qiita

    【2020/01/06 追記】 この記事を作成したタイミングではPrestoの公式Dockerイメージがなかったため、Dockerイメージを自作し、その手順を記事にまとめています。 PrestoのVersion312からは公式にDockerイメージがサポートされたようですので、今後環境を自作する際は公式Dockerイメージを利用することをオススメします。(@ebyhrさん 情報ありがとうございました!) はじめに 業ではビッグデータを扱うサービスの開発に携わっています。 自分の担当箇所ではPrestoというミドルウェアを利用しているのですが、Presto周りの機能をローカルで開発する環境が整っておらず、以下のような不満がありました。 ローカル開発用のPrestoがなく、開発中に気軽に動作確認できない 動作確認するためにはテスト環境に修正中のソースコードをデプロイする必要があり、デプロイす

    Prestoの開発環境をdockerでローカルに作った話 - Qiita
    yag_ays
    yag_ays 2019/06/24
  • Github, GitLab上のnotebookをGoogle Collabで開く - Qiita

    TL;DR githubgitlab上のnotebookはgoogle collaboratoryで開いて実行できるよ! chrome拡張機能を使ってササッと開けるようにするよ! 方法 urlの"github.com"または"gitlab.com"を"colab.research.google.com/github"に置換するだけ! 拡張機能でサクッと chrome拡張機能を用います。 設定はこれ以上ないくらいシンプル。 右クリックすると置換して開いたろか?と聞いてくれます。置換してみると…… 開けました!!やったね!!! 参考

    Github, GitLab上のnotebookをGoogle Collabで開く - Qiita
    yag_ays
    yag_ays 2019/06/17
  • Transformerで英日翻訳 - Qiita

    TransformerとCloud TPUを使って英語を日語に翻訳するニューラル翻訳モデルを訓練してみたので紹介します。 前置き 3年前の2016年にTensorFlowとGPUインスタンスで英日翻訳という記事を書きましたが、当時の機械翻訳はLSTMにAttentionを追加したモデルが主流で、ニューラル翻訳のモデルもこれから複雑化の一途を辿るのだろうなと思っていました。 しかし、最近久しぶりにニューラル翻訳のサーベイをしてみて、良い意味で期待を裏切られました。2017年に登場したTransformerでは、LSTMを完全に廃止し、Attentionのみで高精度かつ高速な翻訳を可能にしました。2018年のWMT(機械翻訳のトップ会議)のShared Taskではほぼ全ての参加チームがTransformerベースのモデルに切り替えており、普及のスピードに驚きました。 Attention i

    Transformerで英日翻訳 - Qiita
    yag_ays
    yag_ays 2019/06/16
  • 論文を書く上での規則 - Qiita

    スライドの作り方 → イショティハドゥス的スライドの作り方 やりがちだけど、やらないべきだよねって思っていること。 論文を書く上でどちらにするか迷うところ。 この記事さえ読めば体裁はまずまともになると思います。 日語・英語両方について書きます。英語は適当なので雰囲気だと思ってください。 ここで出している例はほとんどすべて実在する論文から引用しています。 面倒くさいので引用元は書いてありませんが、Google Scholar などで検索すればすぐ出てくると思います。 Disclaimer あくまで僕の考えなので、参考にするかしないかはおまかせします。 おすすめの文献 科学英文のチェックマニュアル 英語論文におけるポイントはかなりまとまっている上、かなり信頼できます。 英語論文を読む前に一通り目を通しておくとよさそうです。 日語論文を書く上でも参考にになる場所があります。 科学論文に役立つ

    論文を書く上での規則 - Qiita
    yag_ays
    yag_ays 2019/06/15
  • pip install時にMemory Errorが出た時の対処法 - Qiita

    背景 AWSでpip install -r requirments.txtしている時に、 メモリが足りないためにMemory Errorが出たことがあった。

    pip install時にMemory Errorが出た時の対処法 - Qiita
    yag_ays
    yag_ays 2019/06/14