Python

Deep Learning

NumPy♪axis指定を易しく図解(axis = -1とは)

NumPyの関数max等ではaxisで方向を指定しますが、axisの番号と方向の対応が分かりにくく、axisを使うたびに調べ直していませんか。また、計算後の配列の次元数や各次元の大きさについて、モヤモヤしている人も多いのではないでしょうか。
Python

Python♪基本:クラスの初学でのモヤモヤを解消しよう

クラスとオブジェクトは設計図と製品に例えられますが、なぜ、そんな例えになるのでしょうか。そして、オブジェクトを生成する必要があるのでしょうか。クラスの基本文法は学習したけれど、モヤっとした感じが消えない人が多いのではないでしょうか。
Python

Python♪FEM:配列の次元数別の複製速度(list、NumPy配列)

list、NumPy配列の1~3次元配列について、参照渡し、浅いコピー、深いコピーなどの複製時間を計測しました。速度の差を感覚的に知っておくことは重要だと思います。私自身、予想外の計測結果になったものもあり、楽しむことができました。
Deep Learning

Python♪NumPyのa[[0], 0, 0:1]は何次元の配列になる?

NumPyの配列の要素はスライスやリスト(配列)を使って部分的に要素を抜き出せますが、抜き出した配列の次元がどうなるのか混乱しませんか?しかし、実は抜き出し後の配列の次元数は機械的に判断できます。最初に知っておくと頭に入りやすくなります。
Deep Learning

Python♪NumPyのa[i, j, k]とa[i][j][k]の違い

NumPy配列では要素を参照するときに、a[i, j, k]とa[i][j][k]という2つの表記法があります。「そうだっけ」と思った方はその違いを整理しておきましょう。計算速度、データへのアクセスの考え方が違いますので注意が必要です。
Deep Learning

Python♪ディープラーニングを高速化するバッチ処理とは

ディープラーニングではバッチ処理という方法が使えます。難しそうに聞こえますが、バッチ処理とは「データをまとめて計算する処理」のことです。そして、まとめて計算することで速くなります。具体例によりバッチ処理の概要を説明し、速度の比較を行います。
Deep Learning

Python♪関数で複数の値を返すタプルの便利な機能

「タプルはあまり使いどころがない?」と思っていませんか?でも、タプルを使うと複数の値を一度に渡すことができます。特に関数の返り値(return)での使用は必須レベル。「ゼロから作るDeep Learning」でも多用していたので記事にしました。
Python

Python♪提出資料で使えるmatplotlibグラフ書式例1

matplotlibのグラフ出力結果を使いたいけれどExcelのような表現ができず、面倒になって結局Excelを使ってしまう。というのは「あるある」だと思います。そこで、実際に提出資料として使える書式例を紹介したいと思います。
Python

Python♪FEM:部材座標系の要素剛性マトリクス

バネの式は中学生に習いますが、これを行列で表現すると聞くと急に難しく感じてしまいます。でも、順を追って理解すれば難しいものではありません。F=k・xの式から要素剛性マトリクスを求めるまでの過程を説明したいと思います。
Python

Python♪FEM:2015年に高校数学から行列計算が消えた!

ご存じの通り(?)2015年から行列が高校数学から消えました。何考えているの!行列計算って情報処理の基本でしょ。中学生とPythonを勉強する記事を書いている私が言うのもなんですが、小中学生へのプログラムの早期教育よりも大切なのでは。
Python

Python♪用語集:意外に難しいコンテナ、シーケンスなどの分類

意外に難しい「コンテナ」「シーケンス型」「イテラブル」「整数型」「ミュータブル」「イミュータブル」などの分類を整理し、覚え方を紹介します。Pythonのチュートリアルやドキュメントを読むとき、これらの用語が理解できないと読み進められません。この機会に頭の中を整理しましょう。
Python

Python♪FEM:行列の積や転置行列のコード記述のコツ

行列の積や転置行列についてNumpyの関数を使えば簡単ですが、関数を使わない方法も紹介します。PythonのFEMの書籍はまだ少ないため、CやFORTRANのコードを読むときに役に立ちます。熟語を覚えるような感覚でコードを覚えれば簡単です。
Python

Python♪FEM:平面トラスの有限要素法サンプルコード

平面トラスの有限要素法のプログラムをPythonで組んでみました。以前に自分がつくったコードを引っ張り出してきて、Pythonに移植しました。このくらいのボリュームのプログラムにじっくり取り組むと面白いですね。
Python

Python♪FEM:微小変形の仮定と人の感覚の違い

有限要素法のプログラムの自作にチャレンジするなら、「微小変形」は必ず理解しましょう。人間の感覚とずれているので知らなければ苦労します。解析では常識に近い初歩的な内容なので書籍やサイトなどでも説明が省略されていることが多いです。
Python

Python♪2ヶ月ぐらい更新ができなかったので雑談です

雑談です。技術的な内容ではありません。2018年6月18日からホームページをはじめ、1年半ぐらい経過しました。こつこつとホームページを続けてきましたが、更新が2ヶ月ぐらい空いてしまい、ちょっと、とりとめもない記事も書いてみたくなりました。