Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

タグ

akatakunのブックマーク (4,679)

  • Causal Impact(コーザルインパクト)を使ったデータ分析:広告効果の測定における革命的手法

    1. はじめに:Causal Impactとは? **Causal Impact(コーザルインパクト)**は、Googleによって開発された因果推論の手法で、特定の介入や施策が与えた影響を測定するために使用されます。たとえば、広告キャンペーンの開始や新機能の導入が売上にどのように影響したかを定量的に評価することが可能です。従来の単純な前後比較では捉えきれない「介入がなかった場合に何が起きていたか(反実仮想)」を考慮する点が特徴です。 2. Causal Impactの背景と必要性 広告運用やマーケティングでは、特定の施策が効果をもたらしたかどうかを正確に測定することが重要です。従来の方法(例えば、A/Bテスト)は、正確に因果関係を捉えるために厳密な統計的手法を必要としますが、実務においては全ての要因をコントロールすることは難しいです。Causal Impactは、時系列データを利用して介入

    akatakun
    akatakun 2024/12/11
    Causal Impactの仕組み: 介入前のデータを元に「介入がなかった場合の未来」を予測し、その予測値と実際の観測データを比較することで、介入による影響を測定します。
  • tsconfigのmoduleとtargetには何を設定すればいいか - TypeScript - Qiita

    TypeScriptの設定ファイルを雰囲気でコピらないための記事 TL;DR moduleはどのモジュールパターンで出力するかを指定する Node.jsでの利用想定ならcommonjs ブラウザ側での利用ならumd targetはどの動作環境向けにトランスパイルするかを指定する 利用環境が想定できないならes3やes5 下位互換性のあるコードへの変換をBabelで行うならesnext module とは JavaScriptにはいくつかのモジュールパターン(CommonJSやAMD、ECMAScriptなど)がある。TypeScriptJavaScriptに変換する際、どのモジュールパターンにするかをmoduleに指定する必要がある。 moduleには'none', 'commonjs', 'amd', 'system', 'umd', 'es6', 'es2015', 'esnext'

    tsconfigのmoduleとtargetには何を設定すればいいか - TypeScript - Qiita
  • KibanaのProfilerでElasticsearchのクエリを分析する - Qiita

    KibanaのDev Toolsの一つにProfilerという機能があります。 このProfilerを利用すると検索や集計のクエリを分析し、どんなクエリが発行されたのか、どのくらいの処理時間がかかっているのか等を簡単に知ることが出来ます。 内部的にはElasticsearchのProfiler APIを利用しているみたいですが、このAPIのレスポンス内容から分析するのは中々大変なのでKibanaを利用した方がお手軽です。 ネットワークのオーバーヘッドやキューの待ち時間等、Profilerで計測出来ない値も色々あるのですが、それでも手探りであれこれ試すよりはProfilerを利用した方が色々と便利かなと思います。 (※参考:Profileの制限) Profilerは Dev Tools > Search Profiler から開くことが出来ます。 環境 Elasticsearch 6.5.4

    KibanaのProfilerでElasticsearchのクエリを分析する - Qiita
  • Ruby の引数の種類をまとめてみた - Secret Garden(Instrumental)

    普段何気なく書いている Ruby なんですが実はメソッドの引数の種類って思ったよりも多くてまとめてみました。 実際自分も Ruby の AST をいじっている時に引数の種類が多すぎて混乱したのでまとめておくと色々と役に立つかなーと。 と、軽い気持ちで書いてみたんですが結構なボリュームになってしまいまsた。 引数の名称とかは調べつつ独断と偏見で書いてあるのでそこら辺はご注意ください。 諸注意 この記事は基的に Ruby 3.1 を元にして動作確認しています 下にも書いてあるんですが 仮引数(parameter) についての解説で 実引数(argument) の話はあんまりでてきません 引数の名称は日語に寄せていますが Ruby 界隈だと英語で書いてある事が多いかも 調べる時は英語の方で調べてもらったほうが情報はでてくると思う 引数という言葉の意味とは 『引数』という言葉には厳密に言うと『

    Ruby の引数の種類をまとめてみた - Secret Garden(Instrumental)
    akatakun
    akatakun 2024/08/15
    位置引数 = 必須引数(a), オプショナル引数(a=nil), 残余引数(a, *b), 後置引数(a*, b), 分割引数([a, b]), キーワード引数 = 必須引数(a:), オプショナル引数(a: nil), 残余引数(**a)
  • Documentation for elasticsearch-api (8.14.0)

  • フルリモートで相手に気持ちよく仕事をしてもらうためのコツあれこれ

    社内のプチ発表に使った資料です。 文章のコツ 前置き フルリモートでは、文章でのやり取りがメインになる。 なので、文章がヒドいと「この人と仕事するのキツイ」と思われちゃう😢 そう思われないための色々思ったことを自戒メモ。 なるべく箇条書きにする

    フルリモートで相手に気持ちよく仕事をしてもらうためのコツあれこれ
  • 減り続けるメモリ残量! 果たしてその原因は!?

    Mem行のfree(MemFreeと呼ぶことにします)は「空きメモリ量」ではなく、何の用途にも使っていない物理メモリ量と考えてください。「MemFreeが少ない→空き物理メモリ量が少ない→利用可能な物理メモリ量が足りない」という発想を防ぐためです。この場合、単純に物理メモリを追加しても、いつかはMemFreeが少ない状況に落ちていくため、解決にはなりません。 システム全体のメモリ利用量の監視は、freeのみを判断基準とするのではなく、もっと総合的に「利用可能な物理メモリ量」を計算する必要があります。 システムが利用可能なメモリ量を計算するには、Linuxのページキャッシュの扱いを理解する必要があります。LinuxはHDDなどのストレージに保存してあるデータの読み出し/書き出し時に確保したメモリをページキャッシュという形で保持します。 CPU はストレージのデータを直接読むことはできません。

    減り続けるメモリ残量! 果たしてその原因は!?
  • SerpApi: Google Search API

    Advanced Features Leverage our infrastructure (IPs across the globe, full browser cluster, and CAPTCHA solving technology), and exploit our structured SERP data in the way you want. Real Time and Real Results Each API request runs immediately – no waiting for results. In addition, each API request runs in a full browser, and we'll even solve all CAPTCHAs, completely mimicking what a human would do

    SerpApi: Google Search API
  • Elasticsearchクラスタを再構築し、無停止で切り替えるベストプラクティス - Hatena Developer Blog

    はてなブックマークチームのid:taraoです。はてなブックマークでは、以前はオンプレミスなElasticsearchクラスタを運用していましたが、AWS上にAmazon Elasticsearch Serviceのクラスタを構築して切り替えました。この切り替えではクラスタの再構築に限らず、アップグレードやマッピングの変更にも使える一般的な方法を採用しました。 この記事では、その具体的な方法を紹介します。 一般的な方法を採用したい目的と背景 検討したクラスタ再構築や切り替えの方法 1. ローリングアップグレード 2. スナップショット・リストア 3. クラスタ横断レプリケーション 4. Reindex API 5. アプリケーションコードによる再インデキシング 目的・条件による取りうる方法のまとめ 採用した再インデキシング手法の詳細 ダブルライトをどのように実現するか 非同期ダブルライトの

    Elasticsearchクラスタを再構築し、無停止で切り替えるベストプラクティス - Hatena Developer Blog
  • 1st Party、2nd Party、3rd Party、Zero Party Dataとは?

    広告主にとって、さまざまなデータの種類を理解することは、かつてないほど重要なことです。サードパーティCookieの廃止に伴い、広告主は、データプライバシーに準拠しつつ、成功するために必要なデータを知る必要があるのです。この記事では、各データタイプの定義、データ・プライバシー遵守のための感度、利点、そしてサードパーティ・クッキーのない未来における広告での使用方法について説明します。 ファーストパーティデータとは何か、なぜそれが重要なのか?ファーストパーティデータ(別名:1st partyまたは1Pデータ)とは、ある企業がサイトの訪問者や顧客から直接収集したデータのことを指します。言い換えれば、そのデータは、収集した企業(または当事者)が所有するものです。ファーストパーティデータの例としては、CRM内のデータ、購読データ、調査データ、企業のWebサイトやアプリから収集した行動データなどが挙げら

    1st Party、2nd Party、3rd Party、Zero Party Dataとは?
  • Elasticsearch basics | Elasticsearch Guide [8.15] | Elastic

    This guide covers the core concepts you need to understand to get started with Elasticsearch. If you’d prefer to start working with Elasticsearch right away, set up a local development environment and jump to hands-on code examples. This guide covers the following topics: What is Elasticsearch?: Learn about Elasticsearch and some of its main use cases. Run Elasticsearch: Understand your options fo

    Elasticsearch basics | Elasticsearch Guide [8.15] | Elastic
  • Foreword | Elasticsearch: The Definitive Guide [master] | Elastic

    akatakun
    akatakun 2024/06/12
    書籍『Elasticsearch - The Definitive Guide』のウェブ無料版?,サポートバージョンが古いため https://www.elastic.co/guide/en/elasticsearch/reference/current/elasticsearch-intro.html を信用したほうが良い
  • 127.0.0.1とlocalhostと0.0.0.0の違い - Qiita

    127.0.0.1はループバックアドレスの一つであり、同時に127.0.0.1に対応する仮想的なネットワーク・インターフェースを表します。 ループバックアドレスは自分自身を表す特別なIPアドレスのことです。 ループバックアドレスは同一ホスト内でしか通信を行いません。 127.0.0.1を表すホスト名のことです。 127.0.0.1とほぼイコールなので当たり前ですが、こちらも同一ホスト内でしか通信を行いません。 何らかの開発用サーバを立ち上げた際に、ブラウザにlocalhost:8080といったアドレスを入力することがあるかと思いますが、それはこのlocalhostです。

    127.0.0.1とlocalhostと0.0.0.0の違い - Qiita
  • Elasticsearchを使う前に先に読んでおくべきドキュメント - Qiita

    はじめに Elasticsearchの運用は難しい。最初から知っておけばよかった・・・というプラクティスをまとめておく。 原則的に6.8系の公式ドキュメントに記載されていることを書いていく。 そして、やっぱりドキュメントを呼んで理解して使うことが大事。 プラクティス 一般的に推奨されること 6.8 7.12 大きな結果セットを返さない Elasticsearchはデータベースではなく検索エンジンなので、上位ドキュメントを取得するのに向いている。全件取得するものではない。 取得する場合はScroll APIを使用すること。 大きなドキュメントを避ける http.max_content_length(HTTPリクエストの最大コンテンツ。デフォルトは100mbで Integer.MAX_VALUEより大きい値に設定すると、100mbにリセットされる。)より大きなドキュメントをインデックス出来ない

    Elasticsearchを使う前に先に読んでおくべきドキュメント - Qiita
  • クリック率を最大化しない推薦システム

    セレンディピティのある推薦、多様性のある推薦、コンテンツ生産者を配慮した推薦など、クリック率の最大化(だけ)を目指さない推薦システムについての紹介です。 連絡先: @joisino_ (T…

    クリック率を最大化しない推薦システム
  • 「私はロボットではありません」はワンクリックでなぜ人間を判別できる? 仕組みとその限界を聞いてきた

    2021.02.16 「私はロボットではありません」はワンクリックでなぜ人間を判別できる? 仕組みとその限界を聞いてきた WebサイトにIDとパスワードを入力するとき、ときどき「私はロボットではありません」にチェックを求められることがあります。 僕はロボットではないので、当然チェックを入れて認証を進めるわけですが……。でもちょっと待ってください。なぜクリックひとつで、人間かロボットかを判断できるんでしょう。 これはきっと、人間ではないなんらかの不正アクセスを防ぐ仕組みのはず。でもチェックを入れるくらい、プログラムを作ってなんやかんやすれば、シュッとできるのでは? 「私はロボットではありません」は、どんな仕組みで人間とロボットを判別しているのか。もっといい方法はないのか。これまでの歴史的経緯も含め、情報セキュリティ大学院大学の大久保隆夫教授に聞きました。 気づかないうちに「人間かロボットか」

    「私はロボットではありません」はワンクリックでなぜ人間を判別できる? 仕組みとその限界を聞いてきた
  • 【ChatGPT】とベクトルデータベースによる企業内データの活用(いわゆるRAG構成) - Qiita

    記事は日オラクルが運営する下記Meetupで発表予定の内容になります。発表までに今後、内容は予告なく変更される可能性があることをあらかじめご了承ください。下記セッションでは、記事の内容以外にデモンストレーションも実施する予定です。 ※セミナー実施済の動画に関しては以下をご参照ください。 はじめに 2022年暮れ、ChatGPTの登場以降、あらゆる企業がDXの在り方を問われはじめ、大規模言語モデルの仕組みをどのように業務に取り入れるかを検討されていると思います。 その検討の一つとして、「GPT(LLM)が学習していない企業内のデータや最新のデータも有効活用すべき」 という点は非常に大きな論点なのではないでしょうか。 ご存じの通り、LLMとはインターネット上に存在するドキュメントデータをクローリングにより大量に収集し、それを学習データとして機械学習にかけたモデルです。 従って、至極当たり

    【ChatGPT】とベクトルデータベースによる企業内データの活用(いわゆるRAG構成) - Qiita
    akatakun
    akatakun 2024/03/19
    ファインチューニング: LLMが知らない知識を追加で学習させ、LLM自体を賢くする, ベクトルストアの併用(RAG構成): LLMが知らない知識をベクトルストアに貯め、合せ技でなんとかする
  • クラス変数とクラスインスタンス変数を理解する - Qiita

    クラス変数とは クラス変数とはクラスで定義する変数である。クラス変数はクラスメソッド内とクラス定義内、またはそのサブクラスがアクセスでき共有される。 定義方法 class A # @@プレフィックスを使用 @@value = 1 def self.value; @@value; end end クラス変数と継承 クラスAが変数@@valueを定義する場合、そのすべてのサブクラスが@@valueを使える。これは継承のように見えるが、実際は違う。どこかのサブクラスがクラス変数@@valueに値を代入すると、クラス変数のプライベートコピーは作成されず、スーパークラスから見える値がすべて変更される。 class A @@value = 1 def self.value @@value end end A.value # 1 class B < A @@value = 2 end A.value #

    クラス変数とクラスインスタンス変数を理解する - Qiita
    akatakun
    akatakun 2024/03/15
    クラス自体もRubyはオブジェクトとして扱うため、@XXXはインスタンス変数であり、小クラスなどからは参照できない。クラス変数は@@XXXで定義できる
  • [Ruby]あなたはメソッドの再定義(alias_method)を理解しているか。 - Qiita

    alias_methodとは alias_methodは、既存のメソッド名に新しいメソッド名を付けて再定義するメソッドのことです。 また、これによって古いメソッドを新しいメソッドの名前で呼び出すことをアラウンドエイリアスと言います。 class String # lengthメソッドは文字列の長さを測定する 'ABC abc'.length #=> 7 # lengthメソッドからreal_lengthメソッドという名前でメソッドを再定義 alias_method :real_length, :length # 元のlengthメソッドをオーバーライド def length real_length > 10 ? 'Long' : 'Short' end # 元のlengthメソッドの動きが可能(アラウンドエイリアス) 'ABC abc'.real_length #=> 7 # オーバーライ

    [Ruby]あなたはメソッドの再定義(alias_method)を理解しているか。 - Qiita
    akatakun
    akatakun 2024/03/15
    alias_methodは呼び出し時点でそのメソッドの処理をコピーした別のメソッドを再定義する。そのため、元のメソッドがオーバライドされても変更されない
  • Elasticsearch Reference [5.3] | Elastic

    Search and analyze your data Elasticsearch is the search and analytics engine that powers the Elastic Stack. Get started Introduction What's new Release notes

    Elasticsearch Reference [5.3] | Elastic