Domain error Failed to resolve DNS path for this host

要約 超高精度自然言語処理&係り受け解析を実施するGiNZAがすごくて、 Colaboratoryにより環境構築不要でブラウザだけでサクッと使える。 そのサクッと感を強調すべく、LT(ライトニングトーク)の最中に その場で環境構築&コードを書いて自然言語処理、 しかも高精度&高機能ができるよ、という「手品」をやってみた。 一見スゴイが「手品」にはタネがあって・・・。という話をする。 最後まで読むと、以下の二つのノウハウが分かる ・GiNZAで、ゼロから3分で高精度自然言語処理する方法 ・LTでライブコーディングする手品のタネ 背景①: GiNZAすごいっ! 2019年4月に発表された「GiNZA」という、 日本語自然言語処理オープンソースライブラリを動かしてみたら、 簡単に高精度で(超重要)、係り受けやベクトル化なども含めた、 自然言語処理全般が実施出来たので驚いた。 ご参考: https
最近の自然言語処理では、大規模なテキストから単語の分散表現や言語モデルを学習させて使っています。学習する際のテキストとしては、分量や利用しやすさの都合からWikipediaが選ばれることが多いですが、その前処理は意外と面倒で時間のかかる作業です。そこで、本記事では比較的最近リリースされた前処理済みのデータセット「Wiki-40B」とその使い方を紹介します。 Wiki-40Bとは? Wiki-40Bは、40言語以上のWikipediaを前処理して作られたデータセットです。このデータセットは言語ごとに学習/検証/テスト用に分かれているので、単語分散表現や言語モデルの学習・評価に使えます。言語ごとの対応状況については、以下のページを参照するとよいでしょう。 wiki40b | TensorFlow Datasets 前処理としては、大きくは以下の2つに分けられます。 ページのフィルタリング ペー
概要 Flairは、Pytorchで書かれた自然言語処理用のフレームワークです。固有表現抽出や品詞タグ付け、文章分類などの機能を提供しているほか、文章埋め込み (Sentence Embedding) も簡単に計算することができます。以前に本ブログで紹介したSWEMも扱うことができたので、ここで使い方を紹介したいと思います。 記事:SWEM: 単語埋め込みのみを使うシンプルな文章埋め込み - Out-of-the-box 方法 単語ベクトルの読み込み まずFlairで学習済みの単語埋め込みベクトルを読み込みます。あらかじめ学習済み単語ベクトルのファイルを用意しておく必要はなく、以下のコードを初めて動かす際に自動でウェブからダウンロードされます。日本語の場合は、fastTextが提供しているja-wiki-fasttext-300d-1Mが選択されます。 from flair.embeddi
はじめに 2chまとめを読んでいたら、"長い"みたいなレスを投げられていた二郎コピペがあった。せっかく名文なのに長いの一言で一蹴されては報われないので、日本語の自動要約をしてくれるshucaを用いて短く要約してみた。 shucaとは? github.com python2系で動く自動要約プログラム。shuca単体では動作せず、他に京大で開発されているjuman(形態素解析プログラム)とknp(構文解析プログラム)が必要。 実際に要約してみる まずはコピペを以下から拾ってくる。 fullopen.blog.jp ■その50 今日、ついに二郎デビューしたんでレポっす! 川崎店に行ったらすごい行列でまずびっくり! すっげえな!と思って店の中を見て、 みんなが食ってるラーメンのボリュームを見てまたびっくり! これが二郎・・・と、思わずヨダレが出る。 待つ事20分、やっと席につくことができた。 「ヤ
ニュース記事データセット 日本語のニュース記事データセットはlivedoorニュースコーパスを利用しました。 https://www.rondhuit.com/download.html ニュース記事は、 dokujo-tsushin, it-life-hack, kaden-channel, livedoor-homme, movie-enter, peachy, smax, sports-watch, topic-news の9種類の分類として与えられています。 自然言語モデルの作成 前処理など準備 データセットの成形 日本語記事を今回の実験用に成形します。記事本文は /dataset/news_text/ ディレクトリ配下に置いておきます。なお、 LICENSE.txt など利用しないテキストファイルはあらかじめ削除しておきます。 今回はモデルの作成、教師データとしてテキストの8割を
SCDVのコードはGithubで公開されている(https://github.com/dheeraj7596/SCDV )ほか、ベンチマークとなるデータセットに対する適用方法がそのままあるので、今回のデータセットを使うにあたっては資産をほとんどそのまま使うことができました。python2だった部分をpython3に対応させるのがちょっと手間でしたが... リポジトリ全体はこちら: fufufukakaka/SCDV python3に対応させて20newsgroupを実行しているのがこちら livedoorニュースコーパスで実験しているのがこちら ノートブック、雑にやってしまったので適宜必要なところはコードを貼っていきながら解説します。 まずはword2vecを学習させる+単語ベクトル空間を可視化 まずはword2vecを学習させていきます。livedoorニュースコーパスはテキストファイル
自分のブログのテキストを分析・可視化してみたい 以前自分のブログの分析を「内部リンク」や「はてブ情報」の観点で行ってみました。 ただ、目的無く分析してしまったので、結局イマイチどう活用してよいかよく分からない結果しか得られませんでした。 そんな前回の反省を全く活かすことなく、また何の目的もなくブログを分析してみることにしました。今回は以前から興味のあった機械学習を用いたブログの文章の分析・可視化(テキストマイニングと呼ばれるらしいです)にチャレンジしてみることにしました。どちらかというとテキストマイニングが主で、使用する素材(学習データ)に困ったので仕方なく自分のブログを使ってみたというのが正直なところです。 ネットでコピペすりゃ簡単にできるだろと思っていたのですが、自分のやりたいことするのはそれなりに大変だったので、知見としてやり方とどんなことが分かるのかを残しておきます。 ブログのテキ
スパム判定などでお馴染みのナイーブベイズ分類器。 構造が比較的単純なのに割といい感じに分類できるので重宝がられています。 ナイーブベイズ分類器で用いる文書モデルとして、「言語処理のための機械学習入門」(奥村学 著)では 多変数ベルヌーイモデル (multivariate Bernoulli model) 多項モデル (multinomial model) がそれぞれ最尤(ML*1)推定、最大事後確率(MAP*2)推定の場合について説明されていて、まあ例題を追っていけば高校生でも文系の子でもわかる感じ*3なんだけど、そういえばちゃんと自分で書いたことなかったなあと思って、寒いのにソイあずき抹茶フラペチーノをすすりながらやってみたのでした。 # -*- coding: utf-8 -*- from math import log # # 多変数ベルヌーイモデル multivariate Ber
LDA とは "Latent Dirichlet Allocation"。文書中の単語の「トピック」を確率的に求める言語モデル。 「潜在的ディリクレ配分法」と訳されていることもあるが、その名前だと「それってなんだっけ?」という人のほうが多そうw。 各単語が「隠れトピック」(話題、カテゴリー)から生成されている、と想定して、そのトピックを文書集合から教師無しで推定することができる。特徴は、果物の apple と音楽の apple とコンピュータ関連の apple を区別することが出来る(ことが期待される)という点。そのために、どのトピックを生成しやすいかという分布を各文章も持つ。細かい話は略。 結果の見方としては、定量的にはパープレキシティを見るし(一般に小さいほどいい)、定性的には各トピックがどのような単語を生成するか、その確率上位のものを見てふむふむする。この「各トピックが生成する単語」
今までPRMLを読んで実装を続けてきましたが、10章からは難しくて歯が立たなくなってきたのでここらで少し具体的な応用に目を向けてみようと思います。機械学習の応用先としては画像の方が結果を見ていて面白いんですが、当面は自然言語処理を取り上げます。そんなわけで一番始めの応用は機械学習と自然言語処理の接点として非常に重要なテキスト分類(Text Classification, Text Categorization)の技法たちを試していきたいと思います。テキスト分類は文書分類(Document Classification)という呼び方もあります。テキストと文書は同じ意味です。最初なので自分の知識の整理と入門者への紹介のためにちょっと丁寧にまとめてみました。 テキスト分類とは テキスト分類とは、与えられた文書(Webページとか)をあらかじめ与えられたいくつかのカテゴリ(クラス)に自動分類するタス
第2回自然言語処理勉強会@東京が 9/25 に行われます。 前回よりキャパの大きい会場&週末に参加募集が始まったばかりですが、早くもほぼ定員。 自然言語処理に興味のある人はぜひ。でも、計画的なドタキャンは運営の方にご迷惑がかかるのでやめてね。 今度の第2回でも出しゃばって発表させてもらう予定だが、第1回も「Web本文抽出 using CRF」という話をさせてもらった。 CRF(Conditional Randam Fields) を Web ページからの本文抽出に用いるという手法の提案という内容で、実際に動作する Python スクリプトもあわせて公開している。 資料: http://www.slideshare.net/shuyo/web-using-crf 実装: http://github.com/shuyo/iir/blob/master/sequence/crf.py http:
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く