Bionetliteとは
概要
Bionetliteは、Brain Modeling Toolkit (BMTK) のbionetモジュールを拡張したPythonパッケージです。Neuliteカーネル用のネットワークデータを生成し、既存のBMTKコードを最小限の変更で再利用できます。
特徴
既存コードの再利用
BMTKで記述されたネットワーク構築コードのimport文を変更するだけで、Neulite用のデータを生成できます。
# BMTK case
from bmtk.builder.networks import NetworkBuilder
net = NetworkBuilder('v1')
net.add_nodes(...)
net.build()
net.save_nodes(output_dir='network')
# bionetlite case (only change import)
from bionetlite import NeuliteBuilder as NetworkBuilder
net = NetworkBuilder('v1')
net.add_nodes(...) # Same code
net.build() # Same code
net.save_nodes(output_dir='network') # Same code
技術的詳細
BMTKのNetworkBuilderクラスを拡張し、bionetの全機能を維持しながらNeulite用の出力を追加します。
# bionet case
from bmtk.builder.networks import NetworkBuilder
# bionetlite case
from bionetlite import NeuliteBuilder as NetworkBuilder
主な処理
SWCファイルの前処理: Perisomatic model への変換、DFSソート
イオンチャネル設定の変換: JSON形式からCSV形式へ
ネットワークファイルの生成: <network_name>_population.csv、<src>_<trg>_connection.csv
詳細は 設計と実装 を参照してください。
出力ファイルの比較
bionetとbionetliteでは、生成されるファイルが異なります。
File Type |
bionet (BMTK) |
bionetlite |
|---|---|---|
Network Data |
<network>_nodes.h5<network>_node_types.csv<src>_<trg>_edges.h5<src>_<trg>_edge_types.csv |
<network>_nodes.h5<network>_node_types.csv<src>_<trg>_edges.h5<src>_<trg>_edge_types.csv+
<network>_population.csv+
<src>_<trg>_connection.csv |
Morphology Files |
Original SWC files (unchanged) |
Processed SWC files (Perisomatic model conversion, DFS sorted) |
Ion Channels |
JSON format ( |
JSON format (
*_fit.json)+ CSV format (converted for Neulite)
|
bionetliteは、BMTKの標準出力(H5/CSV)を完全に維持しながら、Neulite用の追加ファイル(<network_name>_population.csv、<src>_<trg>_connection.csv)を生成します。これにより、同じネットワークデータで両方のシミュレータを実行できます。
使用例
from bionetlite import NeuliteBuilder as NetworkBuilder
# Create network
net = NetworkBuilder('v1')
# Add nodes and edges (same as BMTK)
net.add_nodes(...)
net.add_edges(...)
# Build and save
net.build()
net.save_nodes(output_dir='network')
net.save_edges(output_dir='network')
データ標準化の自動サポート
このアプローチによって、BMTKが対応する SONATA や Allen Cell Types Database などの標準形式を自動的にサポートします。
関連リンク
Neuliteシミュレータ: Neuliteカーネルとは
セットアップガイド: bionetliteのセットアップ
チュートリアル: Tutorial 1: 単一細胞の定常電流入力
参考
Bionetliteの設計詳細や実装、BMTKとBioNetの背景については、設計と実装 を参照してください。