一般的に、ブートストラッピングとは、外部からの入力なしに継続または成長すると想定される自己開始プロセスを指します。多くの分析手法は、その自己開始または自己維持的な実装にちなんで、しばしばブートストラップ法と呼ばれます。例えば、統計学、金融学、言語学におけるブートストラッピング などが挙げられます。

長靴の上部には、ブーツストラップと呼ばれるタブ、ループ、またはハンドルが付いていることがあります。指やブーツフックを使ってブーツを履くことができます。「ブーツストラップで自分を引き上げる」[1]という言い回しは、19世紀にはすでに不可能な作業の例として使われていました。この慣用句は少なくとも1834年に遡り、ワーキングマンズ・アドボケイト誌に掲載されました。「マーフィー氏は、ブーツストラップを使ってカンバーランド川や納屋の柵を越えることができるようになるだろうと推測される。」[2] 1860年には、心の哲学に関する論評の中でこの表現が使われました。「心が自らを分析しようとする試みは、自分のブーツストラップで自分を引き上げようとする努力に似ている。」[3]ブートストラップは、自分自身の努力によって自分自身を向上させることを意味する比喩として1922年に使用されました。[4]この比喩は、外部からの援助なしに進行する一連の自立したプロセスを表す追加の比喩を生み出しました。[5]

