精進日記 002

徹夜でテレビドラマ見てたので,まちゃくちゃねむいです.ちなみに,私は毎日8時間くらい寝ないと一日中ダメになるタイプの人です.

今朝は割と刺さることをYouTubeで見ました.昨日の記事でも話したように,なぜつかれるかというと,SNSなどで,めちゃくちゃ強い人を見て,「あ~本当に自分て何物でもないんだなって」と思ってしまうことが度々あります.ビデオによると,こう思ってしまうロジックは「何者でもないと思ってしまう」→「何者かになりたい?」→「注目されたい」→「人に自分の価値を認められたい」ということらしいです.そして,これは人間の根本的な考え方なので,自然と出てきます.しかし,自分は自分で,他人は他人なので,他人になる必要はなく,「人と違っていい」,「人より劣ってる部分があって当たり前」,「人より優れてる部分があって当たり前」,「違いを自分で受け入れることも大事」,「自分のやれることをやるだけやな」という結論になりました.確かにそうで,私もこれから,自分自身を認めつつ,できることからやってきたいと思います.ぜひこのビデオを見ていただきたいです.

部活

Random Walkをしました.各ターンで等確率で行けるところに移動する石があって,それがAからBまで移動するときのターン数の期待値を求める問題です.

(x,y)から終点に行くターン数の期待値をE(x,y)とすると,それぞれの(x,y)について,式

E(x,y)=sum(行けるところのE(x',y'))/(行けるところの数)+1

が得られます.すべての式を連立方程式として(gauss jordanの掃き出し法などで)解くと,E(x,y)の値を求めることができます.

という問題を勉強しました.

形式ニューロンの実装

勉強がてら,形式ニューロンを実装してみました.

pythonはまだまだ使えなくて,雑なコードかもしれないです.改善できる点があれば,教えていただけると嬉しいです.

# utils.py
import numpy as np

class Func:
    // ステップ関数
    def step(x):
        if x > 0:
            return 1
        return 0;

    // ReLU関数
    def ReLU(x):
        if x > 0:
            return x
        return 0
    
    // シグモイド関数
    def sigmoid(x, eita = 1.):
        return 1/(1+np.exp(-eita*x))

class Cell:
    // 入力,荷重,閾値から算出したものを
    // シグモイド関数で正規化した出力を計算する
    def calc_z(x, w, h = 1):
        return Func.sigmoid(np.inner(x,w) - h)

参考資料

自粛中にSNS疲れについて思ったこと,https://www.youtube.com/watch?v=aox3fiqVfY8