ITエンジニア ノイのブログ

ITエンジニアのノイです。 YouTubeで ITエンジニアのお勉強という学習用の動画を公開しています。チャンネル登録お願いします!https://m.youtube.com/channel/UCBKfJIMVWXd3ReG_FDh31Aw/playlists

順番付きの辞書(OrderedDict)

順番付きの辞書(OrderedDict) 順番付きの辞書(OrderedDict)は、通常の辞書(dict)とは異なり、要素の追加順序を保持するデータ構造です。通常の辞書では、要素の順序は保証されていませんが、順番付き辞書では要素が追加された順序が維持されます。実は…

逆伝搬の実装

計算グラフと逆伝搬 ディープラーニングにおける計算グラフと逆伝搬(バックプロパゲーション)は、ニューラルネットワークの学習アルゴリズムの重要な要素です。計算グラフは、ネットワーク内の演算やデータの流れを視覚的に表現するための方法です。逆伝搬…

ワンショット学習とゼロショット学習

転移学習 転移学習は、あるタスクで学習された知識やモデルを別の関連するタスクに転用する手法です。 通常、転移学習では、元のタスク(ソースタスク)で学習されたモデルや特徴量を取り出し、新しいタスク(ターゲットタスク)に適用します。この転移され…

形態素解析 - 分かち書き

形態素解析とは 形態素解析とは、文を形態素(言語学で言うところの、意味を持つ最小の言語単位)に分解する作業を指します。 形態素解析の例 日本語の文「今日はいい天気だね」を形態素解析すると、「今日 / は / いい / 天気 / だ / ね」のように分割され…

ChatGPT有償版と無償版

ChatGPT有償版と無償版 ChatGPTの有償版ChatGPT Plus料金は月額20ドルで使用することができます。無償版では使えないGPT-4が使えるため、高い質の回答を得ることができます。 APIを使用する場合には、OpenAI APIを契約することで使用できます。 ただ、ChatGP…

Compressed Sparse Row(CSR)

csr_matrix csr_matrixは、Compressed Sparse Row(CSR)形式の疎行列を表すために使用される特殊なデータ型です。 疎行列とは、ほとんどの要素がゼロである行列を指します。CSR形式は、疎行列を効率的に表現するための方法の一つであり、メモリ使用量を削減…

np.nditer

np.nditerとは np.nditerはNumPyのイテレーションツールであり、多次元配列を反復処理するための強力な機能を提供します。通常、NumPyの多次元配列を操作する場合、forループを使用して各要素を逐次的に処理する必要がありますが、np.nditerを使用すると、こ…

Google Colabで自作のライブラリをインポートしたい

サンプルを実行しようと思って!pip installで見つからないと思ったら、自作ライブラリを追加しないといけなかったってこともあるかと思います。 Google Colabで自作のライブラリをインポートする方法です。 手順 ライブラリをColabにアップロードする 自作の…

np.zeros_like(x)

np.zeros_like(x)は、NumPyライブラリの関数で、与えられた配列xと同じ形状とデータ型を持つすべての要素がゼロの配列を作成します。 np.zeros_likeの挙動 xと同じ形状とデータ型の新しい配列を作成します。 作成した配列の各要素にゼロの値を代入します。 …

最急降下法

最急降下法とは 最急降下法(Steepest Descent Method)は、最適化アルゴリズムの一種であり、特に連続関数の最小値を見つけるために使用されます。最急降下法は、与えられた関数の勾配(または導関数)の逆方向に進みながら、関数の最小値に近づくことを目…

数値微分

数値微分とは 数値微分(numerical differentiation)は、関数の微分係数を数値的に近似する手法です。微分は関数の変化率を表し、数値微分は関数の値からその変化率を求める方法です。 数値微分によって微分値を求めることで、その点での勾配が得られます。…

自然言語処理のベクトル空間

ベクトル空間 自然言語処理のベクトル空間モデルは、テキスト文書をベクトル空間上の数値ベクトルとして表現する手法です。このモデルは、テキストデータを処理し、文章間の類似性や関連性を計算することができます。 文章をベクトルで表す ベクトル空間モデ…

ミニバッチ学習のループ