この用語はルドルフ・エーリヒ・ラスペの『ミュンヒハウゼン男爵の不思議な冒険』の物語に由来するとされることもあるが、その物語ではミュンヒハウゼン男爵はブーツストラップではなく髪の毛(特におさげ髪)を使って沼地から自分自身(と馬)を引き上げており、ミュンヒハウゼン物語のさまざまなバージョンの中でブーツストラップについて明示的に言及されている箇所は他に見当たらない。[2]
「Pull yourself up by your bootstraps!(自力で立ち上がれ!)」というフレーズは、もともとは滑稽なほど突飛な、あるいは不可能なことに挑戦するという意味でしたが、その後、経済的流動性や鬱病の治療法を物語る言葉として使われるようになりました。この考え方は、19世紀のアメリカの作家ホレイショ・アルジャーによって広められたと考えられています。 [6]誰かに「bootstrap(自力で立ち上がれ)」と求めることは、強い意志の力で大きな困難を乗り越えられるかもしれないという示唆を与えます。[7]
批評家たちは、このフレーズは不公平な状況を実際よりもはるかに実力主義的に描写するために使われていると指摘している。[8] [9] [7] 2009年の調査によると、アメリカ人の77%が富はしばしば努力の結果であると考えている。[10]様々な研究で、将来の富の主な予測因子はIQや努力ではなく、初期の富であることがわかっている。[7] [11]
コンピュータ技術において、ブートストラップとは、自己コンパイルコンパイラを作成するプロセスを指します。例えば、RustコンパイラはOCamlでブートストラップされました。[12] : 15:34 [13]また、ブートとは通常、電源投入または一般的なリセット後にコンピュータのメモリに基本ソフトウェアをロードするプロセスを指します。カーネルはオペレーティングシステムをロードし、オペレーティングシステムは必要に応じて他のデバイスドライバやソフトウェアをロードします。
ブートとは、コンピュータを起動するプロセス、特にソフトウェアの起動に関するものです。このプロセスは一連の段階から成り、各段階では比較的小さく単純なプログラムがロードされ、次段階のより大きく複雑なプログラムが実行されます。この意味で、コンピュータは「自力で立ち上がる」、つまり自らの努力で自らを向上させるのです。ブートは、ハードウェアベースの手順の実行から始まり、その後、メインメモリにロードされるファームウェアやソフトウェアに引き継がれる一連のイベントです。ブートには、セルフテストの実行、構成設定のロード、BIOS、常駐モニタ、ハイパーバイザ、オペレーティングシステム、ユーティリティソフトウェアのロードなどのプロセスが含まれることがよくあります。
コンピュータ用語「ブートストラップ」は、1950年代に比喩として使われ始めました。コンピュータでは、ブートストラップボタンを押すと、ハードワイヤードプログラムが入力装置からブートストラッププログラムを読み取ります。コンピュータはブートストラッププログラムを実行し、さらにプログラム命令を読み込みます。これは、手動で入力された命令による外部からの支援なしに進行する自立的なプロセスとなりました。コンピューティング用語としての「ブートストラップ」は、少なくとも1953年から使用されています。[14]
ブートストラッピングとは、段階的に複雑化・高速化するプログラミング環境の開発を指す場合もあります。最もシンプルな環境は、おそらく非常に基本的なテキストエディタ(例えばed)とアセンブラプログラムでしょう。これらのツールを用いることで、より複雑なテキストエディタや高水準言語用のシンプルなコンパイラなどを開発し、最終的にはグラフィカル IDEと極めて高水準なプログラミング言語を開発することが可能になります。
歴史的に、ブートストラッピングは、新しいハードウェア上でのコンピュータ プログラム開発の初期の手法を指すこともあります。この段落で説明されている手法は、既存のコンピュータで実行されるクロス コンパイラの使用に置き換えられました。プログラム開発におけるブートストラッピングは、高級コンピュータ言語、コンパイラ、アセンブラ、リンカーが存在しなかったため、各プログラムが 10 進コードまたは 2 進コードで 1 ビットずつ (1 と 0) 紙に作成されていた 1950 年代に始まりました。新しいコンピュータ ( IBM 650など) 用に、いくつかの命令を 2 進コードまたは 10 進コード (A1) に変換する小さなアセンブラ プログラムが手動で作成されました。この単純なアセンブラ プログラムは、より複雑な演算コード用に追加のニーモニックを使用できるように拡張機能を使用して、定義されたアセンブリ言語で書き直されました。拡張アセンブラのソースプログラムは、先行アセンブラの実行ファイル(A1)によってバイナリまたは10進コードにアセンブルされ、A2が生成されました。そして、これらの拡張機能が利用可能になった状態で、このサイクルが繰り返され、命令セット全体がコーディングされ、分岐アドレスが自動的に計算され、その他の便利な機能(条件付きアセンブリ、マクロ、最適化など)が確立されました。こうして、初期のシンボリック最適アセンブリプログラム(SOAP)が開発されました。その後、コンパイラ、リンカー、ローダー、ユーティリティがアセンブリ言語でコーディングされ、よりシンプルなソフトウェアを用いて複雑なソフトウェアシステムを開発するというブートストラッププロセスがさらに継続されました。
この用語は、ダグ・エンゲルバート氏によって提唱され、組織は改善プロセスを改善することでより良く進化できる(つまり、時間の経過とともに複利効果が得られる)という信念に基づいていました。NLSハイパーテキストシステムを開発した彼のSRIチームは、この戦略を適用し、開発したツールを用いてツール自体を改善しました。
最初は既存の言語で開発され、その後新しい言語で書き直されてそれ自体がコンパイルされる、新しいプログラミング言語用のコンパイラの開発は、ブートストラッピングの概念のもう 1 つの例です。
コンピュータプログラムのインストール中に、インストーラーやパッケージマネージャー自体を更新する必要がある場合があります。この場合の一般的な方法は、小さな実行形式のブートストラップファイル(例: setup.exe)を使用することです。このファイルはインストーラーを更新し、更新後に実際のインストールを開始します。ブートストラップファイルは、ブートストラッププロセス中にソフトウェアに必要な他のソフトウェアもインストールすることがあります。
ブートストラップノードはランデブーホストとも呼ばれ、[15]オーバーレイネットワーク内のノードであり、新しく参加するノードがオーバーレイネットワークに正常に参加できるように初期構成情報を提供します。[16] [17]
離散事象シミュレーションと呼ばれるコンピュータシミュレーションの一種は、システムの動作を時系列のイベントのシーケンスとして表現します。シミュレーションモデルにはブートストラップと呼ばれる手法が用いられ、疑似乱数生成器を用いて初期データポイントをブートストラップし、保留中のイベントの初期セットをスケジュールします。これらのイベントセットは追加のイベントをスケジュールします。時間の経過とともに、イベント発生時間の分布は定常状態に近づきます。つまり、ブートストラップの挙動は定常状態の挙動に圧倒されるのです。
ブートストラッピングは、分類器の性能を反復的に向上させるために使用される手法です。通常、複数の分類器を異なる入力データセットで訓練し、予測タスクでは異なる分類器の出力を組み合わせます。
シードAIは、再帰的な自己改善能力を持つ人工知能の一種として仮説的に提唱されている。自己改善を繰り返すことで、より優れた自己改善能力を獲得し、知能が指数関数的に向上する可能性がある。そのようなAIは実在が知られていないものの、依然として活発な研究分野である。シードAIは、技術的特異点に関するいくつかの理論において重要な位置を占めており、支持者たちは、シードAIの開発によって(ブートストラッピングによって)より高度な知能が急速に獲得され、新たな時代が到来すると考えている。[18] [19]
ブートストラッピングは、要約統計量の推定値を取得するために使用される 再サンプリング手法です。
ビジネスにおけるブートストラッピングとは、外部からの援助や運転資金なしにビジネスを始めることを意味します。会社のスタートアップ開発段階にある起業家は、内部のキャッシュフローで生き残り、経費には非常に慎重です。[20]一般的に、ベンチャーの開始時には、ブートストラッププロセスのために少額の資金が確保されます。[21]ブートストラッピングは、計量経済モデルを補足することもできます。[22]ブートストラッピングは、リチャード・クリスチャンセンの書籍「ブートストラップ・ビジネス」、ハーバード・ビジネス・レビューの記事「ブートストラッピングの芸術」、および続編のアマー・ビデの書籍「新規ビジネスの起源と進化」でも詳しく説明されています。セス・ゴーディンによる、適切なブートストラップの方法について書かれたバイブルもあります。
専門家は、ビジネスベンチャーの立ち上げにはいくつかの共通段階があることを指摘しています。
ブートストラッピングの対象となる企業の種類は多岐にわたります。特に外部からの多額の資本流入を必要としないアーリーステージの企業も対象となります。これにより、事業の柔軟性と成長のための時間を確保できます。シリアルアントレプレナー企業もブートストラッピングのメリットを享受できる可能性があります。シリアルアントレプレナーとは、創業者が以前経営していた企業の売却益を投資に充てることができる組織です。
ブートストラッピングには様々な方法があります。製品やサービスの立ち上げにブートストラッピングを活用したいと考えている将来の起業家は、以下の方法を用いることが多いです。
ブートストラップは成功例とみなされることが多い。Funderaの統計によると、中小企業の約77%がスタートアップ資金として何らかの個人投資や貯蓄に頼っている。平均的な中小企業のスタートアップには約1万ドルの起業資金が必要で、3分の1の中小企業は5,000ドル未満のブートストラップ資金で起業している。
Entrepreneur.comが発表したスタートアップデータによると、他の資金調達方法と比較して、ブートストラッピングが最も一般的に利用されている。「スタートアップの0.91%はエンジェル投資家から資金提供を受けており、0.05%はベンチャーキャピタルから資金提供を受けている。一方、スタートアップの57%は個人ローンやクレジットで資金調達を受けており、38%は家族や友人から資金提供を受けている。」[23]
事業資金調達のためにブートストラッピングを活用した成功した起業家の例としては、連続起業家の マーク・キューバンが挙げられる。彼は「自分で始められるなら…資金調達に出かけなくても自分でできる」と主張し、ブートストラッピングを公に支持している。なぜこのアプローチが最も必要だと考えるのかと尋ねられると、彼はこう答えた。「人々が犯す最大の間違いは、アイデアと起業の目標を持つと、資金調達をしなければならないと考えてしまうことだ。そして、資金調達をしても、それは達成ではなく義務だ」。なぜなら、「資金調達した相手に報告することになるからだ」[24]
Apple Inc. (APPL)、eBay Inc. (EBAY)、Coca-Cola Co. などのブートストラップ企業も、こうした資金調達方法によって、収益性の高い特定の製品群に重点的に注力し続けることができるようになったことが、自社の成功の一因であると主張している。
ブートストラッピングのコストが低く、投資収益率が高い場合、スタートアップは利益を自社の成長に再投資することで成長することができます。この資金調達方法により、オーナーは事業のコントロールを維持し、規律ある支出を強いられます。[25]さらに、ブートストラッピングにより、スタートアップは投資家ではなく顧客に焦点を当てることができるため、収益性の高い事業を創出する可能性が高まります。これにより、スタートアップはより優れた出口戦略を立て、より大きなリターンを得ることができます。
レバレッジバイアウト、または高レバレッジ取引もしくは「ブートストラップ」取引は、投資家が会社の株式の支配権を取得し、購入価格のかなりの割合がレバレッジ、つまり買収された会社による借入によって賄われる場合に発生します。
ブートストラップ作戦( Operación Manos a la Obra ) は、20 世紀半ばに プエルトリコを工業化した野心的なプロジェクトを指します。
リチャード・ドーキンスは著書『エデンの河』[26]の中で、コンピューターのブートストラッピングの概念を用いて、生物細胞がどのように分化するかを説明しています。「異なる細胞は異なる化学物質の組み合わせを受け取り、それが異なる遺伝子の組み合わせを活性化し、いくつかの遺伝子は他の遺伝子をオンまたはオフにする働きをします。そして、ブートストラッピングは、さまざまな種類の細胞の完全なレパートリーが得られるまで続きます。」
ブートストラップ解析は、系統樹におけるクレードの支持強度を判断する方法を提供する。ノードごとに数値が書き込まれ、その枝の終点でクレードを解決したブートストラップツリーの割合を反映している(古典的なフェルゼンシュタインブートストラップ)。 [27]ツリーの作成を繰り返すと計算コストが高くなる可能性があるため、RAxML迅速ブートストラップ(RBS)、下平・長谷川類似近似尤度比検定(SH-aLRT)、超高速ブートストラップ(UFBoot)などの新しい手法がある。古典的な/標準的なブートストラップは、クレードが正しい確率を過小評価する傾向がある。[28]
ブートストラッピング(古典的手法を含む)は、複数の遺伝子の連結から作成されたツリーではうまく機能しません。これらのツリーでは、すべての分岐が100%に近づく傾向があるためです。代わりに、一致係数を使用する必要があります。[29] [30]
ブートストラッピングとは、陰謀事件において 伝聞証拠の採用を禁止する規則である。
ブートストラッピングは言語習得の理論です。
ウィットワースの 3 プレート法は、他の平面参照面や他の精密機器に依存せず、より精密な平面をどのように作成するかという問題を解決します。
ブートストラッピングは、粒子または演算子のスペクトルに関するいくつかの仮定から量子理論の形式を決定するために、非常に一般的な一貫性基準を使用します。
トカマク型核融合装置において、ブートストラップとは、プラズマによってブートストラップ電流が自己生成されるプロセスを指し、これにより外部電流駆動装置の必要性が低減または排除されます。ブートストラップ電流の最大化は、先進的なトカマク設計の主要な目標です。
慣性閉じ込め核融合におけるブートストラッピングとは、核融合反応で生成されたアルファ粒子がプラズマをさらに加熱することを指します。この加熱が点火につながり、全体的なエネルギー増加につながります。
ブートストラッピングは、アナログ回路設計における 正のフィードバックの一種です。
電力網が意図的に停止されることはほとんどありません。発電機や発電所は必要に応じて起動・停止されます。一般的な発電所は、発電を開始する前に起動用の電力を必要とします。この電力は電力網から供給されるため、電力網全体が停止した場合、これらの発電所は起動できません。
したがって、系統を始動させるには、少なくとも少数の発電所が完全に自力で始動できる必要があります。ブラックスタートとは、外部電源に依存せずに発電所を稼働状態に復旧させるプロセスです。系統電力が供給されていない場合、1基または複数のブラックスタートを用いて系統をブートストラップします。
原子力発電所では、崩壊熱を除去する手段が常に必要であり、これは通常、電気冷却ポンプを用いて行われます。しかし、万が一、電力が完全に失われた場合でも、タービン発電機を起動することでこれを実現できます。蒸気発生器内に蒸気が蓄積されると、それを利用してタービン発電機を駆動することができます(初期段階では、油ポンプ、循環水ポンプ、復水ポンプは使用しません)。タービン発電機が発電を開始すると、補助ポンプに電力を供給し、原子炉冷却ポンプを一時的に稼働させることができます。最終的に、蒸気圧がタービン発電機を駆動するのに不十分になると、逆の順序でプロセスを停止できます。このプロセスは、必要がなくなるまで繰り返すことができます。これはタービン発電機に大きな損傷を与える可能性がありますが、より重要なのは、原子炉を保全できることです。
ブートストラッピング・サーバー機能(BSF)は、セルラーネットワークにおける仲介要素であり、互いに未知のユーザー機器とサーバー間の相互認証と、その後の秘密セッション鍵の交換を「ブートストラッピング」するための、アプリケーションに依存しない機能を提供します。「ブートストラッピング」という用語は、まず未知のデバイスとのセキュリティ関係を構築し、その後、デバイスとBSFにセキュリティ要素(鍵)をインストールできるようにすることを意味します。
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です