buto > /dev/null

だいたい急に挑戦してゴールにたどり着かずに飽きる日々です

自作ゲームで強化学習 #2

前回の記事からgymにもっとゲームをあそんでもらうべく、報酬の条件を調整してみる! スコアに応じた報酬を与えてみる スコア0:-10 それ以上:スコア÷100(スコア100だと報酬+1) 結果:カップケーキを1つ取ったら動かなくなった コードはこちら 5秒以内に…

自作ゲームで強化学習 #1

AIにもゲームをあそんでもらった pygameで作ったゲームを強化学習して上達するのか試してみた!! ↓カップケーキ取ったらスコア+100、20秒後にスコアを表示 強化学習実行までの道のり こちらの記事を写経しました 【AI + pygame】pygameで作るインベーダー風…

pygameでお手軽ゲーム開発

矢印キーでケーキを取るゲームを作った 初めてゲームを作ってみた! プレイヤーを矢印キーで操作してカップケーキを取りに行くゲームです カップケーキのマスに行くと左上のスコアが加算、カップケーキは他のマスに移動 ゲーム開始から20秒後にスコアを表示…

Django テンプレート継承

base.htmlを継承してコード量を減らす やっとテンプレート継承の恩恵を受けられた! base.htmlには普通にHTMLタグを書く bodyタグの中は空っぽ {% load static %} {% load bootstrap4 %} <html lang="en"> <head> <meta charset="UTF-8"> <title>TITLE</title> </meta></head></html>

AWS Elastic Beanstalk起動時にエラー

AWS

Elastic Beanstalk 作成したアプリをささっとデプロイできるサービス Elastic Beanstalkを利用すると自動でサーバ(EC2)構築、ネットワーク設定もしてくれる チュートリアルをやってみる Amazon Elastic Beanstalk を使用したアプリケーションの起動 数分で…

AWS PostgreSQLに接続できない

AWS

