サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Pixel 9
qiita.com/daisuke-yamamoto
Retail AI Adventurers Advent Calendar 2023 の投稿です。 Retail AI は、トライアルカンパニー を軸とした小売におけるお客様の買い物体験の向上を目指す企業です。 この投稿では、本業(SRE)のかたわらで取り組む Backend Tech Stack について書きます。 題材は、「Rust 初心者として、Standard な Test Code の実装方法」についてです。 Rust における Test Code の書き方と Go で一般的な Table Driven Tests1 を使った Test Code について書きます。 tl;dr Rust でも Go と同じような Table Driven Tests1 を実装できます。 Rust では、compile 時に型チェックを行うため、Test Case の設計もより厳密になります。 R
この抜粋の内容は次のとおりです。 Cloud Spanner Emulator の導入 Spanner で CRUD gRPC API の実装: connect-go さらに詳しく知りたい方は読み続けてください。 2023年7月2回目です。 普段、ぼくたちの Database の第一の選択肢は、Cloud SQL です。 ですが、今後、可用性が求められるフェーズに対応するために、Cloud Spanner での開発について調査します。 Cloud Spanner は、今のサービス群で使うには高価です。最小サイズが Processing Unit になったとは言え。 一方で、強整合性を持ちながらグローバルな負荷分散が可能で、これを CockroachDB などで運用すると考えると妥当な価格であることも認識しています。 Cloud Spanner Emulator の導入 gRPC リクエスト
qiita.com/daisukeoda
# DNSのポートを指定。何もしなければ53が使われる。 # port=5353 # デフォルトの/etc/hostsを参照したくないのであれば記述 no-hosts # DHCP機能を使わない場合 no-dhcp-interface=eth0 # hostsとして参照させたいファイルを指定 addn-hosts=/etc/hosts-dnsmasq # ドメイン名を自動的にhostsに付与するか expand-hosts # DNSSECバリデーションを有効化 dnssec # ログの出力先 log-facility=/var/log/dnsmasq/dnsmasq.log # DNSクエリのログを取る log-queries # ローカルドメイン名 domain=thekelleys.org.uk # このようにサブネット指定で複数のローカルドメインを指定することも可能 domain=
qiita.com/daisuke_s
はじめに pythonでseleniumの使い方を学習していたら、Warningが出てきたので、調べてみると、自分がつかっているseleniumが4でした selenium 4だと、書き方が多少異なるようですので、備忘録として残したいと思いました。 PC: M1 Mac book Air OS: Big Sur ver11.6 DeprecationWarning: executable_path has been deprecated, please pass in a Service object from selenium import webdriver from selenium.webdriver.chrome.service import Service s = Service('/Users/ds/work/py_lesson/tools/chromedriver') dr
mp4の構成要素 MP4ファイルはBoxとよばれる要素の木構造で構成されている。このBoxはMP4を構成する要素の中で最小単位であり、Atomと呼ばれる。子をもつBoxはContainer boxとも呼ばれる。ちなみにもともとQTFFの方でAtomと呼ばれていて、QTFFを元にMP4が作られたのでそのまま名残でMP4でもAtomと呼ばれているようです。 mp4のBoxは必ずftypeと呼ばれるものから始まり、それ以外のBoxの並び順は、VODで配信する場合はどのような並び順でもOK。だがLODで配信する場合は最初にメタデータを読み込んでから実際のデータを処理する必要があるので、先にmoovという、メタデータが記録されたBox(後述)をロードする必要がある。 Boxの基本構造 HeaderとData部分で構成される。 先頭のオクテット(8Byte)がボックスを識別するためのHeaderになっ
qiita.com/daisuke30x
はじめに Dockerは多くのIT開発企業で導入されている環境構築を楽にする技術です。 DockerfileはDockerImageの設計図のようなものです。 Dockerfileを自身で作成することで構築したい環境のDocker imageを作成できます。 Dockerfile、DockerImage、コンテナの関係 Dockerfile => DockerImage => コンテナ の順に作成します。 DockerImageの作成方法 Dockerfileが存在するディレクトリで docker build . コンテナの作成方法 docker run (DockerImage名 or ID) Dockerfileのインストラクション FROM RUN CMD ENTRYPOINT COPY ADD ENV WORKDIR Dockerfile作成手順 FROM ベースとなるイメージを決
WebRTCスタックを簡単に開発できるSDK&APIの「SkyWay」で、自前で通話の録画の仕組みを実装する記事です。スマホ、PC等各種デバイスに対応した録画の仕組みを考えます。 SkyWayでの録画・録音アプローチ SkyWay(に限らずとも)での録画・録音の方法はいくつかあります。まず公式でSkyWay Media Pipeline Factoryという素晴らしいツールを提供しています。 https://m-pipe.netlify.app/m-pipe/ このツールでは、AWSやGCPなどのクラウドをつなぎ合わせて、リアルタイムに音声のキャプチャを行えます。しかしこれは音声キャプチャのみ対応していて、映像のとりこみは現時点ではできません。 次に、MediaRecorder APIがあります。 https://developer.mozilla.org/en-US/docs/Web/A
qiita.com/daisukeArk
はじめに AWS SSO がようやく東京リージョンで利用できるようになったのでDjangoを使ってシングルサインオンを試してみました。 ソースコード - GitHub 前提条件や動作環境 macOS 10.15.6 Python 3.7.8 Django 3.1.1 python3-saml 1.9.0 django-sslserver 0.22 概要 AWS SSOによるカスタム SAML 2.0 アプリケーションを作成します。 必要最低限動くことを確認するため、エラーハンドリングは行ってません。 方針等 AWS SSOのIDソースにはAWS SSO IDストアを利用する 開発言語にはPythonを選択する WebアプリケーションフレームワークにはDjangoを利用する 開発時にもHTTPSによる通信を許可する セットアップ # 仮想環境の作成 $ python -m venv ~/en
qiita.com/daisukelab
1. はじめに テーマ「"やってはいけない” アンチパターンを共有しよう!」…色々とネタが思い当たります! 最近再び出会った、とある問題についてご紹介しようと思います。 2. それは画像の異常検知を解いていたときのこと… 画像の異常検知とは、正常な画像に対して異常な画像を検出して、例えば不良品の選別などに使う技術です。 図: MVTec ADウェブサイトより、緑 の正常サンプルに対する 赤 の異常サンプル例。 普通あまり「異常の画像」が発生しないので、「距離学習」という手法を使って「正常品じゃない度合い」を数値化して、この数値が大きいと「異常だ!」とみなす方法などがあります。 その一つ、記事「幾何変換を使った効果的な深層異常検知 (CNN画像分類モデル/教師なし/MVTec異常検知データセット)」で紹介した「DADGT」という略称の手法を試していたときのことです。 3. 学習〜やったね、A
qiita.com/daisukeshimizu
はじめに bashシェルスクリプトの記述の仕方に関するメモ書きです。 ファイル入出力やパイプライン処理を中心に シェルが得意なのはファイル入出力やパイプライン処理なので、複雑な構文はできるだけ使わず、これらの使用を中心としたコードを書きます。 PATH コマンドごとにフルパスを変数に格納するなどは手間なので、必要な環境変数$PATHをexportしておきます。 それでも必要な場合はフルパスを変数に格納しておきます。 標準出力、標準エラー出力のリダイレクト 標準出力(1)、標準エラー出力(2)はデフォルトは画面になっています。 それ以外にエラーメッセージを定義する場合、標準エラー出力(2)にリダイレクトします。
(DCASEホームページより) はじめに 音を題材とした異常検知のデータセットによる機械学習コンペが始まりました。 音に関するコンペ自体が珍しいなか、タスクとして一般的な分類などでもなく、更に難しい異常検知が設定されました。 個人的に2019年に画像の異常検知に積極的に取り組んだのですが、音声は周波数領域に変換すると画像のように取り扱えることから、チャレンジしたい題材でした。下記は画像にチャレンジしたときの記事です。 欠陥発見! MVTec異常検知データセットへの深層距離学習(Deep Metric Learning)応用 深層距離学習(Deep Metric Learning)各手法の定量評価 (MNIST/CIFAR10・異常検知) この記事では、そのコンペ「DCASE 2020 Task 2 Unsupervised Detection of Anomalous Sounds for
概要 この記事はDMMグループ Advent Calendar 2020 12日目の記事です。 過去に、AWSを用いて動画配信基盤のディザスタリカバリスタックを構築した記事を書いたことがありますが↓ もしもに備えた動画配信基盤のDRシステム - DMM inside この記事ではその際の知見を使って、0からAWSで動画コンテンツのエンコード・DRM・パッケージング・配信をする仕組みを解説します。 今日は社会情勢も相まって、世界中で急激にライブ配信・リアルタイム通話・VOD・音声配信・ライブECなどのストリーミング関連サービスが勢いをつけてきていると思われます。0から自前でストリーミング機能を実装するようなケースも増えてきているのではないでしょうか。 AWSな配信システムにDRMな仕組みを導入したい、開発工数に余裕がない、プロトタイプ的な配信システムをセキュアかつコスパよく構築したい、という
はじめに 以下のドキュメントを参考に、ユースケースとしてセンサーデータなどをWEB APIにGET もしくは POSTで送信しているリクエストをKinesis Streamに送ってみる方法を試しました。 Amazon Kinesis プロキシとして API Gateway API を作成する いくつかの実装例が記載されていますが、具体的には以下のAPIを作成します。 API の /streams/{stream-name}/record リソースで HTTP GET/POST メソッドを公開し、このメソッドを Kinesis の PutRecord アクションと統合します。 これにより、クライアントは名前付きストリームに 1 つのデータレコードを追加できます。 ロールの作成 API GatewayがKinesisにアクセスするためのIAMロールを作成します。 使用するサービスで「API G
欠陥発見! MVTec異常検知データセットへの深層距離学習(Deep Metric Learning)応用画像処理DeepLearning異常検知MetricLearningMVTecAD News 2021/4/30 ㊗この記事の英語版が、論文に引用されました。 …というか、個人的には「この記事のアイデアを拡張して、汎用的なアイデアにした上で論文化してくれた」、と勝手に喜んでいます。 ・引用された論文: "CutPaste: Self-Supervised Learning for Anomaly Detection and Localization", arXiv:2104.04015 [cs.CV], 2020. この「[16]」です。 はじめに Deep metric learningの評価を段階的に試してきました。 Part 1: 分類器で学習できるMetric learning
もし何か間違っていたら優しく教えてください。 コンテナ・コーデックの関係 コンテナとは 映像と音声ファイルを1つのファイルにまとめるときに使用するファイルフォーマットがコンテナ。ファイルをコンテナにまとめる事を、コンテナ化や多重化、Muxと呼んだりする。またコンテナからデータを取り出す事をDemuxと呼ぶ。ちなみに音声ファイルのみの場合は音声ファイル用のコンテナが使われる。 また、コンテナによって字幕表示に対応していたりストリーミング再生に対応していたり、逆に対応していなかったりと、それぞれ機能の違いがある。 映像・音声が入るコンテナ AVI MP4 MPEG WMV MPEG2-TS MPEG2-PS FLV WebM など 音声コンテナ MP3 MP2 M4A/MP4 Opus - Vorbis など コーデックとは 動画・音声データの圧縮アルゴリズム。コンテナに応じて対応するコーデッ
リニューアルのお知らせ 「深層距離学習(Deep Metric Learning)各手法の定量評価 (MNIST/CIFAR10・異常検知)」 こちらの記事で、定量的な評価を含めて改めることになりました。 CIFAR10を使った可視化で、手法の特徴が見える結果が得られています。 はじめに 異常検知の観点から、Metric learningに注目している人が多いようです。 copypasteの日記: Metric Learning 入門 - 異常検知につながる未知クラス分類など様々に実験されていて、MNISTだけでなく天気の表形式データでの分類をされているのも面白い。 Qiita: 【まとめ】ディープラーニングを使った異常検知 - 異常検知への現実的な応用の観点でまとめられています。 Qiita: metric learning を少し勉強したからまとめる - 異常検知をきっかけとしたコンテ
qiita.com/daisuke0115
はじめに OSが起動しなかった場合のトラブルシューティング 今回は起動時にinitramfsからエラーが出力された場合の対処方法です。 実施環境はESXi6.5のネステッド環境に、ゲストOSとしてCentOS7.5をインストールしています。ファームウェアはEFIで実施していますので、BIOSを使用している環境で試す場合はご注意ください。 現象 以下のメッセージが出力し、OSが起動しない。 dracut-initqueue[xxx]: Warning: dracut-initqueue timeout Warning: /dev/xxxxx/xxxx does not exist /(ルート)をマウントする前にメモリ上に展開するinitramfsで問題が発生した場合に出力するメッセージです。 実際の出力例 エラー出力原因 原因としては以下が考えられます。 1.マウントするファイルシステムのパ
各組み合わせにつき、上図で表した10テストケースをそれぞれ実施して統計をとっています。 まとめ: 10テストケースでは、正常・以上に割り当てる具体的なクラスを入れ替える。 8つのセットで評価の条件を組み合わせ、各条件で10テストケースすべてを実施した上で統計をとった結果を出している。 1.3 評価方法 ひとつの組み合わせは10テストケース実施それぞれで、①AUC、②各クラスサンプルの平均距離を得た。 ひとつのテストケースの評価手順 通常のCNN分類器(ResNet18)に、手法を組み込む。(Conventionalのときは何もせずそのまま使う) 学習は、「正常」に割り当てたクラスだけで構成する学習データセットを使い、転移学習によって行う。学習データは、各データセットで元々trainセットに入っているサンプルのみ利用する。 評価データの距離を得る。 正常・異常を問わずすべてのクラスから評価デ
はじめに 本題と関係ないですが、ちょっと前までNode.jsで開発していたはずが最近はPython漬けの毎日です。 フロントエンドを実装していて、データ取得する際に外部APIと通信するのにaxiosを利用されている方も多いかと思います。 1つのデザインパターンとして、Facadeパターンを考えてみました。 以降のコードはフロントエンド開発に一部Vue.jsを利用しています。 axiosのインスタンスの生成 同じような設定は何度も行うことが無いようにaxiosのインスタンスを生成するようにします。 キャメルケースへの変換もインタセプトして行います。 import Axios from 'axios'; import changeCase from "change-object-case"; // DEBUG const isDebug = process.env.NODE_ENV !== '
qiita.com/daisuke-team-ai
Team AIの石井です。リサーチに便利な技をご紹介します。 これで、風呂でも電車でもトイレでもベッドでも、論文読めますよ!!! あと、何語でも対応している所も非常に良いと思っています。 結論 このページをスマホのChromeやGoogleAppで開いてみてください。 https://www.arxiv-vanity.com/papers/1812.08008/ 下記の様に、翻訳しますか?と聞かれるので、翻訳してください。 するとこの様に、アブストラクトではなくてPDFの方の全文が日本語訳されました! これなら電車に乗りながらAI論文がサクサク読めますね! 謝辞:ご紹介いただいたオング優也さん有難うございました! https://github.com/yutarochan やり方 Arxiv Vanity https://www.arxiv-vanity.com/ という素晴らしいサイトが
はじめに この記事は機械学習の実践についての話題ですが、事業レベルでサービスを開発するような華々しさや高度な技術の紹介とは対極的な内容です。 個々のエンジニアの仕事は、やがては大きな成果に集約される源泉です。この個人レベルのスループットを上げて、本質的価値創造により力を注げるようにして、やがて有望な種を生み出す手数を増やしたい…。その個人レベルの環境づくりで、特に繰り返し試作するときの実践で「効いているかな」と思うプラクティスについて、この記事でまとめてみたいと思います。 具体的には下記の内容になります。 DRY原則のソフトウェア・エンジニアリング。 繰り返し現れる常套句=クリシェを再利用できる形に。 Pythonパッケージの形で継続的成長を。 この記事で紹介しているリポジトリはこちらです。 github/daisukelab/dl-cliche きっかけ 機械学習に限らずエンジニアの日常
qiita.com/daisuke0131
はじめに アプリエンジニアの@daisuke0131と申します。 qiita投稿久しぶりで緊張しています。 この記事は、Firebase Advent Calendar 2018 9日目の記事になります。 前回の記事は、@takuchalleさんのFirebase Hosting で自動で古いバージョンを削除する(今のところ)最善の方法でした。私はまだFirebase Hosting触っていないですが今度使ってみようと思います。 私は、本業ではアプリ開発(ios/android)をメインでやっているエンジニアです。アプリエンジニアの為のFirestore入門本、基礎から実施までCloud FirestoreによるiOSアプリ開発を執筆したので興味ある方は是非買ってください!一冊手元に置いておくと便利だと思います。 書籍を色々な方達に読んでもらったのですが、全体的には分かりやすいというフィー
前回の記事「小さなデータセットで良い分類器を学習させるとき」では、Kerasを使った実装で下記を紹介しました。 本の写真を使った小さなデータセットを作成。 このデータセットをどうしたらよく学習させられるか、ImageNet学習済みモデルの転移学習、Augmentationを使った場合の比較。 AutoMLとの簡単な比較。 今回は、実践的な講座で知られるfast.aiライブラリを利用して、講座のTutorialで紹介されるエンジニアリングが適用できるのかを試してみました。 結論から言うと、適用できましたがチューニングに苦労しました。この記事では、下記をご紹介します。 fast.aiの極めて小さなデータセットへの適用例。 講座ではResNet34をCAMで可視化していますが、ここではVGG16を可視化。 チューニングで経験した苦労。 1. fast.aiについて fast.aiは現在PyTor
Help us understand the problem. What are the problem?
/** * Sample React Native App * https://github.com/facebook/react-native * @flow */ import React, { Component } from 'react'; import { StyleSheet, Text, View } from 'react-native'; export default class App extends Component { render() { return ( <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center', backgroundColor: '#F5FCFF', }}> <View style={styles.testStyle}> <View style={{flex
docker-machine を使用して、コマンド一発でGCPのComputeEngineのインスタンスにプロビジョニングする手順を紹介します。 まずはGCPのアカウントを作ろう GCP公式サイトから、GCPのアカウントを作成してください。 ComputeEngineのプロジェクトを作成しよう 左メニュー -> ComputeEngine -> VM Instances を選択。 Create をクリック。 適当な名前を入力してCreateをクリック。 しばらく待つ。 ComputeEngineをターミナルから操作するための認証情報を取得する 左メニュ -> IAM & Admin -> Service Accountsを選択。 CreateServiceAccountを選択。 Service account nameを適当に入力。 RoleセレクトボックスでProject -> Owne
(左の絵画はレンブラントの「Portrait of an Evangelist Writing」) 1. はじめに 画像認識は今や一般的ですが、音の認識というと「音声認識」になり、いわゆるスマートスピーカーが隆盛です。 この記事では、音環境を認識することで、周囲の活動や環境を、更にはリアルタイムにライブ音源から認識するソリューション実装についてご紹介します。 daisukelab/Machine Learning Sound Classifier for Live Audio 実装はこのGitHubリポジトリに全て公開されていますので、この記事ではいくつかの使用例と、学習方法、現状使うときに注意が必要なチューニング方法をご紹介します。 (今後もう少し詳しく学習方法をアップデートしたいです。) 1.1 音環境を認識するには 認識のための技術として機械学習、特にDeep Learningが欠か
#はじめに Team AIでは月1回ペースで量子コンピュータハッカソンを開催しています。 2017年大きな話題を呼んだ量子コンピュータ。 AIやBlockChainともコラボが期待できる、注目の分野です。 議論するのも楽しいですが、IT各社のツールを使って実装してみました。 この分野は経験者がほとんどいないので、 グループワークで皆で助け合ってハッカソン形式で進めています。 皆さんも、下記チュートリアルが役に立つと思うので、是非ご自分で量子計算にチャレンジしてみてください。 #まずこれで概要をつかみましょう! IBM Qの解説ドキュメントがとても良いです! https://www.ibm.com/developerworks/jp/cloud/library/cl-quantum-computing/cl-quantum-computing-pdf.pdf IBM Q使い方ビデオ http
ディープ・ラーニングの進化で、画像の分類はもはやコモディティに近い状態になりました。画像分類を作るためのチュートリアルやブログはいくらでもありますし、AutoMLのように、もはや分類器は自動生成するもの、という見方もあります。 多くの人がディープ・ラーニングの画像分類器を作ろうとしたとき、チュートリアルやブログを参考にすればすぐにできます。 その後自分の身の回りに応用しようとするとき、画像サンプルを作るのに苦労して、結局あまり多くないサンプルでトライすることもあると思います。そのとき、あまりうまく認識率が上がらないことに悩むことがあるかと思います。かなり以前の個人的な経験では、クラスあたり1,000~2,000枚用意してもその時はそれほどうまく行きませんでした。 Google’s Cloud AutoMLも使ってみました。少ないデータでもうまく学習してくれるのではないか、そう期待して試して
次のページ
このページを最初にブックマークしてみませんか?
『@daisukeのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く