1. 対象者 - go言語を使用している方 - 対象のプロダクトの可読性が悪いと感じている場合 2. 概要 ソフトウェアの品質を一定の水準に維持する方法には大きく、テストケースの網羅率を測定する方法とソフトウェアメトリクス(モジュールの依存度、ソースコードの行数、ネストの深さ、循環的複雑度.. etc)を測定する方法があります。今回は、これらソフトウェアメトリクスの内、循環的複雑度に着目してgo言語で実践する方法を紹介していきます。(go言語を取り扱いますが、概念自体は技術を制限するものでは無いので、他のプロダクトでも応用可能です。) 3. 循環的複雑度 循環的複雑度は、対象の関数やメソッドがどれだけ複雑さを持っているかを表す数値です。この循環的複雑度が高ければ高いほど、可読性が低く保守性が悪いコードである可能性が高くなります。 使用する技術によって、目安は変わってきますが、おおよそ20~
スタンフォード大学の研究者であるVarun Shenoy氏が、入力した文章に含まれる人物や固有名詞間のつながりをナレッジグラフ化するAI「GraphGPT」を開発しました。GraphGPTはOpenAIが開発した自然言語処理モデルのGPT-3を使用しており、構造化されていない自然言語をグラフに変換するとのことです。 GraphGPT https://graphgpt.vercel.app/ GitHub - varunshenoy/GraphGPT: Extrapolating knowledge graphs from unstructured text using GPT-3 https://github.com/varunshenoy/GraphGPT Can LLMs extract knowledge graphs from unstructured text? Introduc
中学や高校で学んだ数学を題材にして、Pythonによる数学×プログラミングを学んでみよう。数学の教科書に載っている定理や公式だけに限らず、興味深い数式の例やAI/機械学習の基本となる例を取り上げながら、数学的な考え方を背景としてプログラミングを学べる連載。 第1回 中学・高校数学で学ぶ、数学×Pythonプログラミングの第一歩(2021/07/05) 1. 問題解決の方法を学ぶための最強のツールとは 2. 文法からアルゴリズムへ ・コラム 良いアルゴリズムと数学の知識 3. 数学×Pythonを学ぶことの相乗作用 4. 前提知識と目標 5. Pythonプログラミングの準備と便利なライブラリ 第2回 中学数学だけでフェルマーの小定理をプログラミングしてみよう(2021/07/26) 目標: フェルマーの小定理をプログラミングしてみる 1. サンプルプログラム(演算子の利用) ・【まとめ】演
この記事は、Merpay Tech Openness Month 2020 の17日目の記事です。 こんにちは。matchanです。 今回は、機械学習チームの取り組みのひとつ、不正検知システムに機械学習を導入した話の紹介になります。(不正検知システムについてはこちらの記事もご覧ください。) はじめに これまでメルカリ・メルペイでは、サービスが拡大・成長していくに伴い取引数が増加してきました。一方で、不正検知数も増加していき、それに伴うオペレーション負荷も増加していくという状況が課題になっていました。サービスの拡大・成長は今後も続いていきます。限りあるリソースを考えれば、オペレーション負荷が単調に増加していくままではいけません。 単純に検知数を削減するという対策では、不正検知システムのクオリティの低下になります。そこで、検知数を削減しつつも疑わしい取引を検出でき、オペレーション負荷の低減と検
ムーアの法則は本来「集積回路上のトランジスタ数が1.5年ごとに2倍になる」という傾向を指した法則です。このムーアの法則の5倍から100倍のペースで人工知能(AI)は進歩していると、GeForce Experienceの立ち上げに携わった元NVIDIAのエンジニアであるジェームス・ワン氏が報告しています。 AI Training Costs Are Improving at 50x the Speed of Moore’s Law https://ark-invest.com/analyst-research/ai-training/ 2010~2020年にかけて、AIのトレーニングモデルに費やされるコンピューターの演算処理能力は急激に増加しています。以下のグラフは縦軸が演算処理能力で、「Petaflop/Days」は1日当たり1秒間に4兆回の演算を行うことを意味します。横軸は西暦です。 1
チャットボットや生成AIの開発では、アメリカを中心とする欧米諸国が世界をリードしているという印象があります。ところが、アメリカ・シカゴのポールソン研究所にあるシンクタンクのMacroPoloが行った調査では、AI研究で世界の上位20%に入るようなトップ研究者のほぼ半数が、中国出身であることが報告されました。 The Global AI Talent Tracker 2.0 - MacroPolo https://macropolo.org/digital-projects/the-global-ai-talent-tracker/ In One Key A.I. Metric, China Pulls Ahead of the U.S.: Talent - The New York Times https://www.nytimes.com/2024/03/22/technology/ch
特定の話題に関連するニュースが短期間でたくさん集まることが、よくある。世間の関心が高いから当然と言ってしまえばそれまでかも知れないが。 今回はワクチン接種の話題に関して。 dot.asahi.com そう言えば、10日前の4月22日付でこんなニュースがあったんだった。三補選は25日投開票だったから、日本政府がワクチン確保に必死になりだしたのは、それより少し前からだったのではないか? www.bloomberg.co.jp 選挙目的であろうがなんであろうが、ワクチン接種が進むのであれば文句はない。 だが直近のニュースを眺めていると、持ち前の心配性が頭をもたげる。 「はてなホッテントリ」にはならなかったが、うちの地元ではこのニュースを各社が大きく報道した。 digital.asahi.com 一部、引用。 市は電話を125回線用意したが、22日は1万4565件の電話があり、対応できたのは303
import asciichartpy from math import cos from math import pi import random # 追記 2020/09/14 ご指摘ありがとうございました if __name__ == '__main__': width = 120 config = { 'colors': [ asciichartpy.green, asciichartpy.magenta, asciichartpy.red ] } print(asciichartpy.plot( series=[[random.randint(1, 15) * cos(i * ((pi * 4) / width)) for i in range(width)], [random.randint(1, 15) * cos(i * ((pi * 2) / width)) for i
グラフニューラルネットワーク (機械学習プロフェッショナルシリーズ) 作者:佐藤 竜馬講談社Amazon 講談社より『グラフニューラルネットワーク(機械学習プロフェッショナルシリーズ)』を上梓しました。 グラフニューラルネットワークはグラフデータのためのニューラルネットワークです。化合物やソーシャルネットワークのようなグラフデータの解析に使うことができます。また後で述べるように、テキストも画像もグラフなのでテキストや画像の分析にも使えますし、それらを組み合わせたマルチモーダルなデータにも適用できます。要は何にでも使うことができます。この汎用性がグラフニューラルネットワークの大きな強みです。 本稿ではグラフニューラルネットワークを学ぶモチベーションと、本書でこだわったポイントをご紹介します。 グラフニューラルネットワークは何にでも使える 付加情報をグラフとして表現できる グラフニューラルネッ
データや数式からグラフを作成できるMac用グラフ作成アプリ「ByeGraph」がフリーウェアになり、IntelとApple Silicon MacをサポートしMac App Storeで公開されています。詳細は以下から。 ByeGraphは2007年からn.r.Softwareの平井康之さんが開発しているグラフ作成アプリで、KaleidaGraphやPlot2、DataGraphの様に実験やシミュレーションから得たデータのプロットや数式からグラフを作成してくれますが、このByeGraphがバージョン2.6アップデートでApple Silicon Macに対応しています。 ByeGraphは、データや数式からグラフを作成します。データと数式は、それぞれ単独で使用するだけでなく、それらを組み合わせて使用することもできます。グラフには、Xデータが文字列のグラフ、Xデータが日付書式のグラフ、ラベル
筆者は Scrapbox を愛用しており、Scrapbox プロジェクトのページ間のグラフ構造を可視化するためのツールを作ったりしています。 GitHub - mamezou-tech/sbgraph: Fetch Scrapbox project data and visualize activities. このツールは Graphviz の dot 形式ファイルを出力するので手軽にグラフ構造の可視化が可能です[1]。 D3.js を使うと Graphviz よりインタラクティブな可視化アプリを作れます。グラフ構造の可視化には、force simulation を使うと効果的です。 Force-Directed Graph かなり前に Vue 2 と D3.js を使って可視化のための SPA (Single Page Application) を試作して放置していました。 放置している
今回は、事業として不動産を調達していく上で欠かせないエリア分析の方法をご紹介します。 具体例として、駅徒歩10分エリアのポテンシャルを測り、どの駅近辺の物件を獲得するべきかの判断をするケースを想定します。 不動産エリア分析とは 商圏分析 商圏分析ツール jSTAT MAPの応用 都内全駅の緯度経度情報の取得 徒歩10分エリアの作成 統計グラフ レポートのダウンロード 不動産エリア分析の結果の活用方法 まとめ 不動産エリア分析とは 不動産を調達する上で、どのエリアの物件を獲得するかを決めるのがエリア分析です。 不動産は立地が最重要といっても過言ではなく、立地は家具や内装と違い、失敗した場合取り返しがつきません。 立地を決めるという点から、不動産のエリア分析は、小売業や飲食業の出店計画に近い性質を持ちます。 そのため、小売業等のエリアマーケティングで利用されている商圏分析手法を活用することで、
京都研究所・TechLabの田中です。 マイクロアドでは、主にエンジニア以外のメンバーが広告配信実績などの各種データにアクセスする際にRedashを利用しています。 Redashから接続しているデータソースには、以前このブログでも紹介した分析用Hadoopクラスタ*1に加えて、MySQLのレプリやBigQueryなどがあります。 これらの異なるデータソースに対してRedashからは同じインターフェースでアクセスでき、手軽にデータの抽出や可視化・分析などが可能です。 また、クエリで抽出したデータを利用して、Redash上にダッシュボードを作成することもできます。 本稿では、そんなRedashの活用方法の1つとして、 スケジューリング機能とキャッシュ機能を利用した簡易的なデータパイプラインを使ってダッシュボードを作成する例をご紹介します。 なお、この記事で扱うRedashの説明はバージョンv1
こんにちは. Sansan DSOC 研究開発部の黒木裕鷹です. 2回目の緊急事態が宣言され,昇降デスクを買ったりモニターや服を買い足したりしていました. お財布は寂しいですが,在宅戦闘力が高まりなんだか良い気分です. さて,この連載では,自分の勉強・復習も兼ねて,ネットワークデータにまつわる統計解析を気の向くままに紹介しています. 前回の記事では,DeepWalkやnode2vecをはじめとするnode embeddingの手法を浅く広く紹介しました. 今回は,ネットワークデータに対する深層学習 (Graph Neural Network; GNN) を俯瞰していきます. 数式は可能な限り使わず,直感的に全体像を把握する助けとなれば良いなと思っています. それではやっていきます. はじめに ノード単位のタスクとグラフ単位のタスク グラフフィルタ spectral-based グラフフィル
Androidアプリ開発を長くやっていると、当然、とんでもない失敗をたくさんやらかします。 リリースの翌日大炎上。クラッシュ数グラフがうなぎ登り。低評価レビューの嵐。そこまで行かずとも、危うくとんでもないバグ付きアプリをリリースするところだったぜ、というヒヤリハット事例もたくさん。皆さんもそんな経験ありますよね。 このセッションでは、そんなAndroidアプリを開発していると遭遇する可能性のある失敗事例、失敗に繋がってしまった間違った設計、それに対してどのように対策をしたのか等を私の経験から紹介していこうと思います。 「あるある」「すでにやらかしたわ」と盛り上がりつつ「え、そんなことあるのか」「なるほどそうすればいいのか」という発見が一つでもあればと思います。
先日2024年04月25日に更新されたLooker Studioのリリースノートにて、新しい可視化オプション「タイムラインチャート」が利用出来る旨がアナウンスされていました。 タイムラインチャートを使うと、イベントグループ間の関係を視覚化し、これらのイベントが起こったタイムスパンを比較することができるようになります。 当エントリではこの「タイムライン」チャートについて、必要な要件を確認し、実践データを使って可視化してみるところまでを紹介したいと思います。 目次 必要条件 Looker Studio: タイムラインチャート実践 まとめ 必要条件 タイムラインチャート作成には以下の情報が必要です。 行ラベル:各行のラベル文字。文字列型のディメンションとして指定。 開始日: タイムラインの開始日付。日付型のディメンションとして指定。 終了日: タイムラインの終了日付。日付型のディメンションとして
Streamlit は、ざっくり言うと主にデータサイエンス領域において WebUI 付きのアプリケーションを手早く作るためのソフトウェア。 使い所としては、ひとまず動くものを見せたかったり、少人数で試しに使うレベルのプロトタイプを作るフェーズに適していると思う。 たとえば、Jupyter で提供すると複数人で使うのに難があるし、かといって Flask や Django を使って真面目に作るほどではない、くらいのとき。 使った環境は次のとおり。 $ sw_vers ProductName: macOS ProductVersion: 11.3.1 BuildVersion: 20E241 $ python -V Python 3.8.9 もくじ もくじ 下準備 基本的な使い方 基本的な書式 プレースホルダー プログレスバーを使った処理の進捗の可視化 基本的な可視化 組み込みのグラフ描画機能
こんにちは,株式会社Ridge-iのリサーチチームの@machinery81です. 今回はグラフデータを扱う機械学習のヘルスケア分野への応用のお話を紹介します. TL;DR 機械学習・データマイニングの応用先としてのヘルスケア分野 万能薬から精密医療へ 電子カルテ 創薬 患者調査 ヘルスケア分野を繋ぐグラフマイニング グラフ上の機械学習 古典的なアプローチ グラフの統計量に基づく手法 ランダムウォークに基づく手法 行列因子分解/テンソル因子分解に基づく手法 Graph Neural Network Graph Convolutional Network 創薬分野へのグラフデータの応用 ターゲットの識別 分子特性予測 グラフマイニングによる既存薬再開発 薬品と疾患の相互作用の分析 Combination repurposing 今後の見通し その他の話題 さいごに 参考文献 TL;DR 機械
どうも、まさとらん(@0310lan)です! 今回はJavaScript環境で動くJupyter Notebookのような無料Webサービスをご紹介します。 インタラクティブに動作するJavaScriptを活用したドキュメント作りが可能であり、学習用途はもちろんのことデータ分析・可視化・機械学習・プロトタイプ作りなど、さまざまな用途に活用できるのが特徴です。 JavaScriptを使ったドキュメント作りにご興味ある方はぜひ参考にしてみてください! ちなみにJavaScriptの基本は、paizaラーニングの「JavaScript入門編」で学ぶことができます。 【 Dnotebook 】 ■「Dnotebook」の使い方 それではさっそくですが、「Dnotebook」をどのように使っていけばいいのか詳しく見ていきましょう。 「Dnotebook」はnpmからインストールしてローカル開発環境で
Steamにおける人気ジャンルとその分析 2022年版 by Cheryl Ng · 公開済み 2022年8月17日 · 更新済み 2022年8月16日 [本記事は、How To Market A Gameブログ(以下、HTMAG)の日本語翻訳です。How To Market A Gameの許諾を得て翻訳・掲載しています。] ゲームの「ジャンル」と「絵柄」が決まった瞬間は、ほとんどのマーケティングの決断をしたことと同意義です。ゲームの質も大事ですが、それ以前ゲームのジャンルによってどんなプレイヤーが遊ぶかが決まります。2019年から現在に至るまで、32,202本のインディーゲームがリリースされました。その中、18,563本が10件以上のレビューを獲得しています。レビュー数が少ないということは、遊んでいるユーザーも少ないということです。どうやらプレイヤーには好みの傾向があります。今回の記事で
こんにちは。株式会社KAMINASHIでPMをやっている@gtongy1です。 みなさんはMetabaseをご存知ですか? 見た目の良さによる直感的なダッシュボードの構築、クエリ記述時の補完機能、グラフの種類数の豊富さ、ツール自体は無料で使える等便利なBIダッシュボードツールです。 カミナシでもMetabaseをフルに活用して、日々分析時に利用しています。 そんなMetabaseですが唯一欠点があって、それはslackとの連携が難しい所です。 slackへ通知を行う時にグラフで表現できるのはまだ棒グラフだけとか、マルチバイトの文字列は文字化けしてしまうとか、実運用に回す時にはちょっと辛いなと感じるところがあります。 そこで、今回Metabaseのグラフをslackへ通知するbotをServerless Framework + Puppeteerで作ってみました。 最終的に以下のようにsla
地域密着型から突然コロナ専用病院へ 医師4人が退職、患者も戻らず(2024/5/11) 新型コロナウイルス感染症の「第5波」がピークを迎えていた2021年8月20日の昼過ぎ。JCHO東京城東病院(東京都江東区)に、地域医療機能推進機構(JCHO)の尾身茂理事長(当時)から電話が入った。…[続きを読む] インフル1年半ぶりに流行目安下回る 新型コロナは前週比0.70倍(2024/5/10) 厚生労働省は10日、全国に約5千ある定点医療機関に4月29日~5月5日に報告された季節性インフルエンザの新規感染者数は、1定点あたり0・45人だったと発表した。前週(1・07人)の約0・42倍に減少…[続きを読む] コロナワクチン接種後に死亡 秋田県の男性の救済認定 一時金給付へ(2024/5/10) 新型コロナウイルスのワクチン接種後に死亡した秋田県内の男性が、国の救済制度に基づく死亡一時金の給付対象に
Data Portalでアプリのデータを可視化しよう こんにちは、メディアサービス開発部アプリ開発グループのタンです。 作ったアプリがどう使われているかは誰しも知りたいですね。頑張ってAnalyticsでイベントを実装して、BigQueryにも連携させたのに、なかなか活用されないケースが多いでしょう。 集めたデータを見る機会も少なく、数字だけで見にくくて解釈するのに時間がかかります。そんな問題を解決するためにGoogleさんがGoogleマーケティングプラットフォームの機能の一つとしてData Portal(旧Data Studio)を2016年にリリースしました。今回はそんなData Portalの簡単な使い方を紹介したいと思います。 事前準備 当たり前ですが、Data Portalを使うにはまずデータが必要です。BigQuery、スプレッドシート、CSVファイル、様々なインプットが使え
こんにちは、虎の穴ラボのH.Kです。 今回はChart.jsで可変の表示要素に対していい感じの色を割り当てる方法をご紹介します。 この記事で解決する課題 取得したデータによって比較対象に当たる要素数が可変になるようなグラフ(Chart.js)に綺麗に色をつける 自動で色を割り振った完成形 Chart.jsとは 簡単にグラフを描画できるライブラリです。 パラメータで受け取った値を元にキャンバス要素にグラフを出力してくれます。 円グラフ、折れ線グラフなど多くの形式で表示することが可能です。 また、自動で縦軸や横軸の値を調整してくれるので、値さえ用意すれば簡単に出力できるのが魅力です。 社内で使用しているツールのグラフ表示に使用しています。 www.chartjs.org 解決方法 早速、解決方法ですが、以下の手法を取ることにより解決しました。 HSL色空間を用いる 要素数から色相の角度を計算し
SNSやテレビなどで見かける、横棒グラフの変化をアニメーションで表示するオープンソースのオンラインツールを紹介します。 データは.csvにも対応しており、誰でも簡単に利用できます。 値の変化が非常に分かりやすく、プレゼンなどにもいいですね。 Bar chart race -GitHub Bar chart raceの特徴 Bar chart raceの使い方 Bar chart raceの特徴 Bar chart raceは、横棒グラフがレースをするかのようにその変化をアニメーションで表示するオンラインツールです。 MITライセンスで、商用プロジェクトでも無料で利用できます。 上記のロングバージョン Bar chart raceの使い方 Bar chart raceは、下記ページから利用できます。 横棒グラフのデータ(.csv)を用意し、アニメーション時間を設定するだけです。データが無い人
この記事はNTTコミュニケーションズアドベントカレンダー12日目の記事です。 こちらの記事では、巷で話題の統計的因果探索の手法群を総合的に集めたlingamライブラリの紹介と、実際に利用した例を紹介します。この手法群の元祖かつ代表であるLiNGAMは様々なサイトで紹介されているので、今回は 未観測変数を考慮したBottomUpParceLiNGAM 非線形かつ未観測変数を考慮したCAM-UV の2種についてLiNGAMプロジェクトの公式チュートリアルを参考に紹介します。さらに、巷のオープンデータに適用してみて考察を行います。なお、この記事では各手法の性質については記述しますが、理論的な背景や式の導出の解説はしませんので、あらかじめご了承ください(ここから先は自分の目で(以下略)) 統計的因果探索とは 統計的因果探索は複数の仮定を基にデータから因果グラフを生成する手法のことです。主に離散変数
これはなんの記事? GRというグラフ描画ライブラリのRubyバインディングの記事です。 https://github.com/red-data-tools/GR.rb Rubyだってグラフを描きたいのです! こんにちは。気がつくとRubyのコードをこちょこちょ書いているkojix2と申します。 Rubyでグラフを描きたいって思ったことはありませんか? もちろんRubyにもグラフを描くツールはいくつかあります。たとえば NArrayの作者の田中さんが作っているnumo-gnuplot Jupyter-labで動かすiruby-plotly Ankaneファミリーのchartkick かつて一世を風靡し作者が忽然と姿を消したNyaplot Seabornのようなフロントエンドを目指すcharty daruと一緒に使うdaru-view どれも良いツールではあるのですが、一長一短で私は満足できま
最近,因果推論や因果探索に興味を持ち,勉強している.というのも最近,ゆううきさん と一緒に分散システムの異常の原因を即時に診断するための研究を進めている.原因を診断するためのアプローチとして,サーバやコンテナ等から取得できる様々なメトリック(CPU使用率やメモリ使用率など)を(グラフ理論における)ノードとして,因果グラフを構築することを考えている.メトリック同士の単なる「相関」ではなく,結果と原因の関係である「因果」を捉えようとするアプローチである.例えば,システムの障害が発生した場合,相関だけでは,AとBが関連がありそうというところまでしか言えないが,因果を特定できると理想的には,Aの原因はBであるといった議論ができるため,有用だと考えている. 実際に,前述のような因果グラフを構築して障害の原因を特定しようというアプローチは,以下の例に挙げるようにここ数年で増えている印象がある. 「Mi
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く