テキストマイニングは、テキストデータから有用な知識や知恵を抽出する技術の総称です。
一般的に、テキストマイニングは、大まかには、
(1), テキストデータの準備
(2), テキストデータの解析
いったプロセスで行われ、(2)を一般的にテキストマイニングと呼んでいます。
(2)の中では、
- テキストデータから文を抽出
- 文から単語を抽出
- 単語同士の関係を抽出
- 意味を理解する
のようなプロセスで解析されます。
(1), (2), のそれぞれに、様々なフリーソフトやツール・ライブラリが公開されています。
テキストマイニングの初心者の方などは、
- どんなソフトやツール・ライブラリがあるの?
- 無料(フリー)で使える?
- どんな特徴があるの?
といった疑問を持つ方も多いかと思います。
そこで本記事では、
テキストマイニングで使えるフリーソフトや無料のツールやライブラリについて、サクッとまとめます。
本記事の概要
テキストマイニングに使えるフリーソフトや無料で使えるツール・ライブラリ、14選はこちらです
テキストマイニングのそれぞれのステップごとに、
フリーソフトや無料のツール・ライブラリをまとめたいと思います。
(1), テキストデータの準備
テキストマイニングでは、まずテキストデータを用意する必要があります。
自社の営業日報や、商品のアンケート結果、コールセンターへの問い合わせデータなどがあれば、
それを以後のテキストマイニングの元データとして使うことができます。
その他には、Webからテキストデータを取得する方法もございます。
Webからテキストデータをダウンロード技術の1つとして、「クローリング」があり、
以下のフリーソフトやライブラリが使えます。
wget
サクッとWebからデータを取得するには、
「wget」という無料のオープンソースソフトウェアを使うことができます。
wgetは、Webからデータをダウンロードするだけでなく、リンクを辿って、再帰的にWebページを取得することができます。
他にも、近年人気なPython でもクローリングが可能です。
Python ライブラリ 「requests」
Pythonライブラリの「requests」を使えば、
指定したURLのHTMLファイルなどを取得することができます。
このようにしてクローリングしたデータには、いくつかの形式があります。たとえば、
- WikipediaなどのWebサイトやブログ、ニュース記事などをダウンロードしたならHTML形式
- RSSから取得すれば、RDF形式
- APIから取得すれば、JSON形式
といった感じです。
これらのデータには、不要な部分が多く含まれており、必要な部分を抽出する必要があります。
この抽出することを「スクレイピング」と呼びます。
Pythonでスクレイピングするには、
Python ライブラリ「lxml」「cssselect」
といったライブラリが使えます。
requestsで取得したHTMLやXMLファイルは、lxmlによって操作できるようになり、
cssselect で cssを扱うことができ、HTMLから要素を抜き出すことができるようになります。
スクレイピング機能を持つものとして、
Python ライブラリ「BeautifulSoup」
も使えます。
これらを使うことによって、よりラクにスムーズにテキストデータを収集することが可能になります。
クローリングやスクレイピングについて、
- 詳しく学びたい!
- テキストデータの自動取得したい!
- オススメの本を知りたい!
といったあなたにはこちらがございます↓
『「クローリング」や「スクレイピング」を学びたいあなたにおすすめの本、8冊+α はこちらです』
(2), テキストデータの解析
テキストデータを取得したらすぐに分析できるわけではありません。
まずはテキストデータから文、単語、単語間の関係を抽出します。
これらを構造化しておくことで、以後の意味の解析がしやすくなります。
(2-1), 文の抽出
文の抽出を自動で行うには、主に2つの方法があります。
・文分割のための機械学習器を作成する方法
・系列ラベリング
機械学習って何?という方は、以下の記事をどうぞ↓
系列ラベリングって?についてです。
系列とは、単語の列が文になっているように、何かの要素が連なっているものを指します。
「系列ラベリング」とは、文の単語に品詞をつけるのように、系列の要素に何かのラベルをつけることを言います。
見本となる教師データの作成が必要だなぁ
と思われるかもしれません。
そういった時には、オープンソースの無料ツール
doccano
が役立つかもしれません。
「doccano」は、自然言語処理・機械学習に使われるラベル付きデータ(教師データ)の作成を容易にするツール(アノテーションツール)となっています。
というわけで、以下では、
テキストマイニングを行う際に役立つソフトやツールを、
その「使いどころ」や「使い方」を交えながら解説しています。
- テキストマイニングが初めて
- テキストマイニングのこのステップでつまずいてるんだけど、他にいいソフトないかな
- テキストマイニングの全体的な流れも知っておきたい
といったあなたにおすすめの内容となっています。
以下のステップにしたがって、
1ステップずつ、自分で考えた例文を分析するなど試していけば、
初学者の方も、知らず知らずにテキストマイニングの力がつく内容にもなっています。
この先は会員限定になります。
会員の方はログインをお願いいたします。
登録がまだの方は、会員登録をお願いします。
>>> 会員登録はこちら
↓こちら無料で読めます