公式チュートリアルでPostgreSQLの作成・起動をした PostgreSQL データベースを作成、接続する 説明に従ってポチポチ、作成と起動はできたがクライアントツールからDBに接続できない。。。 原因は以下 - DBを作成していなかった(DBインスタンスだけ作成して…

デザインパターン入門 Adapter

GoF

Adapter メソッドが違うなどして継承できない2つのクラスの仲介をする 既存のクラスは修正せず、仲介するAdapterを作ることで修正範囲を最小限にできる デザインパターン ~Adapter~ 内部処理用のBeanクラスと画面から値が入ってくるBeanクラス同士が 直接…

デザインパターン入門 Singleton

GoF

Singleton クラスのコンストラクタをprivateにして他クラスからインスタンスを生成できないようにする (シングルなインスタンス) インスタンス同士が作用して不具合が発生する可能性があるので、Singletonパターンで防ぐ インスタンスの相互作用から発生し…

デザインパターン入門 Prototype

GoF

Prototype インスタンスの生成をnew Class()でなく、インスタンスから別のインスタンスを生成する 雛形を作っておき、それをコピーして使う 例が思い浮かばなかったのでTECHSCOREの記事を使います 図形描画で「直線を描画するクラス」と直線を組み合わせて「…

デザインパターン入門 Factory Method

GoF

Factory Method スーパークラスを定義して、処理はサブクラスが行う スーパークラスがサブクラスに依存しないから改修はサブクラスだけで済む スーパークラスは「登録する」ことだけ定義されているので、サブクラスに依存しない Builderパターンとの違い Bui…

デザインパターン入門 Builder

GoF

Builder 抽象クラスを定義して処理は継承したクラスが行う 具象クラスのインスタンスによって処理の切り替えが簡単にできる 商品登録は「フォーム画面から登録」と「バーコードから登録」できる ピンクの商品登録クラスに具象クラスのインスタンスを渡せば登…

デザインパターン入門 Abstract Factory

GoF

デザインパターンとは 今さら聞けない!デザインパターンとは【初心者向け】 デザインパターンとは、JavaやRubyなどのオブジェクト指向の言語で使われる設計パターンのことです。過去のエンジニアが解決してきた方法(設計)が、デザインパターンとしてまと…

機械学習の数学入門 勾配降下法を使うワケ

勾配法+機械学習の勉強会に行ってきた! 勾配法はトライ&エラー 関数の最適解の求め方は2種類あって、 - 解析的に求める - 数式にしてx = 1のような正確な答えが求められること - 正確な答え(最適解)なので誤差は必ず0 - トライ&エラーで求める - 実際の…

機械学習の数学入門 合成関数

勾配法+機械学習の勉強会の予習! 勉強会主催者より「合成関数の微分もできると良いです」なので、合成関数を学んでみた! 合成関数とは y = f(u), u = g(x) のとき y = f(g(x)) と表せる f(g(x))と入れ子になっている関数のことを「f(u)とg(x)合成関数」と…

機械学習の数学入門 勾配法と微分

今週、勾配法+機械学習の勉強会があるので予習! 勾配法 勾配法の仕組みを具体例でわかりやすく解説 損失関数の大きさを最小にするために使う方法 → 機械学習だと学習データで予測精度を高めるための方法って感じかな (正解に近づくように重みとかバイアス…

Python nonlocal変数

関数内からは外側の変数へ再代入ができない メッセージを返すrtn_msg関数の中にはメッセージを生成するmake_msg関数がある まずは内側の関数から外側の変数msgを出力してみる def rtn_msg(): msg = 'Message:' def make_msg(): print(msg) make_msg() rtn_ms…

Python ワンちゃんネコちゃん判定~成功版~

ディープラーニングの例でよく取り上げられる「犬or猫判定」をKerasでやってみた! Kaggleはデータセットもお手本モデルも提供されててすごい ^--^データセット^--^ Kaggle: Cat and Dog ^--^パクったモデル^--^ Cat or Dog Classification (3 - Models Comp…

ハイパーパラメータとは何ぞや!?

人が決めるパラメータのことだよね! Kerasなどのディープラーニングのライブラリにお任せするのではなく 開発しているエンジニア、専門家が決める値のことだよね!と理解していた 深層学習では実行結果の同一性は保証されない Kerasのテキストにこんな文章…

画像分類 画像をグレースケールにするわけ

Kerasで定番のMNISTをやりました ディープラーニングやってみたいな~と思い、実践系のテキストを買ってテキストを写経コーディング ちゃんと学習した実行結果が得られたが、コードの意味を一行ずつ理解するのに時間が掛かる… MNISTはこんな手書き数字の画像…

Mac pythonとpyenvのバージョンが違う

pythonのパスが通っていない? 私のMacbookには2つpythonが入っています システムに初めからインストールされているpython(Python 2.7.16) pyenvからインストールしたpython(Python 3.8.0) ターミナルからpython --versionを実行するとシステムのpython…

Anaconda OpenCVでimread()できない

OpenCVで画像が読み込めなくなった MacBook AnacondaのPython環境を利用 Python 3.7.3 OpenCV 4.2.0 Anaconda NaviatorからOpenCVがインストールされている環境を選択して JupyterNotebookを起動 ipynbファイルと同じディレクトリにある画像を読み込もうとし…

ブラウザにデータを保存するってなんだろう

WebStorageを知った [Cookie・WebStorage]ブラウザにデータを保存する HTML5認定試験の勉強をしていて、ブラウザにデータを保存する技術に WebStorageなるものがあると知った cookieしか知らなかった… ブラウザにデータを保存するって実際はどこにデータが保…

高い相関があるのに予測精度が落ちる

多重共線性 多重共線性とは? 〜 概要と対応方法 〜 重回帰分析で相関関係の高いデータ組を説明変数にすると予測精度が悪化してしまうことがある これを多重共線性という(略称マルチコかわいい) 目的変数と説明変数の相関関係は重要 テキストの多重共線性…

Azure Cosmos DB入門

Azure Cosmos DBとは Azure Cosmos DB の概要 謎の分散データベース「Azure Cosmos DB」一問一答 クラウドサービス、Azureで提供されているNoSQLデータベース この惑星(地球)にあるAzureリージョンで、データを分散保存するデータベース基盤という意味です…

どうしてみんな微分したがるの?

機械学習を勉強し始めると出会う「微分」 私はここ最近、毎日「ビブン」に会っているものの、なんだかよく分からない (眠れなくなるほど面白い 図解 微分積分を読んでます すぐ眠れています) 今更感すごいけど、機械学習の時なんでみんなが微分したがるの…

ニューラルネットワーク 分かりやすくしてみた2

前回の記事では重回帰分析を例にしてニューラルネットワークを表現したが、そもそも重回帰分析ってscikit-learnなどで分析できるからわざわざニューラルネットワークで分析するの?ってなったので分類問題に当てはめる ニューラルネットワークで分類 商品の…

ニューラルネットワーク わかりやすくしてみた

ニューラルネットワークの基礎をまとめる Chainerで始めるニューラルネットワーク ←わかりやすい! ニューラルネットワークで重回帰分析をする図を作りました 分析テーマは「都市の旅行客数を予測する」です - 距離:東京からの距離 - 気温:平均気温 - 人口…

Python 認定試験ふりかえり

Python検定 合格できた~! Python 3 エンジニア認定基礎試験を受けてきました スコアは850点(満点:1000点)でした 思い出せる限り、間違えた・解答するのに悩んだ問題をふりかえります 間違えた問題 リスト操作 リストの値を表示する list = [1, 2, 3] # …

Python デフォルト引数のワナ

変数を再代入してるのに、値が変わっていない!? DIVE INTO EXAMで模擬テストをしていて分からなかったのがこのコード 結果は10です i = 10 def num(arg=i): print(arg) i = 7 num() num()で関数を呼び出す直前にi=7で再代入しているのに、なんで10なの??…

Python Bottle 画面とコードを分ける

Python フレームワークBottleを使ってみるではpyファイルにhtmlタグを記述していたので htmlファイルを作成して読み込むようにする htmlタグが記述されたHelloWorld.py from bottle import route, run, template @route('/hello/<name>') def index(name): return </name>…