非構造化データとは、どのようなデータなのでしょうか。みなさんは、構造化データ・非構造化データの違いを把握していますか?
データ活用において、その違いを理解しておくことは重要です。両者の違いを理解しなければ、データ活用の難易度や方向性、必要なデータサイエンス人材の質・量などを適切に策定することはできません。
早速、非構造化データとは何かや、構造化データ・非構造化データの違いを押さえていきましょう。
非構造化データとは、スキーマオンリードとも呼ばれており、構造化されていないデータのことを指します。
非構造化データは単体のデータで役割を果たすため、保存時はもとの形式を保たれ、使用するときまで処理されません。また、非構造化データには、以下のような種類があります。
これらのデータは、検索・集計・解析に向いておらず、規則性のないデータです。
非構造化データには、以下のような3つのメリットがあります。
上記のメリットを理解した上で非構造化データを活用することによって、データを有効的に利用できます。それでは、非構造化データの3つのメリットについてそれぞれ解説します。
非構造化データは、データの生成時に特別な加工や処理がされていないため、自由度が高く、用途に合わせて柔軟にデータを活用できます。また、非構造化データには、音声データや動画データなどの数値で表せないデータが含まれるため、顧客ニーズの深掘りにも有効です。
データの高速収集が可能なことも、非構造化データのメリットの1つです。
通常、データの整形や処理をするためには手間や時間がかかることが多いです。しかし、非構造化データは保存する際に、整形や処理をする必要がないため、データの高速収集ができます。データの高速収集ができると、大量のデータを集めることの効率化にも繋げられます。
非構造化データには、コスト削減とスケーリングが可能なメリットがあります。
非構造化データは大量のデータを効率的に収集できるため、非構造化データの保存には、大量のデータを保存できるクラウドデータレイクが用いられます。クラウドデータレイクには、使用した分だけ費用が発生する従量課金制のものもあるため、コスト削減ができるだけでなく、必要な場合には使用する容量を増やせるため、スケーリングが可能です。
非構造化データのメリットについて解説しましたが、非構造化データを利用する場合は、デメリットも知っておきましょう。
非構造化データには、以下の2つのデメリットがあります。
非構造化データのデメリットを知っておくことで、非構造化データの利用が適しているのかいないのかの判断ができます。それでは、非構造化データの2つのデメリットについてそれぞれ解説します。
非構造化データの利用には、データサイエンスに関する専門知識が必要です。
そのため、データの利用に手間がかかってしまいます。非構造化データはデータの形式が自由なメリットがありますが、逆にデータに決まった形式がないため、専門知識がない状態ではデータを上手く活用できません。そのため、非構造化データの利用には、データに関する分野の知識や、それぞれのデータの関連性を理解するための知識が必要不可欠です。
非構造化データを利用する場合には、専門のツールを使いますが、使用可能なツールが少ないというデメリットがあります。
データ分析ツールの多くは構造化データの分析用であるため、非構造化データを分析するとなると、使用するツールの選択肢が少ないです。例えば、画像データを分析する際には、画像を読み取り、画像に何が映っているのか、人物の画像であればどのような表情をしているのかなどを解析する必要があります。そのためには、専門のツールを用いなければならず、専門のツールが少ないことは大きなデメリットと言えます。
非構造化データだけでなく、構造化データについても知っておくと、非構造化データについてより理解を深められます。構造化データとは、ExcelやGoogleスプレッドシートなどのように、列や行を持つデータのことです。構造化データは、その名の通り構造化されたデータであるため、データの検索や集計、比較などをしやすいです。
構造化データには、以下の3つのメリットがあります。
非構造化データのメリットと比較してみてもよいでしょう。それでは、構造化データの3つのメリットについて、それぞれ解説します。
構造化データには、データ操作やクエリの実行しやすいメリットがあります。構造化データは、列と行があるため、フィールドが明確に定められており、データが整理されています。そのため、データ捜査やクエリの実行がしやすいです。
ビジネスユーザーが利用しやすいことは、構造化データの大きなメリットと言えます。
構造化データは、データが整理されているため、取り扱うデータに関する知識があれば、誰でも容易にデータを利用できます。そのため、データの利用頻度が多いビジネスユーザーが、データを利用しやすいことがメリットです。
構造化データに使用できるツールは、非構造化データに使用できるツールよりも種類が多いというメリットがあります。
使用できるツールが多いことで、自社が取り扱っているデータや、欲しい機能に合わせてツールを選択することが可能です。また、使用できるツールが多いということは、ツールの検証が多く行われていることを表しているため、より自社にあったツールを選びやすいことに繋がります。
構造化データのメリットについて解説しましたが、非構造化データと同様に、構造化データにもデメリットが存在します。
構造化データには、以下の2つのデメリットがあります。
構造化データには、目的に関するデメリットが多いです。それでは、構造化データの2つのデメリットについて、それぞれ解説します。
構造化データは、目的以外での利用が難しく、データの柔軟性や活用が制限されます。構造化されたデータであることが特徴の構造化データですが、事前に意図した目的での利用しかできないため、目的以外での利用が難しく、柔軟なデータの活用はできません。
構造化データは目的以外での利用が難しいですが、目的の変更もしづらいデメリットがあります。構造化データの目的やデータの要件に変更があった場合には、構造化データの更新が必要となることが多いです。データの更新に必要なコストは大きいため、容易に目的の変更がしづらいです。
構造化データを扱うデータベース言語として有名なのが「SQL」です。SQLは「Structured Query Language(構造化クエリ言語)」の頭文字で構成されており、まさに、構造化されたデータベースに対し、検索、追加、更新、削除、抽出、データ型変換、集計、重複・欠損・異常値の処理、結合といった操作を行うための言語といえます。
──なんだ、構造化データを活用するときにも操作の知識や手間が必要なんじゃないか。
そう、考えた方もいらっしゃるでしょう。データは構造化されていても、不要なデータが含まれていたり、分析のために並べ替えや抽出、他データとの統合を行いたくなったりすることはほぼ確実にあります。そのため、SQLやPython、R、Excelを用いた前処理の技術は構造化データの分析においても不可欠です。
ただし、Excelでテーブルを作成し、データを並べ替えたりソートしたりした経験はあるという方は少なくないはずです。SQLやPython、Rを用いた前処理も、構造化データに対し行うものであれば習得難易度はそう高くありません。
機械学習の勉強にあたっても、構造化データを用いた教師あり学習(「正解データ」をあらかじめ与えることで特徴量を解析し分類や予測といった処理を行わせる機械学習の手法)から学ぶことで、データと結果の関係性を把握し、その基本が理解しやすくなるはずです。
構造化データ、非構造化データの違いは、“データの構造が明確に定義されているか、定義されていないか”です。データの構造とは、データ型、データの配列、区切り文字などで、「列」と「行」を持つ表形式がこれまで用いられてきました。構造化データは利用目的に従ってデータの構造が明確に定義されたデータであり、非構造化データはそれ以外のすべてのデータを指します。
両者を理解するにあたって押さえておきたいポイントを以下の表でまとめてご確認ください。
構造化データ | 非構造化データ | |
データ構造 | 明確 | 不定 |
データの性質 | 定量的 | 定性的 |
データ分析 | しやすい | 専門知識が必要 |
例 | リレーショナルデータベース(RDB)、Excel、CSVなど | テキスト、PDF、画像、音声、動画、SNSの書き込み、センサーデータ、紙の文書など構造化されていないデータ全て |
データ量 | 少ない | 多い |
検索性 | 高い | 低い |
機械学習 | 利用しやすい | 強化学習、ディープラーニングなど可能性は広がっている |
保存場所 | 主にデータウェアハウス | 主にデータレイク |
構造化データはデータ構造が明確であり、機械学習やデータ分析に用いやすいかわりに、事前の整理が必要なため、絶対量は少なくなります。また、目的に従って構造化されているため、利用の自由度には制限があることも覚えておきましょう。
一方、非構造化データはいたるところに存在するため、取得が容易であり活用の可能性も開かれています。ただし、構造が統一されていないため、実際の活用時には変換・加工の手間やデータサイエンスの知識が必要です。
なお、非構造化データのなかでも、XML、JSONなど、表形式で明確に定義されていないものの、階層構造やメタタグなどである程度構造が整理されているデータは「半構造化データ」といいます。
非構造化データには、以下3点のようなデータの「管理」における課題があります。
以下では、非構造化データの課題を、データの管理におけるポイントとともに解説します。
非構造化データは、構造化データと比べてデータ容量が大きいため、データ単体での利用も考えられます。しかし、データ単体で利用するためには、データの分類や保管の方法をあらかじめ定めておき、社内で共有することが必要です。
構造化データはデータベース上での管理ができますが、非構造化データはデータベース上での管理が難しいです。そのため、ファイルに保存するデータが増えるにつれて、データの検索性や更新性を保つことが難しくなります。非構造化データを管理する際には、データの場所や更新履歴などがわかるような仕組みにすることが求められます。
非構造化データは、構造化データよりも自由にファイルの作成や保存などができます。しかし、非構造化データの中には、機密情報や顧客情報が含まれていることが多いため、セキュリティ対策とガバナンスに注意することが重要です。
近年は、ビッグデータに代表される非構造化データの活用に注目が集まっています。前述の通り、非構造データは全データ量の約8割といわれるほどの割合を占めておりながら、フォーマットが定まっておらず構造化データに比べ活用されてきませんでした。
しかし、非構造データを構造化するソリューションの登場や、非構造化データから特徴量を見出すディープラーニングなどの手法が発達したこと、IoT、SNSの投稿などビジネスにおいて有用な非構造化データの量がさらに増加したことにより、今非構造化データへの注目が高まっています。
非構造化データを構造化する手法には、以下の3つがあります。
どれも、非構造化データを取り扱う際に活用できる手法であるため、知っておいて損はないです。上記のほかにも、音声のテキスト化やデータクレンジング自動化など、非構造化データの活用を支援するツールは数多く存在しますが、今回は代表的な3つの手法を紹介します。それでは、それぞれの手法について詳しく解説します。
ELTは、「Extract(抽出)」「Load(読み込み)」「Transform(変換)」の頭文字で構成されており、生データを読み込み、利用しやすい形に構造化するまでの流れです。データレイクやDWHに機能として実装されていることが多いです。
アノテーションは、「注釈」という意味を持ち、非構造化データ一つ一つに対し、その意味を説明するメタデータを付与することを言います。近年は自動化ツールも多く登場している手法です。
TF-IDFは、「Term Frequency – Inverse Document Frequency(単語頻度-逆文書頻度)」の略で、ある文書中における単語の出現頻度と、その単語を含む文書の頻度を掛け合わせることでその単語のある文書中での重要度を抽出する手法です。
半構造化データとは、非構造化データでありながら、ある程度構造化されているデータのことです。主にXMLやJSONデータのことを表します。
半構造化データは、ある程度構造化されているため、データを整理することで、構造化データへと変換できる場合もあります。非構造化データよりも、半構造化データはデータの検索や分析が容易なことも特徴の1つです。
構造化データ・非構造化データの違いについて述べたうえで、それぞれの活用イメージについて簡単に解説してまいりました。『平成25年版情報通信白書』(総務省)では、ICTの進展に伴い、構造化データに比べ、非構造化データの量が飛躍的に増加したことが図示されています。そこからの10年で貴社の非構造化データの活用はどの程度進んだでしょうか? 今一度振り返ってみることをおすすめします。
(宮田文机)
メルマガ登録をしていただくと、記事やイベントなどの最新情報をお届けいたします。
30秒で理解!インフォグラフィックや動画で解説!フォローして『1日1記事』インプットしよう!