11 KiB
クラウドにおけるデータサイエンス入門
![]() |
---|
クラウドにおけるデータサイエンス: 入門 - スケッチノート by @nitya |
このレッスンでは、クラウドの基本原則を学び、クラウドサービスを利用してデータサイエンスプロジェクトを実行することがなぜ興味深いのかを理解します。そして、クラウドで実行されるデータサイエンスプロジェクトのいくつかの例を見ていきます。
講義前クイズ
クラウドとは?
クラウド、またはクラウドコンピューティングとは、インターネットを介して提供される幅広い従量課金型のコンピューティングサービスを指します。これには、ストレージ、データベース、ネットワーキング、ソフトウェア、分析、インテリジェントサービスなどのソリューションが含まれます。
通常、クラウドは以下のようにパブリッククラウド、プライベートクラウド、ハイブリッドクラウドに分類されます:
- パブリッククラウド: パブリッククラウドは、第三者のクラウドサービスプロバイダーによって所有・運営され、インターネットを介して一般にコンピューティングリソースを提供します。
- プライベートクラウド: プライベートクラウドは、特定の企業や組織が専用で使用するクラウドコンピューティングリソースを指し、サービスやインフラはプライベートネットワーク上で維持されます。
- ハイブリッドクラウド: ハイブリッドクラウドは、パブリッククラウドとプライベートクラウドを組み合わせたシステムです。ユーザーはオンプレミスのデータセンターを選択しながら、データやアプリケーションを1つ以上のパブリッククラウドで実行することができます。
クラウドコンピューティングサービスの多くは、以下の3つのカテゴリに分類されます:IaaS、PaaS、SaaS。
- Infrastructure as a Service (IaaS): サーバーや仮想マシン(VM)、ストレージ、ネットワーク、オペレーティングシステムなどのITインフラをレンタルします。
- Platform as a Service (PaaS): ソフトウェアアプリケーションの開発、テスト、提供、管理のための環境をレンタルします。開発に必要なサーバー、ストレージ、ネットワーク、データベースなどの基盤インフラを設定・管理する必要はありません。
- Software as a Service (SaaS): インターネットを介してオンデマンドで、通常はサブスクリプションベースでソフトウェアアプリケーションにアクセスします。ホスティングや管理、ソフトウェアのアップグレードやセキュリティパッチなどのメンテナンスを心配する必要はありません。
主要なクラウドプロバイダーには、Amazon Web Services、Google Cloud Platform、Microsoft Azureがあります。
データサイエンスにクラウドを選ぶ理由
開発者やITプロフェッショナルがクラウドを選ぶ理由には、以下のようなものがあります:
- イノベーション: クラウドプロバイダーが提供する革新的なサービスをアプリケーションに直接統合することで、アプリを強化できます。
- 柔軟性: 必要なサービスだけを利用し、幅広いサービスから選択できます。通常は従量課金制で、進化するニーズに応じてサービスを調整できます。
- 予算: ハードウェアやソフトウェアを購入し、オンサイトのデータセンターを設置・運営する初期投資が不要で、使用した分だけ支払えば済みます。
- スケーラビリティ: プロジェクトのニーズに応じてリソースを拡張できるため、アプリは外部要因に応じてコンピューティングパワー、ストレージ、帯域幅を増減できます。
- 生産性: データセンターの管理など、他者に任せられるタスクに時間を費やすことなく、ビジネスに集中できます。
- 信頼性: クラウドコンピューティングはデータの継続的なバックアップ方法を提供し、災害復旧計画を設定して、危機時でもビジネスやサービスを継続できます。
- セキュリティ: プロジェクトのセキュリティを強化するポリシー、技術、コントロールを利用できます。
これらはクラウドサービスを選ぶ一般的な理由の一部です。クラウドの概要とその主な利点を理解したところで、データサイエンティストやデータを扱う開発者の仕事に焦点を当て、クラウドが彼らの直面する課題をどのように解決できるかを具体的に見ていきましょう:
- 大量のデータの保存: 大型サーバーを購入、管理、保護する代わりに、Azure Cosmos DB、Azure SQL Database、Azure Data Lake Storageなどのクラウドソリューションを利用してデータを直接クラウドに保存できます。
- データ統合の実行: データ統合はデータサイエンスの重要な部分であり、データ収集からアクションへの移行を可能にします。クラウドが提供するデータ統合サービスを利用すれば、さまざまなソースからデータを収集、変換、統合し、単一のデータウェアハウスにまとめることができます(例:Data Factory)。
- データの処理: 大量のデータを処理するには多くのコンピューティングパワーが必要ですが、すべての人が十分な性能を持つマシンを持っているわけではありません。そのため、多くの人がクラウドの膨大なコンピューティングパワーを直接活用してソリューションを実行・展開しています。
- データ分析サービスの利用: Azure Synapse Analytics、Azure Stream Analytics、Azure Databricksなどのクラウドサービスを利用して、データを実用的な洞察に変えることができます。
- 機械学習とデータインテリジェンスサービスの利用: ゼロから始める代わりに、クラウドプロバイダーが提供する機械学習アルゴリズムを利用できます(例:AzureML)。また、音声認識、音声合成、コンピュータビジョンなどのコグニティブサービスも利用可能です。
クラウドにおけるデータサイエンスの例
いくつかのシナリオを見て、具体的に理解を深めましょう。
リアルタイムのソーシャルメディア感情分析
機械学習を始める人々がよく研究するシナリオとして、リアルタイムのソーシャルメディア感情分析があります。
例えば、ニュースメディアのウェブサイトを運営しているとしましょう。ライブデータを活用して読者が興味を持つコンテンツを理解したい場合、Twitterの投稿データをリアルタイムで感情分析するプログラムを構築できます。
注目すべき指標は、特定のトピック(ハッシュタグ)に関するツイートの量と感情です。感情は指定されたトピックに関する感情分析を行う分析ツールを使用して確立されます。
このプロジェクトを作成するための手順は以下の通りです:
- 入力ストリームを収集するイベントハブを作成
- TwitterストリーミングAPIを呼び出すTwitterクライアントアプリケーションを設定・開始
- Stream Analyticsジョブを作成
- ジョブの入力とクエリを指定
- 出力先を作成し、ジョブの出力を指定
- ジョブを開始
完全なプロセスを見るには、ドキュメントを参照してください。
科学論文の分析
このカリキュラムの著者の一人であるDmitry Soshnikovが作成したプロジェクトを例に取り上げます。
DmitryはCOVID関連の論文を分析するツールを作成しました。このプロジェクトをレビューすることで、科学論文から知識を抽出し、洞察を得て、大量の論文コレクションを効率的にナビゲートするツールを作成する方法を学べます。
使用された手順は以下の通りです:
- Text Analytics for Healthを使用して情報を抽出・前処理
- Azure MLを使用して処理を並列化
- Cosmos DBを使用して情報を保存・クエリ
- Power BIを使用してデータ探索と可視化のためのインタラクティブなダッシュボードを作成
完全なプロセスを見るには、Dmitryのブログを訪問してください。
このように、クラウドサービスを活用してデータサイエンスを実行する方法は多岐にわたります。
脚注
出典:
- https://azure.microsoft.com/overview/what-is-cloud-computing?ocid=AID3041109
- https://docs.microsoft.com/azure/stream-analytics/stream-analytics-twitter-sentiment-analysis-trends?ocid=AID3041109
- https://soshnikov.com/science/analyzing-medical-papers-with-azure-and-text-analytics-for-health/
講義後クイズ
課題
免責事項:
この文書は、AI翻訳サービス Co-op Translator を使用して翻訳されています。正確性を追求しておりますが、自動翻訳には誤りや不正確な部分が含まれる可能性があります。元の言語で記載された文書が正式な情報源と見なされるべきです。重要な情報については、専門の人間による翻訳を推奨します。この翻訳の使用に起因する誤解や誤訳について、当社は一切の責任を負いません。