並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 40件

新着順 人気順

オブジェクトの広場の検索結果1 - 40 件 / 40件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

オブジェクトの広場に関するエントリは40件あります。 自然言語処理NLP言語 などが関連タグです。 人気エントリには 『単一責任の原則(Single responsibility principle)について、もう一度考える | オブジェクトの広場』などがあります。
  • 単一責任の原則(Single responsibility principle)について、もう一度考える | オブジェクトの広場

    単一責任の原則(Single responsibility principle)について、もう一度考える はじめに オブジェクトの広場をご覧の皆様ならば、「SOLID原則」という言葉を聞いたことがあるかもしれません。 SOLIDとは、以下の5つのソフトウェア設計原則を並べたバクロニムです。 Single Responsibility Principle:単一責任の原則 Open/closed principle:オープン/クロースドの原則 Liskov substitution principle:リスコフの置換原則 Interface segregation principle:インターフェース分離の原則 Dependency inversion principle:依存性逆転の原則 ソフトウェアエンジニアが知っておくべき設計原則のセットとして、Clean Architecture や

      単一責任の原則(Single responsibility principle)について、もう一度考える | オブジェクトの広場
    • (プログラマのための) いまさら聞けない標準規格の話 第1回 文字コード概要編 | オブジェクトの広場

      プログラマがシステム開発において共通で必要となる、技術と業務の狭間の共通知識を解説します。連載第1回は文字コードの概要編です。 0. はじめに 業務システムを開発する場合、プログラミング言語、フレームワーク、ミドルウェア、業務知識など以外に、共通で必要となる知識があります。文字コード、国際化、日付・時刻の扱い、住所コード、郵便番号、電話番号などの各種コード、…。 本連載では、プログラマがシステム開発で必要となる、技術と業務の狭間の共通知識を解説して行きたいと思います。 連載第1回は文字コードの概要編です。コンピュータシステムにおいて、文字情報は文字コードを用いて処理されます。文字コードとは、各文字に対応付けられた数値 (符号) のことです。近年、新規に開発される業務システムでは Unicode が使われることが多いと思いますが、既存システムとの連携など他の文字コードが使用されることもまだま

        (プログラマのための) いまさら聞けない標準規格の話 第1回 文字コード概要編 | オブジェクトの広場
      • (プログラマのための)いまさら聞けない標準規格の話 第2回 文字コード実践編 | オブジェクトの広場

        プログラマがシステム開発において共通で必要となる、技術と業務の狭間の共通知識を解説します。連載第2回は文字コードの実践編です。 0. 前回の復習と今回の概要 システム開発で必要となる標準規格の話、前回 は文字コードの概要について説明しました。ざっくりまとめるとこんな内容でした。 「符号化文字集合」で文字集合と符号位置を定義し、「符号化方式」でバイト表現に変換していること。 日本では、しばらく文字集合 JIS X 0208 を、ISO-2022-JP、EUC-JP、Shift_JIS の符号化方式で利用してきたこと。 近年は、世界中の文字が扱える Unicode が主流となっており、UTF-8、UTF-16 などの符号化方式があること。 常用漢字、人名用漢字に限っても、字体を正確に扱おうとすると、JIS X 0208 の範囲では不十分であり、JIS X 0213、Unicode、サロゲートペ

          (プログラマのための)いまさら聞けない標準規格の話 第2回 文字コード実践編 | オブジェクトの広場
        • はじめての自然言語処理 Sentence BERT による類似文章検索の検証 | オブジェクトの広場

          今回は初心に帰って類似文章検索です。連載の第1回で扱ったネタですが、 BERT を用いて再挑戦してみましょう。BERT のモデルは Hagging Face Transformers の事前学習済みモデルを用いるので、お手軽に試せるかと思います。手法としては Sentence BERT を用い、おまけとして Poor Man's BERT についても紹介します。 (本記事公開後に公開されたデータセットで再検証しています。最新情報は 第18回 をご覧ください。 2021.12.21 追記) 1. はじめに 本記事では Sentence BERT 1による類似文章検索について、学習や推論のコード例と実験結果を交えてご紹介します。前々から Sentence BERT を試したいと考えていたものの、教師あり学習に必要な日本語の類似文データが用意できずにいました。その後、画像キャプションのデータセッ

            はじめての自然言語処理 Sentence BERT による類似文章検索の検証 | オブジェクトの広場
          • はじめての自然言語処理 T5 によるテキスト生成の検証 | オブジェクトの広場

            前回はテキストマイニングの手法と OSS を用いた実践について紹介しました。今回は、Google の T5(Text-to-Text Transfer Transformer) によるテキスト生成について、学習や推論のコード例と実験結果を交えてご紹介します。 1. はじめに 本記事では Google の T5(Text-to-Text Transfer Transformer) 1によるテキスト生成について、学習や推論のコード例と実験結果を交えてご紹介します。実験としては livedoor ニュースコーパス2での文章分類、やさしい日本語コーパス3及びやさしい日本語拡張コーパス4を用いたやさしい日本語変換を行いました。今回も Google Colaboratory で動かすことを想定したコードスニペットを入れていきますので、実際に動かしたり対象を変えてみたりして試して頂けると良いかと思います

              はじめての自然言語処理 T5 によるテキスト生成の検証 | オブジェクトの広場
            • はじめての自然言語処理 Fusion-In-Decoder でクイズに答えるモデルを作る | オブジェクトの広場

              今回は Fusion-In-Decoder を使ってクイズに答えるモデルを作ります。以前から Wikipedia 等の外部情報を参照できるテキスト生成モデルを試してみたいと思っていました。Fusion-In-Decoder の発表は 2020 年なので少し前のモデルですが、T5 ベースで手軽に試せるサイズ感ですので、日本語で試してみましょう。 1. はじめに 今回紹介する Fusion-In-Decoder(以下、FiD )1 は Meta AI (当時は Facebook AI Research) が発表した Open Domain question Answering タスクを解くテキスト生成モデルです。 じつは、以前から外部情報を参照できるテキスト生成モデルを試してみたくて2、 Google の RETRO3 の論文を読んでたんです。 なのですが、外部情報のサイズ感が 1000 B

                はじめての自然言語処理 Fusion-In-Decoder でクイズに答えるモデルを作る | オブジェクトの広場
              • はじめての自然言語処理 spaCy 3.0 で Transformer を利用する | オブジェクトの広場

                今更ですが今年の2月に spaCy 3.0 が公開されました。 3.0 で導入された新機能の中で目玉と言えるのは、やはり Hugging Face Transformers (以下、単にTransformers) のサポートや PyTorch, Tensorflow との連携になるでしょう。今回はその辺りを実際に学習を動かしながら紹介したいと思います。 1. はじめに 今回は今年の2月に公開された spaCy 3.0 の話です。 spaCy は第4回でも紹介しましたが、研究者向けというよりは自然言語処理アプリ開発者向けのオープンソース自然言語処理ライブラリになります。日本語を含めた様々な言語の学習済みモデルが存在しており、 spaCy をインストールして、学習済みモデルをダウンロードするだけで、分かち書き、品詞や依存関係の推定、単語や文の類似度の判定など様々な機能を使用することができます。

                  はじめての自然言語処理 spaCy 3.0 で Transformer を利用する | オブジェクトの広場
                • はじめての自然言語処理 OSS によるテキストマイニング | オブジェクトの広場

                  前回はグラフベースのキーフレーズ抽出手法と pke での実験結果を紹介しました。今回は、spaCy, scattertext, ... 等々の OSS を用い各種のテキストマイニング手法についてコード例とサンプルプロットを交えながら説明したいと思います。 1. はじめに 本記事ではテキストマイニングの概要と代表的な手法について、コード例とサンプルプロットを交えて説明します。分析対象には、この連載で何度か用いている livedoor ニュースコーパスを用い、Google Colaboratory で動かすことを想定したコードスニペットを入れていきますので、実際に動かしたり対象を変えてみたりして試して頂けると良いかと思います。 2. テキストマイニングとは テキストマイニングとは、ざっくり言うと「自然言語の文書データを対象に使用される単語の出現傾向等を分析して何らかの有益な情報を取り出すこと」

                    はじめての自然言語処理 OSS によるテキストマイニング | オブジェクトの広場
                  • はじめての自然言語処理 pke によるキーフレーズ抽出 | オブジェクトの広場

                    前回は spaCy と GiNZA についてその概要と使い方を紹介しました。今回はキーフレーズ抽出の手法について解説し、spaCy ベースのキーフレーズ抽出処理ライブラリである pke を用い日本語データセットで実験した結果を紹介します。 1. はじめに 本記事ではキーフレーズ抽出について、その概要といくつかの抽出手法について説明します。記事の後半ではキーフレーズ抽出処理ライブラリである pke を用い、記事の前半で説明した各手法を日本語のデータセットに対して適用した精度比較試験を行った結果を紹介します。 2. キーフレーズ抽出 キーフレーズ抽出処理について簡単に説明すると、「文章からその主題を良く表現している句を抽出する技術」と言えるでしょう。日本語では「キーワード」のほうが一般的で通りのよい表現になりますが、処理としては「大統領|選挙」のように複数単語の連続を抽出するので、単語を意味す

                      はじめての自然言語処理 pke によるキーフレーズ抽出 | オブジェクトの広場
                    • はじめての自然言語処理 Hugging Face Transformers で T5 を使ってみる | オブジェクトの広場

                      前回が分量的にやたらと重かったので、今回はその反省(反動?)を踏まえて軽い感じでいってみます。第7回で紹介した T5 ですが Hugging Face の Transformers でもサポートされてますので、その使用方法をご紹介したいと思います。 1. はじめに 今回は久しぶりに T5 の話です。T5 に関しては第7回、第8回で一度紹介しているので、未読の方は記事に目を通してから戻ってきて頂けると、より理解がしやすいと思います。 さて、 T5 ですが Google のオリジナルコード(以下 “t5"と記述)1は敷居が高いと感じる方もいらっしゃるのではないでしょうか。 Estimator API ベースのコードや gin による設定など慣れていないと、とっつきにくいのではないかと思います。 そこで今回は Hugging Face の Transformers 2を使って T5 を動かす方法

                        はじめての自然言語処理 Hugging Face Transformers で T5 を使ってみる | オブジェクトの広場
                      • ビットコイン論文からさぐる ブロックチェーンのヒント | オブジェクトの広場

                        記録によると、謎の人物サトシ・ナカモトがビットコインの論文を発表したのは、2008年秋のことでした。それから十年、いわゆる「仮想通貨」とともに「ブロックチェーン」という言葉が広く知られるようになりました。 「ブロックチェーンとはなにか。それはビットコインから生まれた技術である。しかしビットコインはブロックチェーンの一例にすぎない。ブロックチェーンはさまざまな問題を解決する応用範囲の広い技術である。」そんな声もよく耳にします。 大きな期待のもと、さまざまなブロックチェーン・プロジェクトが生まれました。けれどもこれまでのところ、ビットコインに匹敵するような事例やユースケースはまだ生まれていないと言ってよいのではないでしょうか。 本連載では、ビットコイン論文を読みながら、ブロックチェーンについて考える手がかりになりそうなあれこれを紹介します。筆者は電子マネーや暗号技術の専門家ではなく、ブロックチ

                          ビットコイン論文からさぐる ブロックチェーンのヒント | オブジェクトの広場
                        • はじめての自然言語処理 Rasa NLU を用いた文書分類と固有表現抽出 | オブジェクトの広場

                          前回は、単語のカウントや分散表現を用いて文書の類似性評価をする手法を紹介しました。今回はチャットボット構築の必須技術である NLU (Natural Language Understanding=自然言語理解) について OSS の Rasa NLU を題材に、 NLU とは何か、Rasa NLU の使用方法と日本語で利用する際のポイント、日本語データセットでの実験結果を紹介します。 1. 始めに 本記事では OSS の Rasa NLU を題材に NLU(自然言語理解)、特に文書分類と固有表現抽出について説明します。Rasa NLU の使用方法と日本語で利用する際のポイントを解説し、日本語のデータで精度評価を行った結果を紹介します。今回も各手法の数学的な細かい説明などは省くので概念的な考え方を理解してもらえればと思います。 2. NLU (Natural Language Underst

                            はじめての自然言語処理 Rasa NLU を用いた文書分類と固有表現抽出 | オブジェクトの広場
                          • はじめての自然言語処理 DeepSpeed-Chat による RLHF の紹介 | オブジェクトの広場

                            今回は DeepSpeed-Chat による RLHF のご紹介です。正直、データセットや計算資源の都合もあり、とりあえず動かしてみました!的な話にはなりますが、RLHF の効果が実際に確認できるか見てみたいと思います。 1. はじめに 今回は DeepSpeed-Chat1 を使って RLHF を試してみたいと思います。RLHF は Reinforcement Learning from Human Feedback の略で文字通り「人からのフィードバックを用いた強化学習」ということですね。OpenAI が InstructGPT(ChatGPT の元になったモデル)2 で使ったことで注目された手法になります。 LLM がらみで何か記事にしたいと思いつつ、日々新たな LLM が発表されている昨今に、隔月&内容が実時間から月単位で遅れ気味wの本連載です。 「どうしたもんかな。。。」と悩みに

                              はじめての自然言語処理 DeepSpeed-Chat による RLHF の紹介 | オブジェクトの広場
                            • はじめての自然言語処理 Sentence Transformer による文章ベクトル化の検証 | オブジェクトの広場

                              今回は文章のベクトル化を扱います。文章のベクトル化は 第9回 で扱っていますが、当時に比べてデータセット、事前学習モデル、ライブラリ等でいろいろと状況が好転しているので、改めて扱ってみることにしました。最近は大規模データセットを用いた事前学習が公開されているので、作り比べてみます。 1. はじめに 今回は sentence-transformers1 で文章のベクトル化にチャレンジしてみます。文章をベクトル(埋め込み表現)化することで、文章間の意味合い的な比較が可能になり、類似文章検索やクラスタリングなどが可能になります。 このライブラリは 第9回 で紹介済みですが、当時のバージョンは 0.2.5.1 であり、その後に損失関数が追加されていたり、サンプルコードが充実したりとかなりの更新が入って執筆時点で 2.1.0 になっています。ついでに言うと 第9回 は結構アクセス数があるみたいなので

                                はじめての自然言語処理 Sentence Transformer による文章ベクトル化の検証 | オブジェクトの広場
                              • はじめての自然言語処理 文章ベクトル化モデルと ResNet50 で CLIP 風のモデルを作る | オブジェクトの広場

                                今回は前回の文章ベクトル化モデルを使って CLIP 風のモデルを作ります。CLIP は画像とテキストを同じ多次元ベクトル空間にエンコードするモデルで、テキストによる画像検索や Zero shot での画像分類が可能です。簡素化された(非公式)実装が公開されているので、日本語で動かして見ましょう。 1. はじめに 今回は前回の文章ベクトル化モデルを使って CLIP 風のモデルを作ります。CLIP1 は OpenAI が発表した画像とテキストを同一多次元ベクトル空間にエンコードするモデルで、テキストによる画像検索や Zero shot での画像分類が可能です。 オリジナルの CLIP は (画像,テキスト) の 4 億ペアを使い、バッチサイズ 32,768 でスクラッチから学習したようなので、とても Colab では動かせません。また公式実装2も公開されていますが、こちらは事前学習済みのモデル

                                  はじめての自然言語処理 文章ベクトル化モデルと ResNet50 で CLIP 風のモデルを作る | オブジェクトの広場
                                • Kubernetes活用への道のり 第1回 IaC編 | オブジェクトの広場

                                  これまでモノリシックなシステム開発をしてきた会社やチームがKubernetesやその上でのマイクロサービスの開発に取り組むにはいくつか壁があると思います。その壁はどのようにサービス分割するかや会社・チームの体制といった話から、環境の準備やアプリケーションアーキテクチャのような話まで多岐に渡ります。これからKubernetesやマイクロサービスに踏み出したくても手探りではリスクが大きく感じられ、一歩が踏み出せずこれまで通りのやり方で開発を続けられている方も多いのではないかと思います。 しかしビジネスの変化が激しい昨今、これまで以上に素早いリリースや継続的な変更を求められるケースも増えてきており、サーバレスやコンテナの活用が有効な案件が増えてきていることもまた事実です。 そこで本連載ではKubernetesやマイクロサービスを活用するにあたりどんな準備を進めておけばいいか整理します。第1回目は

                                    Kubernetes活用への道のり 第1回 IaC編 | オブジェクトの広場
                                  • 暗号用語の体系的整理 | オブジェクトの広場

                                    署名はRSASSA-PSS 2048 SHA-1で、salt長は…なんて言われて各単語の意味や位置付けが分からず困ったことはありませんか?ややこしい暗号関連の用語を体系的に整理してすっきり理解しましょう。 はじめに 暗号の用語って似たような単語があってややこしい!と思ったことはありませんか? 本稿は暗号に関する専門用語を体系的に整理したものです。暗号に関する主要なキーワードを紹介していますが、個々の要素技術を深く掘り下げることはしません。 ネットで検索するのに適当なキーワードが思いつかない、似たような単語が複数あってイマイチ使い分けに自信がない、セキュリティに関する業務をやることになったけどどこから手を付けていいか分からない、というような方を想定読者にしています。 目次:暗号用語の体系的整理 はじめに 目次:暗号用語の体系的整理 暗号そのものに関する用語 アルゴリズムを一意に特定するために

                                      暗号用語の体系的整理 | オブジェクトの広場
                                    • (プログラマのための)いまさら聞けない標準規格の話 第4回 国際化編 | オブジェクトの広場

                                      プログラマがシステム開発において共通で必要となる、技術と業務の狭間の共通知識を解説します。連載第4回は国際化編です。 0. 今回の概要 システム開発で必要となる標準規格の話、第4回は国際化編です。 グローバルな環境で利用される、あるいはグローバルな情報を扱うシステムを構築する際に参考になりそうな話題を取り上げます。 1. 国際化と地域化 ソフトウェアを特定の言語や地域に適合させる工程を「地域化 (localization, L10N)」と言います。しかし、多くの言語や地域に対して個別に地域化を行うと、開発や保守に多くの時間と費用がかかるため、ソフトウェア本体に変更を加えることなく多様な言語や地域に適合できるように予め設計しておく手法が生まれました。これを「国際化 (internatioalization, i18n)」と言います。 L10N、i18n は最初と最後の文字とその間の文字数を使

                                        (プログラマのための)いまさら聞けない標準規格の話 第4回 国際化編 | オブジェクトの広場
                                      • 間違いやすいセキュリティ用語 | オブジェクトの広場

                                        セキュリティ技術としての「署名」と「証明書」はどう違うのでしょうか?「復号化」という用語に違和感はないですか?本記事では、間違いやすい、混同しやすいセキュリティ用語について解説します。 はじめに セキュリティ技術としての「署名」と「証明書」はどう違うのでしょうか? 「復号化」という用語に違和感はないですか? 同じ用語を人によって違う意味で使っていて、仕様書の解釈や打ち合わせでのコミュニケーションに困ったことはないですか? 本記事では、間違いやすい、混同しやすいセキュリティ用語について解説します。セキュリティ分野の基礎知識を得たいITエンジニアのみなさんの参考になれば幸いです。 目次:間違いやすいセキュリティ用語 暗号化と復号「化」? 暗号方式の種類 ー 公開鍵暗号と非対称鍵暗号は同じ? 暗号鍵の種類 ー 秘密鍵は secret key?private key? 呼び方のバリエーション おす

                                          間違いやすいセキュリティ用語 | オブジェクトの広場
                                        • はじめての自然言語処理 ELYZA 日本語 Llama 2 指示応答モデルのファインチューニングと vLLM での推論 | オブジェクトの広場

                                          今回は Elyza さんの日本語 Llama 2 指示応答モデルをファインチューニングし、vLLM にデプロイして高速に推論してみます。70 億パラメータモデルならギリギリ Tesla T4 x 1 の構成でも float16 で動かせるかと思ったのですが、どうだったでしょうか。vLLM には OpenAI 互換の API インタフェースも備えているので、ついでに LangChain からも接続してみたり。 1. はじめに 今回は Elyza さんが公開されている大規模指示応答言語モデルである、ELYZA-japanese-Llama-2-7b-fast-instruct1 をファインチューニングして vLLM で推論してみます。 そんな訳で今回あまり書くことがなく、動かし方だけサラっと書いて「動きましたー。では良いお年を~。」で締めることにします。 しかし、時代感覚無視の隔月連載でネタを

                                            はじめての自然言語処理 ELYZA 日本語 Llama 2 指示応答モデルのファインチューニングと vLLM での推論 | オブジェクトの広場
                                          • マイクロサービスアーキテクチャに効く!テスト技法 サービス間インターフェースのテスト CDCテスト 概要編 | オブジェクトの広場

                                            近年、ITシステムの開発においてマイクロサービスアーキテクチャを採用するケースが増えています。James Lewis / Martin Fowlerが提唱している通り、疎結合なサービスの組み合わせでシステムを構成することで様々なメリットをもたらします。一方で、従来のモノリシックアプリケーションの開発にはなかった難しさがあり、プロジェクトを円滑に推進するためには相応のノウハウが必要です。特にテストについては「やり方」を事前整備しておかないと、品質不良やスケジュール遅延につながりかねません。この不定期連載では、マイクロサービスアーキテクチャを高精度・高生産性で実現するテスト技法をご紹介します。 第1回目の今回は、サービス間のインターフェース仕様をテストする「CDCテスト」の概要をご紹介します。 マイクロサービスアーキテクチャとインターフェース仕様の課題 従来のモノリシックアプリケーションに比べ

                                              マイクロサービスアーキテクチャに効く!テスト技法 サービス間インターフェースのテスト CDCテスト 概要編 | オブジェクトの広場
                                            • Transformerを使った初めての物体検出「DETR」 - 第1回 今までの物体検出との違いとColabでの推論 | オブジェクトの広場

                                              物体検出とは、画像内に写っている物体のカテゴリと物体位置を検出する技術です。身近な例としては、スマートフォンでの顔認証や工場における外観検査、自動運転の歩行者検出にも使われています。また、物体検出の歴史は長く、現在でも新しい物体検出手法が盛んに研究されています。 本連載では、自然言語処理でよく使われる「Transformer」を採用した物体検出モデルDETRについて紹介します。DETR自体は1年前に公開されたため、原理などの説明はGoogle検索すれば沢山出てくると思いますが、推論やFine-Tuningの方法を紹介している日本語記事が少ない印象を受けました。そのため、初心者向けにDETRで推論とFine-Tuningを実行する方法をご紹介したいと思います。 1.始めに 本記事では、物体検出の概要とこれまでの歴史を紹介いたします。それを踏まえて、DETRの原理について数学的な細かい説明を省

                                                Transformerを使った初めての物体検出「DETR」 - 第1回 今までの物体検出との違いとColabでの推論 | オブジェクトの広場
                                              • (プログラマのための)いまさら聞けない標準規格の話 | オブジェクトの広場

                                                業務システムを開発する場合、プログラミング言語、フレームワーク、ミドル ウェア、業務知識など以外に、共通で必要となる知識があります。文字コード、 国際化、日付・時刻の扱い、住所コード、郵便番号、電話番号などの各種コー ド、…。 本連載では、プログラマがシステム開発で必要となる、技術と業務の狭間の共通 知識を解説して行きたいと思います。

                                                  (プログラマのための)いまさら聞けない標準規格の話 | オブジェクトの広場
                                                • はじめての自然言語処理 Transformer 系モデルの推論高速化の検証 | オブジェクトの広場

                                                  今回は Transformer 系のモデル、具体的には BERT, T5, GPT の推論を高速化してみます。高速化手法として FasterTransformer, Torch-TensorRT, AWS Neuron を用い、素 の transfomers に比べ、どの程度速くなるか(ならないか)、利点・欠点を確認してみましょう。 1. はじめに 今回は Transformer 系のモデル、具体的には BERT, T5, GPT の推論を様々な技術を使って高速化してみます。 高速化の元ネタは Hugging Face の transformers1 縛りとして、素の transformers で推論する場合に比べ、 どの程度速くなるか(ならないか)見てみましょう。 推論を高速化する技術としては FasterTransfomer2, Torch-TensorRT3, AWS Neuron(

                                                    はじめての自然言語処理 Transformer 系モデルの推論高速化の検証 | オブジェクトの広場
                                                  • ビットコイン論文からさぐる ブロックチェーンのヒント 第4回 | オブジェクトの広場

                                                    今回はビットコイン論文の第3章「Timestamp Server」で説明されている、タイムスタンプ技術について見ていきます。第3章自体は非常に短いので、そこで挙げられている参考文献を中心に見ていくことにします。 ビットコイン論文におけるタイムスタンプ タイムスタンプ (timestamp) は、二十年以上前から存在するセキュリティ技術です。最近でも、総務省のトラストサービス検討ワーキンググループにおいて、「トラストサービス」を支える技術の一つとして、活用に向けた議論が進められています。 総務省のホームページによると、タイムスタンプとは、「ある時刻にその電子データが存在していたことと、それ以降改ざんされていないことを証明する技術」です。 前回見たとおり、サトシは二重使用問題を解決するにはトランザクションの順番を知る必要があると考えました。タイムスタンプは、そのための基本的な枠組みとして、ビッ

                                                      ビットコイン論文からさぐる ブロックチェーンのヒント 第4回 | オブジェクトの広場
                                                    • はじめての自然言語処理 Switch Transformer の検証 | オブジェクトの広場

                                                      Transformer のパラメータ数を増やしながらも必要な計算量の増加を抑えることができる Switch Transfomer のご紹介です。Google さんのように1兆6千億パラメータは無理ですが、規模が小さいモデルでも効果が見込めるようなので、実際に動かして確認してみたいと思います。 1. はじめに 今回は今年1月に発表された Switch Transformer 1 の話です。 Transformer というモデルはそのサイズに応じて性能が伸びることが良く知られています2。近年どんどん巨大化しており、 Switch Transformer ではついにパラメータ数が1兆6千億個に達しました3。 この連載ではこの手の巨大なモデルは「スゴイのはわかるんですけれど、デモをつつくぐらいで手元で動かせないなぁ~。」とスルーしていたのですが、 Switch Transformer はパラメータ

                                                        はじめての自然言語処理 Switch Transformer の検証 | オブジェクトの広場
                                                      • Kubernetes活用への道のり 第2回 Skaffoldを活用して開発効率を向上しよう | オブジェクトの広場

                                                        本連載ではKubernetesやマイクロサービスを活用するにあたりどんな準備を進めておけばいいか整理します。第2回は開発効率を向上させることができるSkaffoldを紹介します。 1. はじめに アプリケーションの開発においてKubernetesを活用する事により様々な恩恵を受けられる一方で、コンテナのビルドやレジストリへのイメージの登録など開発の手順は増えてしまいます。開発作業の中ですべての手順に手動で対応してしまうと、開発効率が悪く非常に面倒に感じることでしょう。連載2回目は、Kubernetessを活用したアプリケーション開発における問題を解決し、開発効率を向上させるSkaffoldを紹介します。 本記事では各技術要素(Kubernetes/Docker/Minikube等)の基本的な概要などについては記載しておりません。適宜各公式ドキュメントを参照してください 2. Skaffol

                                                          Kubernetes活用への道のり 第2回 Skaffoldを活用して開発効率を向上しよう | オブジェクトの広場
                                                        • はじめての自然言語処理 ELECTRA(BERT の事前学習手法の改良)による固有表現抽出の検証 | オブジェクトの広場

                                                          今回は BERT における事前学習の改良手法である ELECTRA の検証です。ELECTRA はモデルサイズ、データ、計算量が同一条件であればオリジナルの BERT を凌ぐ性能とのことなので結果が楽しみなところです。事前学習をした後のファインチューニングは、いつも livedoor News Corpus の文書分類ばかりだったので、今回は固有表現抽出を試すことにしました。 1. はじめに 今回は BERT における事前学習の改良手法である ELECTRA 1 の検証です。 BERT に関しては 第3回 で取り上げていますが、トークン化が Sentencepiece である為、トークン単位での処理に難がありました2。今回は ELECTRA を試すにあたり、そのあたりの対応も入れ、 Megagon Labs さんから公開されている UD_Japanese-GSD v2.6-NE 3 を使っ

                                                            はじめての自然言語処理 ELECTRA(BERT の事前学習手法の改良)による固有表現抽出の検証 | オブジェクトの広場
                                                          • はじめての自然言語処理 QuartzNet による音声認識の検証 | オブジェクトの広場

                                                            今回は趣向を変えて音声認識について紹介します。分野的には自然言語処理(NLP)でなくて自動音声認識(ASR)なのはわかっているんですが、「人間の発する言葉を機械で処理する」枠には収まっているので、まぁ良いかということで。手法としては NVIDIA の QuartzNet を用いて、日本語音声の認識に挑戦します。 1. はじめに 今回は趣向を変えて音声認識を扱います。いつものように日本語のデータセットを用いて学習や推論のコード例と実験結果を紹介していきますので、興味のある方は試して頂けると良いかと思います。手法としては NVIDIA が開発した End-to-End の音声認識モデルである QuartzNet 1 を用います。最近は End-to-End の音声認識ですと 日本の方が多く開発に携わっている ESPnet 2 の方が情報が多い気がしますが、最近は Transformer がらみ

                                                              はじめての自然言語処理 QuartzNet による音声認識の検証 | オブジェクトの広場
                                                            • マイクロサービスオーケストレーションを助けるZeebe | オブジェクトの広場

                                                              本稿ではマイクロサービスアーキテクチャでの利用が可能なワークフローエンジンのZeebeを紹介します。このZeebeを利用することによって、開発者はマイクロサービスにおけるサービス間の連携をグラフィカルに記述することができ、またアプリケーションの実行状態を監視することも可能になります。 はじめに 最近のシステム開発では、マイクロサービスアーキテクチャと呼ばれるアプリケーションを疎結合なサービスで構築するアーキテクチャを検討することが増えてきています。 マイクロサービスでは複数のサービスを組み合わせてアプリケーションが実現されるため、アプリケーションが複数のサービスを横断してどのように組み立てられているか、またそれぞれのサービスの状態をどのように監視していくかは重要なポイントとなっていくでしょう。 実際のマイクロサービスの現場でも、複数のチームをまたいで一連の取引を組み立てる場合には、全体でど

                                                                マイクロサービスオーケストレーションを助けるZeebe | オブジェクトの広場
                                                              • OOエンジニアの輪! ~ 第5回 長瀬嘉秀さんの巻 ~ | オブジェクトの広場

                                                                ご無沙汰しています。ちょっとだけお休みしていたこのコーナーですが、皆さまから熱烈なリクエスト(があったかどうかは定かではありませんが…)により、今月より復活いたしました!(…また不定期にお休みするかもしれません??)さて、今回のゲストは株式会社テクノロジックアートの代表取締役、長瀬嘉秀さんです。長瀬さんは「パターンハッチング」等の翻訳、bit 誌の連載など、多岐にわたりご活躍ですが、最近は XP(eXtreme Programming) に関する書籍「eXtreme Programming explained」の翻訳をされています。XP に関しては ObjectDay 2000 でもご講演いただきましたが、今回のインタビューでもお話を伺っています。 オブジェクト指向に至るまで --- まず、オブジェクト指向に関わるようになったきっかけをお話いただければ。 私、構造化分析・設計を仕事でやって

                                                                • はじめての自然言語処理 T5X と Prompt Tuning の検証 | オブジェクトの広場

                                                                  今回は T5X と Prompt Tuning の検証をしてみました。T5X は JAX と Flax で実装された T5 の新世代実装です。 Prompt Tuning は近年流行している事前学習済みモデルとプロンプトで下流タスクを解く手法の一つです。 Prompt Tuning に関しては T5X で実装されたコードが公開されていたので、合わせて検証してみることにしました。 1. はじめに 今回は T5X1 と Prompt Tuning2 の検証とご紹介になります。 T5X は第7回で紹介した T53 の次世代実装になります。T5 は、Mesh Tensorflow4 を採用することで、 単一の TPU や GPU に全パラメータが格納できない大規模モデルを実現していますが、学習ループ周辺の実装は Tensorflow 1.x 系列の Estimator API を用いた、やや古びた

                                                                    はじめての自然言語処理 T5X と Prompt Tuning の検証 | オブジェクトの広場
                                                                  • Azure Kinect DK で遊んでみた. | オブジェクトの広場

                                                                    会社の取り組みのひとつに「自分が探した新しい技術を使って好きな活動していい」制度があり,これを活用し将来何かの役に立つ(かもしれない)ことを日々調べております.今回 Azure Kinect DK というデバイスを手に入れましたのでご紹介いたします. はじめに ここに日本未発売のデプスカメラ Azure Kinect DK があります.いきおいで上海在住の方にお願いして(会社の金で)買ってもらったものなのですが使いみち全然考えてなかったためもっぱら私の遊び道具と化してしまったこの楽しいデバイスを紹介させていただきます. Azure Kinect DK とは Microsoft が出している “Kinect” シリーズの最新作です.物の距離や大きさを測るものです.前方に赤外線を照射して反射時間を測り,前方の物体との距離をラスタ画像の各ピクセルの属性値として取得することができる未来的なやつです

                                                                      Azure Kinect DK で遊んでみた. | オブジェクトの広場
                                                                    • オブジェクト指向コラム | オブジェクトの広場

                                                                      オブジェクトの広場はその名の通りオブジェクト指向についての情報発信から始まりました。本シリーズでは、オブジェクトの広場発行当初の懐かしいものから新しく書き起こしたものまで、オブジェクト指向に関するコラムを集めました。楽しみながら読んでいただけると幸いです。

                                                                        オブジェクト指向コラム | オブジェクトの広場
                                                                      • Kubernetes活用への道のり 第4回 Daprを活用して分散アプリケーションを構築してみよう | オブジェクトの広場

                                                                        本連載ではKubernetesやマイクロサービスを活用するにあたりどんな準備を進めておけばいいか整理します。第4回はDaprを活用したアプリケーションの構築方法を紹介します。 1. はじめに これまでの連載でKubernetes(AWS EKS)を構築するIaCやアプリケーションのデプロイ手順、ローカルで開発するためのツールなどを紹介してきました。今回はその上で動作するマイクロサービスの連携を考えてみたいと思います。 マイクロサービスは個々のサービスでチームが形成され実装が進められますが、サービス間やシステム全体についても目を向ける必要があります。例えば下記のようなポイントがあるかと思います。 サービス間通信(同期・非同期) サービス間での状態共有 システム全体の観測 部分稼働(障害部分のみ切り離してサービス継続) etc… 今回これらのポイントをアプリケーションに組み込まずに実現する手段

                                                                          Kubernetes活用への道のり 第4回 Daprを活用して分散アプリケーションを構築してみよう | オブジェクトの広場
                                                                        • エンタープライズアジャイル徒然草 第2回:アジャイル開発の投資効果 | オブジェクトの広場

                                                                          今回の記事では、アジャイル開発の投資効果(ROI)について取り上げる。まず、従来手法とアジャイル開発でのROIの違いを示すモデルを紹介するが、実は精緻なROIモデルを作成するよりも、実証的アプローチを頼りにした方がよいことを説明する。 はじめに アジャイル開発の投資効果(ROI)についての本記事の結論を先に述べると、「複数年に渡る精緻な投資効果のモデルを考えるよりは、3カ月から6カ月の期間である程度の開発を行い、その成果が期待を裏付けるかを確認した方がよい」ということになる。つまり、3カ月から6カ月の期間で(少なくとも社内)リリースをし、そのリリースされたものでさらなる投資に値するかを判断するのである。 アジャイル開発であれ、反復開発であれ、複数回のリリースを通じてプロダクトを発展させる形で開発を進めるが、それらのリリースで提供される機能のまとまりを「市場に出せる最低限のフィーチャー(MM

                                                                            エンタープライズアジャイル徒然草 第2回:アジャイル開発の投資効果 | オブジェクトの広場
                                                                          • レポート:CRCカードでチームが協働して設計する | オブジェクトの広場

                                                                            チームメンバーみんなで協働してハイレベルの設計をすることができるテクニックがあります。CRCカードを使った設計モデリング。UMLモデリング推進協議会(UMTP)主催のセミナーで開かれたCRCカードのワークショップで学んできました。講師はオブジェクトの広場の編集員でもある藤井拓です。本記事では、セミナーで行われたワークショップの様子をお伝えしつつ、CRCカードを使った設計の概要を紹介します。 UMTPのCRCカードワークショップ 2018年2月に、UMLモデリング推進協議会(UMTP)主催の技術セミナーがありました。今回は「CRCカード ワークショップ~賢いクラスとそれらのコラボレーションをモデリングしよう」という内容で、オブジェクトの広場の編集員でもある藤井拓が講師をしました。 ワークで配られたもの:CRCカードの進め方と、ユースケース、講義スライドを印刷したもの。 CRCカードは、198

                                                                              レポート:CRCカードでチームが協働して設計する | オブジェクトの広場
                                                                            • はじめての自然言語処理 ByT5 と Charformer の検証 | オブジェクトの広場

                                                                              トークナイザを使わない自然言語処理モデルである ByT5 と Charformer のご紹介です。従来の自然言語処理では多くの場合で文章を単語(あるいはサブワード)単位に分かち書きして処理しましたが、今回のモデルは直接、生のテキストを処理します。それでは実際に動かして単語(サブワード)ベースのモデルと比較してみましょう。 1. はじめに 今回は今年5月と6月に発表された ByT51 と Charformer2 の紹介をしたいと思います。一本の記事で 2 つのモデルを扱うのは、この連載では珍しいのですが、この二つはよく似ているというか、Charformer は 「ByT5 にもう一工夫加えたもの」くらいの認識なので、一度にさばいてしまいましょうということで。 さて、この二つのモデルの特徴ですが「分かち書きをしない」という点に尽きます。 今まで、この連載では BERT や T5 等の Tran

                                                                                はじめての自然言語処理 ByT5 と Charformer の検証 | オブジェクトの広場
                                                                              • はじめての自然言語処理 MixCSE による教師なし文章ベクトル生成 | オブジェクトの広場

                                                                                今回は教師なしの文章ベクトル化手法である MixCSE の検証です。教師なし学習ですから教師ありの手法よりは精度的に不利でしょうが、局面によっては役に立つケースもあるのでは?と試してみることに。公開されているコードは transformers ベースなのですが、今回は Colab の TPU で動かしてみたので、その方法も紹介しますね。 1. はじめに 今回は教師なしの文章ベクトル化手法である MixCSE1 の検証をしてみました。 本連載では文章ベクトル化のモデルとして、 Sentence BERT を取り上げたこと(第9回, 第18回)がありますが、品質の良いベクトルを生成する為には大量かつ良質の教師データが必要でした。 法律や特許のような特定領域に特化した文章を扱う局面では、対象領域の文書で学習したモデルを使いたいところですが、特定領域限定の都合良いデータはなかなか手に入りません。そ

                                                                                  はじめての自然言語処理 MixCSE による教師なし文章ベクトル生成 | オブジェクトの広場
                                                                                • ビットコイン論文からさぐる ブロックチェーンのヒント 第10回 | オブジェクトの広場

                                                                                  今回はビットコイン論文の第10章「Privacy」を読みながら、ビットコインにおけるプライバシーがどのようなものか見ていきます。プライバシーという言葉の解釈はさまざまですので、まずはビットコイン以外のプライバシーの意味について紹介することから始めたいと思います。 「プライバシーとは何か」という難問 米国の法学者ダニエル・ソーロヴ (Daniel Solove) は、2008年の著書「プライバシーの新理論」の中で、「プライバシーは未整理の概念である」と述べています。プライバシーは、誰もが「何を意味するのか明確には述べることができない」概念です。※1 ソーロヴは、プライバシーの概念はさまざまあるものの、以下の「6つの一般的な型に分類できる ※2」と言います。 (1) 放っておいてもらう権利:サミュエル・ウォーレンとルイス・ブランダイスの有名なプライバシーの権利の定式化 (2) 自己への限定的ア

                                                                                    ビットコイン論文からさぐる ブロックチェーンのヒント 第10回 | オブジェクトの広場
                                                                                  1

                                                                                  新着記事