◆仕事や勉強の息抜きに。熱射病の季節は終わりましたが、日本人は年々熱射病に弱くなっているそうです。倉庫では直射日光はないものの、温度と湿度が高くなりがちで熱射病のリスクは高いといえます。いって、広くて人口密度の低い倉庫をエアコンでキンキンに冷やすことは、電気代がかかりすぎて現実的ではありません。熱射病にならないギリギリの環境をキープできればベストです。そのためには熱射病になりやすい各種条件を知ることが必要です。温度と湿度の条件の組み合わせで、熱射病のなり易さが決まってくるかもしれません。15日間、温度と湿度を計測して、熱射病患者が出たかどうか統計を取った結果、下表のようになったとしましょう。これだとよく分からないため、散布図にしてみましょう。オレンジ色の点が熱射病患者の出た日、青色の点が出なかった日のデータです。これなら、次のような直線できれいに分けられそうですね。データを採っていくと、本当は次の図の赤色の線になるかもしれませんし、青色の線になるかもしれません。温度と湿度の他に、倉庫の中の風速も関係しているかもしれません。(倉庫の中に大型のファンを置いて「風」を作り出すことで清涼感を出すことがよく行われます)そうすると、変数が温度、湿度、風速の3つになり、もはやこのように手作業で直線を引くことはできません。自動化ができないのです。そこでニューラルネットワークの出番です。データさえ得られれば、後は機械学習できますので自動化できます。原因となる変数(説明変数)が3個だろうと10個だろうと、熱射病になるならないの判定に使えます。ニューラルネットワークの仕組み回帰分析との類似点ではニューラルネットワークとはどのような仕組みなのでしょうか?脳の神経細胞であるニューロンを模倣した仕組みというと難しそうですが、重回帰分析に非常によく似ています。重回帰分析が分からなくても、単回帰分析は聞いたことあると思います。それも聞いたことないという人でも、考え方自体は知っているはずです。倉庫で今日、出荷量が多いと予想されれば、作業員をいつもより多く手配しますね。通常10人で100くらいの出荷量をこなせると分かっていれば、120の出荷量があると予想される日には12人を手配するというのは皆やっていることです。これは頭の中で可能な出荷量=10×人数という回帰式を持っているからです。この場合には人数が説明変数で、出荷量が目的変数といいます。このように説明変数が一つしかない回帰式を単回帰式といいます。説明変数が2つ以上ある回帰式を重回帰式といいます。出荷量は単なる頭数だけではなく、フォークリフトの台数も関係してくる場合には可能な出荷量=8×人数+2×フォークリフトの台数+10となるかもしれません。これは説明変数が2つですので、重回帰式です。最後に+10が付いていますね。これは、作業員がいなくてもドライバーだけで10くらいはできるといった場合には、このように定数が付きます。これはy=ax+bという式における+bと同じです。これはy切片といいましたが、ニューラルネットワークではバイアスといいます。ニューラルネットワークはパーセプトロンで表すニューラルネットワークでは、この重回帰式を次のような図で表現します。この図を式にすると、先ほどの出荷量=8×人数+2×台数+10の式になりますね。このようにニューラルネットワークと重回帰式は非常によく似ているのです。ニューラルネットワークの中で最も簡単な「単純パーセプトロン」は重回帰そのものです。これは、上の図で出てきた4つのニューロンの場合です。これは1つのニューロンが、3つのニューロンから伝えられる情報を元に1つの判断を行うモデルです。単純パーセプトロン一つのニューロンだけで判断を下していることが特徴です。パーセプトロンとはニューロンの仕組みを模したアルゴリズムのことです。人工ニューロンといってもいいかもしれません。単純パーセプトロンとは、入力はいくつあってもいいので、一つのニューロンだけで判断するモデルです。入力層と出力層しかないモデルともいえます。多層パーセプトロンこれに対して中間層もあるモデルを多層パーセプトロンといいます。中間層を作ることによって、より複雑な判断ができるようになります。なると重回帰ではできないことができるようになります。冒頭の例で、次のようなデータが得られたとします。すると、もはや直線できれいに分けることはできませんね。直線で表すことができる数値モデルを線形、曲線の式でしか表せないような数値モデルを非線形といいますが、重回帰では線形のモデルしか扱えません。ニューラルネットワークの中でも単純パーセプトロンでは線形しか扱えませんが、中間層のある多層パーセプトロンでは非線形の数値モデルを作ることができます。ここでニューラルネットワークの一つの飛躍があって、少し注目されるようになりました。ディープラーニングそして更に注目を集めることになったのが、ディープラーニングです。これは、多層パーセプトロンの中でも中間層が2層以上あるニューラルネットワークのことです。複雑な判断ができるようになることは知られていましたが、少し前まではうまく計算ができませんでした。それが新しいアルゴリズムとコンピュータ処理能力の向上により可能になり、一気にブレークしました。これら単純パーセプトロン、多層パーセプトロン、ディープラーニングを包含した概念がニューラルネットワークです。単純パーセプトロンが一番簡単ですので、まずはこれから見ていきます。冒頭の例で出てきた温度と湿度から熱射病になるかならないかの判断は、単純パーセプトロンでできます。長くなりましたので、どのように解くかは次回にします。単純パーセプトロンをExcelに実装して2値分類問題を解いてみた。ロジギークよろしければシェアお願いしますTwitterFacebookLinkedInB!HatenaLINELINE単純パーセプトロンをExcelに実装して2値分類問題を解いてみた。NextExcelを使って遺伝的アルゴリズムで組み合わせ最適化問題を解いてみる。...ブラックジャックの必勝法をExcelモンテカルロ法で強化学習したらこうなった。...活性化関数でよく使われるシグモイド関数の歴史や定義について調べてみた。...◆キーワードで探すイチローの安打数がポアソン分布にならず正規分布になる理由を考察してみた【マルコフ連鎖】標準体重の人が太りすぎになるまで平均何年かかる?待ち行列理論を応用して10分カットが儲かる仕組みを解明してみた。計算グラフモンテカルロ積分クラスタリングカーネルトリックPythonSimPy(離散事象シミュレーション)inventorize(在庫シミュレーション)SARIMAX(時系列解析)investpy(財務データ取得)PyPDF2(PDF操作)仕事や勉強の合間の息抜きに管理人ロジギークロジスティクス業界で6か国に勤務。