オープンサイエンスとは?
手法とアウトプットを共有して影響力を高める
オープンサイエンスは、科学的手法やアウトプット (出版物、データ、ソフトウェアなど) に透明性を与え、広く利用できるようにする取り組みです。オープンサイエンスは、利用可能なデータおよびコードを最大限に再利用し、科学者がほかの科学者の研究を基に研究を進めることを可能にします。
MATLAB® および Simulink® を使用する研究者は、オープンサイエンスを実践して研究の科学的影響力を高めることができます。
オープンな手法: 実行可能なノートブック
十分に文書化された手法やワークフローは、科学者がお互いの実験ロジックを追い、結果を解釈できるよう支援することにより、オープンサイエンスを実現します。
ライブスクリプト
MATLAB ライブスクリプトを使用すると、研究者はコード、インラインビジュアル、およびデータを活用してストーリーを伝えることができるため、作業プロセスと結果に透明性が生まれ、理解が容易になります。研究者は、以下を行うことができます。
- 実行可能なオンライン ノートブックに、コードとともに画像、テキスト、数式、およびハイパーリンクを組み込み
- 他の研究者がパラメーターを変えて実験したり、実践的な環境で学習できるようにする、対話型 UI コントロールの使用
- PDF、Word、HTML および LaTeX などの標準的なフォーマットでのパブリッシュ
- 変更を追跡し他のプロジェクトメンバーと共同作業を行うための、Git および SVN を使用したソース管理の実現
- 大規模な共同開発プロジェクトの計画を立てて整理するための、コードおよび依存関係の解析の適用
Jupyter での MATLAB の使用
Jupyter® Notebook は、オープンサイエンスのプロジェクトで広く利用されている、ブラウザーでアクセス可能な計算ノートブックです。Python と同様に、MATLAB ユーザーは利用可能な MATLAB カーネルと MATLAB ライセンスを使用して Jupyter Notebook (.ipynb ファイル) を開発および実行できます。
マルチユーザーの JupyterHub 環境を操作するために、ライセンスユーザーが Web ブラウザーを介して MATLAB デスクトップにフルアクセスできるようになる MATLAB Integration for Jupyter をインストールすることができます。
オープンデータおよびアクセス
データ、モデル、およびアルゴリズムへのアクセスを提供することで、科学者が既存のフレームワークに基づいて構築できるようにします。オープンサイエンスでは、フレームワーク間でのアクセスを確保するために、異なるデータ形式およびプログラミング言語間での相互運用可能性が必要です。
データへのオープンアクセス
MATLAB ツールを使用してアクセスできる公開データセットには次のものがあります。
- Allen Brain Observatory: Brain Observatory Toolbox は、Allen Institute の神経科学データにアクセスするためのオブジェクト指向インターフェイスです
- EGI: ユーザーは、EGI クラウドを介して数百ものデータセンターにアクセスできる共有オンライン ノートブックを使用して MATLAB を実行できます
- Climate Data Store: ECMWF ユーザーは、Copernicus の C3S から netCDF 気候データファイルをダウンロードし、そのファイルを MATLAB にインポートして処理できます
データ形式の読み取り
標準的なデータおよびモデルの形式もオープンサイエンスをサポートしています。MATLAB では以下が可能です。
- 一般的な科学データ形式などの普及しているデータ形式のデータのほか、ロボティクス、神経画像、医用画像と時系列解析、生物科学、気象学、地球科学などの多くの専用のデータ形式のデータを処理する
- ディープラーニング モデルおよび ONNX™ モデル形式を直接インポートする
- MATLAB の RESTful Web サービスを介して、JSON、XML、TXT などの形式の Web アプリケーション データを読み取る
- ThingSpeak™ と MATLAB を組み合わせて、IoT システム内の接続デバイスからデータをインポートして処理する
- Arduino® および Raspberry Pi™ を使用してデータ収集デバイスに接続する
- 実験において Android™ デバイスまたは iPhone デバイスのセンサーを利用する
相互運用可能なコードおよび MATLAB アルゴリズム
オープンサイエンスでは、データへのオープンアクセスによって、対象データから意味のある結果を生成するコードおよびアルゴリズムへのオープンアクセスが伴わなければなりません。
- Python、C、FORTRAN、およびその他の言語との双方向の MATLAB 統合により、一方の言語で記述されたアルゴリズムをもう一方の言語から呼び出すことができます。
- MATLAB Web アプリにより、非 MATLAB ユーザーとカスタムツールを共有できます。
- MATLAB Coder™ を使用することで、ユーザーは組み込みシステムなどのさまざまなソフトウェアおよびハードウェア プラットフォーム用の C および C++ コードを生成できます。
- MATLAB Compiler™ により、MATLAB アプリケーションをスタンドアロン アプリケーションとして共有できるため、エンドユーザーは MATLAB ライセンスなしでアプリケーションを実行できます。
オープンコード
オープンサイエンスの主なモチベーションは、科学的成果物やアルゴリズムの再利用です。コードとソフトウェアを共有することで、お互いの作業を土台にして研究成果を構築できるようになります。
File Exchange のオープンな MATLAB コード
研究者は、File Exchange でほかの研究者が共有した MATLAB コードやアルゴリズムに自由にアクセスしてダウンロードおよび利用することができます。また、MATLAB ツールバー上の [アドオン] ボタンからそれらにアクセスすることも可能です。
ツールボックスの作成者は、File Exchange から GitHub リポジトリへの関連付けを行うことでアルゴリズムを共有し、単一コードソースの可視性を高めることができます。GitHub に関連付けられた File Exchange リポジトリは、最新バージョンの GitHub に自動的に接続されます。
再利用ポータル上のオープンな MATLAB コード
オープンサイエンス向けのいくつかの再利用ポータルでは、研究者が MATLAB ライセンスを所有しているかどうかに関係なく、アップロードされたコードを実行してクラウドで結果を再現できる環境を提供しています。
- Code Ocean: 研究論文に関連付けられた実行可能な MATLAB コードカプセルを含みます
- Whole Tale: 再現可能な研究成果物または "テール" をホストします (MATLAB テールは、ブラウザーベースの MATLAB デスクトップ、MATLAB を実行する Jupyter Notebook、または Linux Web デスクトップを使用してアクセス可能)
- BioLib: セキュリティで保護された環境でデータを使用できるよう、共有された MATLAB コードを Web アプリに変換します
オープンサイエンスのインフラストラクチャ
リモートで接続および共同作業を行う研究者が増えるにつれ、オープンサイエンスでは個々のローカルのワークステーションを超えるインフラストラクチャが必要となります。
Web ブラウザーを介した実行可能なコード
コーディング環境へのオンラインアクセスにより、科学的リソースが移植可能になり Web でアクセスが可能となります。
- MATLAB Online および Simulink Online ではインストールやダウンロードをすることなく、Web 上で MATLAB にアクセスできます
- MATLAB Drive のファイルストレージにより、研究者、教員、および学生はリモートでプロジェクトの共同作業をしたり、成果物を交換したりできます
パブリッククラウドおよびパブリックサービスにおける MATLAB
MATLAB は、オープンサイエンスで使用されるさまざまなサービスでアクセスが可能です。
- MATLAB は AWS や Azure などのクラウド プラットフォームと連携するため、クラウド計算サービスを活用して処理能力を向上させたり、S3 コンテナーに保存されたデータにアクセスしたりできます
- データサイエンスの研究者は、Domino Data Lab プラットフォームを使用して、スケーラブルなコンピューティングを可能にするために一元的にホストされたデータで MATLAB アルゴリズムを実行します
- Compute Canada および SNIC などの HPC センターでも MATLAB を提供しています
Docker コンテナーでの MATLAB
コンテナ化されたコードは移植可能かつ再利用可能なため、オープンサイエンスを実践できます。利用可能な MATLAB コンテナーには、以下があります。
- 組み込みの対話型 IDE で構成可能な、事前構築済みの DockerHub 上の MATLAB コンテナー
- NVIDIA NGC クラウド上の事前構築済み MATLAB Deep Learning Container
- 研究者は、MATLAB を使用して Docker コンテナーをカスタムで構築することも可能
サイエンス ゲートウェイ
サイエンス ゲートウェイは、科学者やエンジニアが共有されたリソースを利用できるオンラインの共同作業ポータルです。オープンサイエンスを可能にするために、MathWorks と多くのサイエンス ゲートウェイが協力し、コミュニティから提供される MATLAB 関連のコンテンツや MATLAB の計算機能を利用できるようにしました。
より広い対象をカバーする柔軟性の高いライセンス付与
多くの大学や研究機関では、すべての所属メンバーが MATLAB にアクセスできるよう、全学利用向けおよび全組織利用向けの MATLAB ライセンスモデルを導入しています。オープンサイエンスの原則に従って、学術機関はプロジェクトに携わる外部の共同研究者に MATLAB へのアクセスを提供することもできます。
教育におけるオープンサイエンス
オープンサイエンスは研究用途に限ったものではなく、科学的なアウトプットや手法を学生や教員が利用できるようにすることも含まれます。以下は、教員や学生を対象にした一般利用が可能なリソースの例です。
- Science Education Resource Center (SERC) カリキュラムポータルから MATLAB を使用した科学および工学における計算の授業のためのリソース
- STEM サポート: 学生向けコンテスト、提携、およびカリキュラム開発
- Bytes and Beats コースウェアを使用した子ども向けのオープンで楽しいプログラミング