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 (*_fit.json)

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が対応する SONATAAllen Cell Types Database などの標準形式を自動的にサポートします。

関連リンク

参考

Bionetliteの設計詳細や実装、BMTKとBioNetの背景については、設計と実装 を参照してください。