深属学習

Scikit-LLMの解説

目次 1 scikit-llmとは 2. 特上 3. 実験(コード) 3.1 Zero Shot GPTClassifier 3.2 Few-Shot Text Classification 3.3 Multi-Label Zero-Shot Text Classification 3.4 Multi-Label Few-Shot Text Classification 4. まとめ   1. scikit-llmとは Scikit-LLMは、拡張テキスト分析タスクを容易にするために、scikit-learnフレームワークに大規模言語モデル(LLMs)を統合するよう設計されたPythonパッケージです。   2. 特上 Scikit-LLMに関するさまざまなソースからの主なポイントは以下の通りです: – Scikit-LLMは、ChatGPTのような強力な言語モデルをscikit-learnフレームワークにシームレスに統合し、拡張テキスト分析タスクの貴重なツールとしています​1​。 -強力な言語モデルとscikit-learnを組み合わせる能力により、テキストの理解と検討のための比類ないツールキットを提供するため、テキスト分析のゲームチェンジャーと説明されています​2​。 -このパッケージは、scikit-learnフレームワーク内で機能するように特別に設計されているため、scikit-learnに慣れている人はScikit-LLMで簡単に作業できます​。 – Scikit-LLMは、機械学習の世界で際立ったオープンソースプロジェクトであり、ChatGPTのような大規模言語モデルの力と、人気のある機械学習ライブラリであるscikit-learnの柔軟性を巧妙に組み合わせています​。   3. 実験(コード) 環境構築:Google Colabで実験しました。 %%capture !pip install scikit-llm   OpenAIのAPI_KEYとORGANIZATION_IDが必要になります。 https://platform.openai.com/account/api-keys https://platform.openai.com/account/org-settings from …

Scikit-LLMの解説 Read More »

ChatGPTの紹介

ChatGPTは、OpenAIが開発した大規模言語モデルであり、日本語を含む複数の言語に対応しています。ChatGPTは、文章生成、文章の翻訳、文章の要約、文章の質問応答、文章の感情分析、文章の自動修正、文章の自動生成など、多様な言語タスクを実行できるように設計されています。ただし、日本語においては、日本語特有の文法や表現方法に対する理解が不十分なため、時には不自然な回答を生成する場合があります。

Affinity-lossのクラスター分析

Affinity-lossは、単一の定式化で分類とクラスタリングを共同で実行するハイブリッド損失関数です。この手法は、ユークリッド空間の「親和性測定」に基づいて、次の利点があります。
(1) 分類境界に対する最大マージン制約の直接施行
(2) 等間隔で等距離のクラスター中心を確保するための扱いやすい方法
(3) 特徴空間での多様性と識別可能性をサポートするために、複数のクラス プロトタイプを学習する柔軟性。

ProximalAdagradの最適化アルゴリズムの解説

PROXIMALADAGRAD最適化アルゴリズムとは、正則化項の最小化と引き換えに、最初のフェーズの結果に近接した状態を維持する瞬間的な最適化問題を解決できます。目次:概要、定義、実験(PROXIMALADAGRAD vs ADAM)

ADABELIEFの最適化アルゴリズムの解説

AdaBeliefの最適化アルゴリズムとは、アダムとSGDに匹敵する一般化として高速収束を実現します。 勾配方向の「信念」に応じてステップサイズを適応させます。予測された勾配と観測された勾配の差によってステップサイズを適応的にスケーリングします。 Pythonの実験

TensorFlow2.7の新機能

目次 1. tf.function エラーメッセージの改善 2. tf.experimental.ExtensionTypeのリリース 3. TF2の移行が容易になりました 4. 新しいコミュニティがTensorFlow Hubでモデルを提供 関連記事:https://data-analysis-stats.jp/深属学習/tensorflow-2-0-主な変更   TensorFlowは2021年11月10日にリリースされました。このリリースでは、エラーメッセージが明確になり、スタックトレースが簡素化されて使いやすさが向上し、TF2に移行するユーザー向けの新しいツールとドキュメントが追加されています。   今回はTensorFlow2.7の新機能を紹介したいと思います。 詳細は下記のパスのご参照ください。 https://blog.tensorflow.org/2021/11/whats-new-in-tensorflow-27.html   1. tf.function エラーメッセージの改善 スタックトレースがより単純かつ短くなり、コードの問題を理解して修正することが容易になります。 レイヤーをデバッグするときに最初に行うことは、入力の形状とdtype、およびトレーニング引数とマスク引数の値を出力することです。 この情報を、カスタムKerasレイヤーから発生するすべてのスタックトレースに自動的に追加するようになりました。 エラーメッセージは、フレームワークが期待したこと、フレームワークの期待と一致しなかったことを示し、問題を修正するためのヒントを提供する必要があります。 主な違いは、tf.functionの実行中に発生するランタイムエラーに、エラーの原因を示すスタックトレースがユーザーのコードに含まれるようになったことです。   # … Python stack trace of the function call … TypeError: Originated from a graph execution error. The graph execution error is detected at a node built …

TensorFlow2.7の新機能 Read More »

SPARSEMAXの活性化関数

目次 1. SPARSEMAX活性化関数の概要 1.1 SPARSEMAX活性化関数とは 1.2 SPARSEMAX関数 2. 実験 2.1 ライブラリインポート 2.2 データ読み込み 2.3 データ加工 2.4 SPARSEMAXの活性化関数を作成 2.5 RELUの活性化関数を作成 2.6 まとめ 関連記事:活性化関数のまとめ 1. SPARSEMAX活性化関数の概要 1.1 SPARSEMAX活性化関数とは SPARSEMAXとは、ソフトマックスに似たが、スパース確率を出力できる新しい活性化関数です。SPARSEMAX損失関数は、滑らかで凸状のロジスティック損失のスパースアナログです。 1.2 SPARSEMAX関数 softmaxとsparsemaxの比較 実験の結果 SPARSEMAXは、一般的なアクティベーションに比較して優れたパフォーマンスになります。 sparsemaxは、ラベルの数が多い問題に適しているようです。 SPARSEMAXの論文:From Softmax to Sparsemax: A Sparse Model of Attention and Multi-Label Classification. https://arxiv.org/abs/1602.02068 TensorFlowの資料:https://www.tensorflow.org/addons/api_docs/python/tfa/activations/sparsemax PyTorchの資料:https://github.com/KrisKorrel/sparsemax-pytorch   2. 実験 データセット:CIFAR-10 は、32×32 のカラー画像からなるデータセットで、その名の通り10クラスあります。全体画像数は60000件となり、そのうち50000件が訓練用データ、残り10000件がテスト用データに分けます。 モデル:SPARSEMAXの活性化関数のモデル …

SPARSEMAXの活性化関数 Read More »