圧倒的python:neural network を作成してみた。

おひさしぶりです、かずまなぶです(*´ω`*)

仕事が忙しくて家に帰ると、すぐに ぐったり、まったりしています。

今日はニューラルネットワークの基本を作り、MNIST問題をやってみました。

入力層、隠れ層、出力層を任意の数に設定して、学習率を定義します。

入力データは0.01~1.00にスケーリングしてから機械学習モデルに流し込むのが作法だそうです。

たったこれだけで

正答率が90%超え

というのはすごいですね。

今後は、時系列データ、機械設備の何らかの波形を機械学習してみようと思います。

HTMLの話

超基本的なものを張っておきますあ。

<!DOCTYPE html>
<meta charset="utf-8">

<head>
    <style>
        <!--ここにcssを書く-->
        #my-viz{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;}
        #lead{font-size:150%;}
        .alert{color:red;background:yellow}
    </style>
    
    <link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>

    
    <script type="text/javascript" src="script.js"></script>
    
    <script>
        <!--ここにjavascriptを書く-->
    </script>
    
    <h1>h1サイズのヘッダー</h1><!DOCTYPE html>
<meta charset="utf-8">

<head>
    <style>
        <!--ここにcssを書く-->
        #my-viz{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;}
        #lead{font-size:150%;}
        .alert{color:red;background:yellow}
    </style>
    
    <link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>

    
    <script type="text/javascript" src="script.js"></script>
    
    <script>
        <!--ここにjavascriptを書く-->
    </script>
    
    <h1>h1サイズのヘッダー</h1>
    <h2>h2サイズのヘッダー</h2>
    <p>ここに本文を書く<br>
       段落がかわります
    </p>
    
    <div id="my-chart-wrapper" class="chart-holder dev">
        <div id="my-chart" class="bar chart">
            this is a placeholder, with parent #my-chart-wrapper
        </div>
    </div>

    <div id="inline^examples">
        <img src="path/to/image.png" id="prettypic">
        <p>this is a <a href="link-url">link</a> to
            <span class="url">link-url</span>
        </p>
    </div>
    
    <ol>
        <li>first item</li>
        <li>second item</li>
    </ol>
    
    <ul>
        <li>first item 2</li>
        <li>second item 2</li>
    </ul>
    
    <table id="chart-data" border=3>
        <tr>
            <th>name</th>
            <th>categoty</th>
            <th>country</th>
        </tr>
        <tr>
            <td>kazu manabu</td>
            <td>machine learning</td>
            <td>japan</td>
        </tr>
        <tr>
            <td>makoto tanabe</td>
            <td>math</td>
            <td>usa</td>
        </tr>
    </table>
    
    <div id="my-viz">
        <div id="lead">
            <h2>a leader header</h2>
            <p>次の文字をcssで強調します
                <span class="alert">強調!!</span>
            </p>
        </div>
        
        <p>ここは普通の文字</p>
        
        <div id="chart-holder">
            <svg></svg>
        </div>
    </div>
    <span class="alert" id="special-alert">アラート</span>
    
</body>

    <h2>h2サイズのヘッダー</h2>
    <p>ここに本文を書く<br>
       段落がかわります
    </p>
    
    <div id="my-chart-wrapper" class="chart-holder dev">
        <div id="my-chart" class="bar chart">
            this is a placeholder, with parent #my-chart-wrapper
        </div>
    </div>

    <div id="inline^examples">
        <img src="path/to/image.png" id="prettypic">
        <p>this is a <a href="link-url">link</a> to
            <span class="url">link-url</span>
        </p>
    </div>
    
    <ol>
        <li>first item</li>
        <li>second item</li>
    </ol>
    
    <ul>
        <li>first item 2</li>
        <li>second item 2</li>
    </ul>
    
    <table id="chart-data" border=3>
        <tr>
            <th>name</th>
            <th>categoty</th>
            <th>country</th>
        </tr>
        <tr>
            <td>kazu manabu</td>
            <td>machine learning</td>
            <td>japan</td>
        </tr>
        <tr>
            <td>makoto tanabe</td>
            <td>math</td>
            <td>usa</td>
        </tr>
    </table>
    
    <div id="my-viz">
        <div id="lead">
            <h2>a leader header</h2>
            <p>次の文字をcssで強調します
                <span class="alert">強調!!</span>
            </p>
        </div>
        
        <p>ここは普通の文字</p>
        
        <div id="chart-holder">
            <svg></svg>
        </div>
    </div>
    <span class="alert" id="special-alert">アラート</span>
    
</body>
<link rel="stylesheet" type="text/css" href="style.css">

python:ローカルサーバーを起動する

anacondaプロンプトで

(base) C:\Users\omoiy>python -m http.server 8080

と打つと、
Serving HTTP on 0.0.0.0 port 8080 (http://0.0.0.0:8080/) …
127.0.0.1 – – [04/Nov/2018 23:11:06] “GET / HTTP/1.1” 200 –
127.0.0.1 – – [04/Nov/2018 23:11:07] code 404, message File not found
127.0.0.1 – – [04/Nov/2018 23:11:07] “GET /favicon.ico HTTP/1.1” 404 –

と返ってくるので、

ブラウザ上で

http://localhost:8080/

と打つと

Directory listing for / というローカルサーバーの
画面になります。

webブラウザの画面

でも、Flaskを使ったほうが良さそうです。こちらは別途アップします。