マガジンのカバー画像

Pythonでプログラミング

308
運営しているクリエイター

記事一覧

再帰処理を理解したい! - リンク集

再帰処理を理解したい! - リンク集

なかなかわかりにくい再帰処理ですがなんとか理解したい!いろんな角度から考えてみると良いかなと思い、いろんな方が書かれている「わかりやすそう」なものを集めてみました。

JavaScript

カウントダウン

階乗. フィボナッチ数

最大公約数

いろいろ

Python

Python再帰関数の使い方10選Pythonの再帰関数を初心者から理解するためのガイド。基本の使い方から応用例、注意点

もっとみる
Pygameであそぼー! - お手軽"venv"で

Pygameであそぼー! - お手軽"venv"で

Python のゲームライブラリで一番有名でないでしょうか。みんな大好きゲームが簡単にできるように設計されているということです。

自分パソコンの環境をいじらずに仮想化の中で実行させると何かあって安心です。

ということで

仮想化してみましょう。まず仮想化で使う新しいフォルダを作ります。例えば"test"というフォルダを作ります。

次にターミナルを立ち上げて、"cd"を使って今作ったフォルダに

もっとみる
Pythonで迷路を作ろう!

Pythonで迷路を作ろう!

 Colabで動かしてみるとエラーが出てしまうので、

を削除してから実行します。

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ## S # # # # ## # # # # # # # # # # # # #

もっとみる
PythonでCUIで遊ぼ!

PythonでCUIで遊ぼ!

コンソールに表示して楽しいものを動画(Pythonで玉遊び【CUI】)を参考に実際にコードを書いて実行していきます。

まず骨組みは

class Canvas:class Ball:class Game:def main(): game = Game() game.run()if __name__ == "__main__":     main()

となっています。

もっとみる
Pythonでゲームを作る - 動かす仕組み。

Pythonでゲームを作る - 動かす仕組み。

Pythonでライブラリを使わずにゲームを作る時に必要な仕組みをまとめていきます。

表示部分を作ります。まず表示部分の考え方ですが、

つまりは

field = [ ["-","-","-","-","-"], ["-","-","-","-","-"], ["-","-","-","-","-"], ["-","-","-","-","-"], ["-","-"

もっとみる
PythonでDeepLearning -  学習済モデルを使ってみよう

PythonでDeepLearning - 学習済モデルを使ってみよう

PyTorchで用意されている"torchvision"で事前学習済みモデルが用意されているのでこのライブラリを読み込むことで簡単に使うことができます。

Google Colabで上記里のコードを実行してみます。

必要なライブラリなどインポート。

import jsonfrom pathlib import Pathimport numpy as npimport torchimport t

もっとみる
PythonでDeepLearning -  フレームワーク

PythonでDeepLearning - フレームワーク

TensorFlowとPytorchを並べてみてみましょう。TensorFlowの方がスッキリしている感じがして使い印象を受けます。以下比較されているサイトです。

今現在はPytorchがよく使われている印象です。柔軟性が高いのがポイントでしょうか。

TensorFlow

Googleが開発していて使い方も比較的簡単に使えるようになっています。チュートリアルも日本語の解説もあります。

im

もっとみる
PythonでDeepLearning - 更新

PythonでDeepLearning - 更新

一番単純なパーセプトロンでより推論が正しくなるようにパラメータ更新(学習)について考えます。

まずパーセプトロンでの推論をする部分。リスト(配列)を引数に入れます。以下では重みがweightlist、推論する値をXnumlistとして入力を受け付けます(引数名を自分でわかりやすいように変更しています。)。

この入力された数値を掛け合わせ、次のstep関数へ。

def dot(weightli

もっとみる
PythonでDeepLearning - ネットワーク

PythonでDeepLearning - ネットワーク

パーセプトロンから一歩すすんでネットワークを組んでみましょう。3層のネットワークを参考サイトを見ながら理解していきます。

パーセプトロンではステップ関数で0、1で判定しますが一歩進んで活性化関数をシグモイドを使って判定ネットワークを組み上げます。

シグモイド関数

def sigmoid(x): return 1/(1+np.exp(-x))

ネットワークを作る関数で重み、バイアスを定

もっとみる
PythonでDeepLearning - 活性化関数

PythonでDeepLearning - 活性化関数

まず、活性化関数とは

出力層においてよく使われる主な活性化関数としては、

パーセプトロンではステップ関数

def step_function(x): if x>0: return 1 else: return 0

簡潔にも書けて

def step(x): return 1.0 * (x >= 0.0)

これで0か1かの数字が出てきます。

引数にNumpyの配列を入れ

もっとみる
PythonでDeepLearning - scikit-learn

PythonでDeepLearning - scikit-learn

scikit-learnを使って簡単に機械学習の全体の流れを見てみましょう。

全体的の流れは

必要なライブラリを読み込み

from sklearn import datasetsfrom sklearn.model_selection import train_test_splitfrom sklearn import svmfrom sklearn.metrics import accur

もっとみる
Python - DeepLearningの基本。

Python - DeepLearningの基本。

複雑なDeepLearningの仕組みをもっとも簡単な形で表現できます。

単純な分岐で実装

ANDゲート

"and"なので2つの値が同じ時が真となります。この場合x1,x2ともに1の場合は真となり"1"となり、違う場合は"0"となります。

def AND_gate(x1, x2): if x1 == 1 and x2 == 1: return 1 else:

もっとみる
Python - 便利なNumpy (3) - インデックスなど。

Python - 便利なNumpy (3) - インデックスなど。

インデックス

インデックスで指定してやる方法はNumpy以外の方法と同じです。リスト内の要素については0,1,2,・・と順番がついているのでそれを指定してやります。

array([1, 2, 3])

a[0]は"1"となります。

array([[1, 2, 3], [4, 5, 6]])

a[0][0]は"1"、a[0][1]は、"2"、a[1][1]は、"5"になります。

もっとみる
Python - 便利なNumpy (2) - 配列(list)

Python - 便利なNumpy (2) - 配列(list)

計算

計算をしてみます。合計は

f = np.array([[1, 2, 3], [4, 5, 6]])np.sum(f)

とすると全てを足し合わせた"21"が出力されます。

配列ごと

np.sum(f, axis=1)

array([ 6, 15])と出てのきます。2つの配列それぞれの合計が出てきています。

axisについては

リストの取り扱い

配列の形状を変えることができます

もっとみる