復元抽出と非復元抽出 ミニバッチの学習には復元抽出と非復元抽出の2種類があります。 復元抽出(with replacement)と非復元抽出(without replacement)は、統計学や機械学習においてデータをサンプリングする方法の違いを表しています。 復元抽出(with …

np.random.choiceの使い方

np.random.choiceとは np.random.choiceは、NumPyライブラリの一部であり、指定された配列やリストからランダムに要素を選択するために使用される関数です。 np.random.choiceの使用例 ランダムなサンプリング 与えられた配列からランダムに要素を選択する場…

np.reshapeによる行列の変形

np.reshape reshape()は、NumPyや他のいくつかのプログラミングライブラリで提供されている関数の一つです。この関数は、配列や行列の形状(サイズ)を変更するために使用されます。 reshape()関数の基本的な構文 numpy.reshape(array, new_shape, order='C'…

クロスエントロピー誤差関数 (deltaを用いる理由)

クロスエントロピー誤差関数は、主に分類問題において使用されます。この関数は、予測値(y)と正解ラベル(t)の間の差異を測るために使用されます。 クロスエントロピー誤差関数 数学的には、クロスエントロピー誤差関数は以下のように表されます。 E = -Σ…

ChatGPTの利用規約

ChatGPT Plus ChatGPT Plusは料金は月額20ドルで、有料版ではGPT-4が使用可能であり、そのため回答の品質が高くなります。また、開発業務に必要なAPIも従量課金で利用することができます。 重要な利用規約をまとめました。 利用規約 生成物の権利 ユーザーは…

べき乗の書き方

べき乗 Pythonのべき乗の計算の書き方をまとめます。いろいろな言語で書いているとごっちゃになってしまいますよね。。。 べき乗演算子 「**」 # 2の3乗を計算する result = 2 ** 3 print(result) # 出力: 8 # 10の2乗を計算する result = 10 ** 2 print(res…

predictのバッチ化

バッチ処理とは バッチ処理は、複数のタスクやデータを一括で処理する手法です。一つのまとまり(バッチ)に含まれるタスクやデータは、同様の処理を受けることが多いです。意味合いとしては一個ずつ処理をすると大変だから、まとめて処理をしよう!という意…

学習済みの重みの読み込み

やりたいこと sample_weight.pklの事前学習の重みを読み込みたい。 sample_weight.pklの例としてオライリーさんのGitHubにあるものを使います。 github.com ファイルから読み込む def init_network(): with open("sample_weight.pkl", "rb") as f: network =…

LabelBinarizer()でラベル変換

LabelBinarizer()は、scikit-learnライブラリの一部であり、カテゴリカルな目的変数をバイナリベクトルに変換するために使用される変換器です。具体的には、多クラス分類問題において、クラスラベルをバイナリ表現に変換するために使用されます。 クラスラベ…

オプティマイザー

機械学習のオプティマイザーは、モデルのパラメータを最適化するためのアルゴリズムです。モデルのパラメータを最適化することは、訓練データに適合するようにモデルを調整することを意味します。 代表的なオプティマイザー 確率的勾配降下法(Stochastic Gr…

plt.hist

plt.histは、Matplotlibライブラリの一部であり、ヒストグラムを描画するために使用されます。ヒストグラムは、データの分布を視覚化するための有用な方法です。以下に、plt.histの基本的な使い方を説明します。 Matplotlibをインポート import matplotlib.p…

pythonの@classmethod

@classmethodは、Pythonのデコレータ(Decorator)の一つであり、クラスメソッド(classmethod)を定義するために使用されます。 クラスメソッドは、クラス自体に関連付けられているメソッドであり、通常のインスタンスメソッドとは異なる特徴を持ちます。ク…

NotebookApp.iopub_data_rate_limit

NotebookApp.iopub_data_rate_limitエラー "NotebookApp.iopub_data_rate_limit" および "NotebookApp.rate_limit_window" は、Jupyter Notebookの設定に関連しています。これらの設定は、Jupyter Notebookの入出力パフォーマンスに関係するものです。 この…

AttributeError: 'DataFrame' object has no attribute 'as_matrix'

as_matrixエラー AttributeError: 'DataFrame' object has no attribute 'as_matrix' エラーは、pandasのバージョンの変更によって、DataFrameオブジェクトのas_matrix()メソッドが非推奨となったために発生します。 以前のバージョン pandasでは、DataFrame…

pd.plotting.scatter_matrix

pd.plotting.scatter_matrixとは pd.plotting.scatter_matrixは、pandasのプロット機能を使用して、データフレーム内の数値列の間で散布図行列(scatter matrix)を作成するための関数です。 基本的な構文 pd.plotting.scatter_matrix(frame, alpha=0.5, fig…

df.corr

df.corr()は、pandasのDataFrameオブジェクトに対して呼び出されるメソッドであり、相関行列(correlation matrix)を計算します。相関行列は、データフレームの数値列間の相関係数を表す行列です。 使い方 基本的な構文 df.corr(method='pearson', min_peri…

pd.concat

pd.concatとは pd.concat()は、pandasの関数であり、複数のデータフレームを結合(連結)するために使用されます。データフレームを縦方向または横方向に結合することができます。 使い方 構文 基本的な構文は以下の通りです。 pd.concat(objs, axis=0, join…

pd.DataFrame

pd.DataFrameは、Pythonのパッケージであるpandas(通常はimport pandas as pdとしてインポートされます)の中で提供されているデータ構造です。pd.DataFrameは、テーブル形式のデータを扱うための非常に便利なオブジェクトです。 pd.DataFrameは、行と列か…