日本語に特化したAI OCR「YomiToku」の紹介
いいね : 60
タグ : python, ai, ocr, yomitoku
YomiTokuは日本語に特化したAI OCRソフトウェア。主な特徴は以下の通り。
- AIを活用した高精度な認識: 文字位置検知、文字列認識、レイアウト解析、表の構造認識という4つのAIモデルが日本語データセットで学習されているため、複雑な表組みや縦書き文書にも対応可能。
- 日本語・英語対応と大規模文書処理: 7,000文字を超える大規模な日本語文書も処理できる。
- 多様な出力フォーマット: Markdown、JSON、HTML、CSVの4つのフォーマットで出力可能。システム連携や用途に合わせた使い分けが可能。
- 高いセキュリティ: クラウドサービスではないため、自社サーバー内で動作し、機密情報の取り扱いも安全。
- GPU利用による高速処理: GPU環境で高速に動作するが、8GB以内のVRAMで動作するため、ハイエンドGPUは不要。
2025年 生成AIの新たな波「AI エージェント」の可能性
いいね : 62
タグ : agent, openai, 生成ai, chatgpt, llm
2025年の生成AIトレンドは「AIエージェント」である。2023-2024年はRAG(Retrieval Augmented Generation)が注目されたが、AIエージェントはRAGを包含し、より汎用性の高いソリューションとなる。
AIエージェントは、LLMに指示を出すだけでなく、LLMに作業をさせる点が新しい。ユーザーの代わりに複雑なタスクを自律的に実行する。例えば、旅行の手配や商品の売上分析と在庫管理など、多岐にわたるタスクをAIが代行する。
AIエージェントの要素技術は、エージェントシステム、Function Calling、マルチエージェントである。エージェントシステムは、LLMにより役割を与えられたエージェントが、計画、実行、応答生成を自律的に行う仕組みである。RAGやデータベース分析もエージェントシステムの一種と捉えることができる。
Azure 初学者必見!MVP が教える勉強方法🧑💻
いいね : 72
タグ : microsoft, azure, cloud, 勉強法, 初学者向け
Azure初学者の学習方法として、以下の方法が紹介されている。
-
Microsoft Learn: Microsoft公式の無料学習コンテンツ。Azureの基礎から特定のサービスまで、幅広く学ぶことができる。膨大な量だが、学習したい内容を検索すれば、適切なコースが見つかる。
-
クラウドデベロッパーちゃんねる: YouTubeチャンネルで、Azureを使った開発に関する様々な技術情報を動画で提供。特定の製品を学びたい場合に有効。
-
AZ-900資格取得: 学習目標が不明確な場合は、AZ-900(Azure Fundamentals)資格の学習がおすすめ。クラウドの概念、Azureのアーキテクチャとサービス、管理とガバナンスなど、基礎知識を体系的に習得できる。Microsoft Learnで無料学習でき、Virtual Training Daysを受講すると試験が半額になる。
-
技術コミュニティへの参加: 勉強仲間が欲しい場合は、JAZUG、すきやねんAzure!!、Code; Without Barriersなどのコミュニティがおすすめ。地域やオンラインで開催されているので、自分に合ったコミュニティに参加できる。
【個人開発】持ち物リストを作成・共有するアプリ「All Ready」を作りました
いいね : 34
プログラミングスクールRUNTEQの学習者が、持ち物リスト作成・共有アプリ「All Ready」を開発した。このアプリでは、ユーザーは行き先ごとの持ち物リストを作成・管理し、他のユーザーと共有できる。リストは既存アイテムの選択、オリジナルアイテムの追加、数量バッジ表示、カバー画像設定など、カスタマイズ性の高い設計になっている。さらに、マストアイテム機能では、リスト作成不要でアイテムの投稿・閲覧が可能。レスポンシブデザインを採用し、PCとスマートフォンの両方で快適に利用できるよう工夫されている。また、動的OGP生成機能により、SNS共有時の訴求力も高めている。
伝わる説明を書くスキル
いいね : 14
伝わる説明を書くための重要なポイントは下記の通り。
-
前提を省かない:説明者は暗黙の前提を共有していると思い込みがちだが、チーム外の人、新人、未来の自分にとっては重要情報になりうる。省略せず明記することで、後々の疑問や調査の手間を省ける。
-
対象を統一する:同じ文脈で異なる時点の変更や事象を混在させない。混乱を避けるため、時系列が異なる場合は明示的に区別する。過去の変更などを参照する際は、補足としてリンクを貼るなどして明確化する。
-
結論を最初に書く:結論を「これから説明する内容のトピック」と「そのトピックに対する回答」で構成する。最初に結論を示すことで、読み手は内容を理解しやすくなる。
-
不用意に長い・難しい語を使わない:誤解を防ぐため、簡潔で分かりやすい言葉を使う。「感知」のような言葉は人為的ミスかシステムミスか曖昧になるため、「気づく」など具体的に書く方が良い。
新しい curl コマンドの使い方 完全ガイド(2025年版)
いいね : 12
タグ : shellscript, curl, http, json, シェル芸
- curlコマンドは多様な環境で動作し、商用サポートもあるため、互換性が高い。
- 最新版では、従来複雑だったオプション指定が簡略化されている。例えば、「-X POST -H "Content-Type: application/json"」のような記述は不要。
- 記事は、2015年の情報が現在(2025年)では古くなっていることを指摘し、新しいcurlの使い方を紹介している。
- 使用curlバージョンは8.12.1。
- 最新版ではよりシンプルなコマンドでHTTP通信が可能。
携帯キャリアの解約予測に基づくLTV(ライフタイムバリュー)算出による優良顧客分析・マーケティング戦略立案
いいね : 11
タグ : 機械学習, #マーケティング, #データ分析, #datarobot, #ltv
本記事では、DataRobotとTableauを用いた携帯キャリアの顧客解約予測とLTV算出による優良顧客分析の事例を紹介している。
- 架空の顧客データを用いて、DataRobotで解約予測モデルを構築。
- Tableauで予測結果を可視化し、LTVの高い顧客の特徴を分析。
- LTVに基づく顧客セグメンテーションで、マーケティング戦略(投資最適化、顧客維持、商品改善等)への活用を提案。
- データ準備、モデル構築、予測のプロセスを簡略化して説明。
- 本分析は、顧客の生涯価値に基づいたデータドリブンな意思決定を支援するものである。
次世代のサーバー見えなくなる。
いいね : 7
タグ : actor, swift, distributedsystems, serversideswift
Swift 6.0 で導入された Resolve DistributedActor Protocols により、サーバーの内部実装が隠蔽され、クライアントはプロトコルで定義されたインターフェースのみでリモート呼び出しが可能になった。サーバーはアクターという抽象的な単位となり、複雑な通信プロトコルや内部実装を意識せずにAPI呼び出しだけでシステム構築が可能になった。すべてのAPIはインターフェース(プロトコル)として定義され、クライアントはサーバーの実装詳細を知る必要がない。@Resolvable マクロにより、分散プロトコルに対してスタブ型が自動生成され、クライアントはこれを通じてリモート参照を解決し、サーバーの実装に依存しないAPI呼び出しを行う。
MusicKitを使ってiOSの音楽再生アプリを作ってみる
いいね : 6
タグ : ios, 音楽再生, musickit, swiftui, applemusicapi
MusicKitを用いてApple Musicと連携するiOSアプリの開発方法を解説している。
- MusicKitはApple Musicの音楽情報へのアクセス、再生などを可能にするライブラリである。
- 作成するサンプルアプリでは、Apple Musicのライブラリ、おすすめアルバム、プレイリスト、ステーションの情報を表示、さらにライブラリの曲の再生・停止を制御できる。
- 事前準備として、Apple DeveloperサイトでApp ServiceのMusicKitを有効化し、開発者トークンを自動生成する設定を行う必要がある。
- アプリのBundle IDを正しく設定し、info.plistに音楽ライブラリ利用の目的を記述する必要がある。
【🔰初心者向け】Git入門 [log, diff, reset, reflog]
いいね : 12
この記事はGit初心者向けに、git log
、git diff
、git reset
、git reflog
コマンドの使い方を解説している。git log
はコミット履歴の確認、git diff
はファイルの変更差分の確認、git reset
は特定のコミットへの変更の取り消し、git reflog
は全てのGit操作履歴の確認に用いる。これらのコマンドを理解することで、バージョン管理を効率的に行える。
"りんご"と"りんご"は違う。について真剣に考える。【Ruby】
いいね : 11
Rubyの文字列比較において、全角と半角の違い、大文字と小文字の違いによって、同じように見えても異なる文字列として扱われる。
==
演算子は文字列の内容を比較し、equal?
メソッドはオブジェクトの同一性を比較する。全角「りんご」と半角「りんご」は==
ではfalseとなるが、それぞれをdowncaseやzenkaku_hankakuメソッドで正規化すればtrueになる。
equal?
の場合は、同じ内容の文字列でも異なるオブジェクトであればfalseになる。文字列が同じオブジェクトかどうかを調べるにはobject_id
メソッドを使う。
A/Bテストが難しいときの代案!XmRチャートで施策の効果を検証する方法
いいね : 41
A/Bテストが難しい状況において、XmRチャートを用いた効果検証方法が紹介されている。
- A/Bテストは厳密なランダム化が必要だが、現実のビジネス環境では実行困難な場合が多い。
- XmRチャートは、時系列データの通常の変動範囲を可視化し、施策実施後にその範囲を超える「シグナル」の有無を検定する手法。管理限界、中央線、平均値の5本の線を使い、3つのルールでシグナルを判断する。
- 施策実施前の期間を基準期間としてXmRチャートを作成し、施策実施後のデータをプロット、シグナルの有無を確認する。シグナルがあれば施策に効果があった可能性が高い。
- シグナル発生は他の要因による可能性もあるため、施策を元に戻してデータが基準期間の範囲に戻ることを確認すると、検証の確からしさが向上する。
- XmRチャートはA/Bテストほど厳密ではないが、ランダム化が困難な状況では有効な代替手段となる。
この住所、読めますか? 難読地名チャレンジ!
いいね : 6
タグ : html, javascript, 住所, クイズ, zenrinmapsapi
この記事は、ZENRIN Maps API を使用して作成された難読地名クイズアプリ「YomiMap(読みマップ)」を紹介しています。
- アプリは、難読地名の読み方をクイズ形式で出題し、正解すると地図上にその場所を表示する。
- ZENRIN Maps API を活用することで、住所検索と位置情報の取得を実現している。
- クイズデータはJavaScriptのオブジェクト配列で管理され、住所名、選択肢、正解が含まれている。
- デモサイトで実際にクイズを体験できる。
- 記事では開発の流れも簡単に説明されており、クイズデータの作成について触れられている。
【kintone】Chobiit(外部公開)フォームから入力され、レコードが追加されたときの通知をメールで受け取りたい
いいね : 6
kintoneでChobiit外部公開フォームからのレコード追加時にメール通知を受け取る方法について解説。
- Chobiitフォームからの入力はREST API経由のため、標準の通知設定ではメールが送信されない。
- kintoneシステム管理の「利用する機能の選択」で「REST APIの通知をメールで送信」を有効にする必要がある。
- この設定変更により、REST API経由の全ての操作がメール通知対象となるため、大量のメール送信に注意が必要。
- アプリの条件通知設定だけでは、Chobiitフォームからのレコード追加時のメール通知は機能しない。
- メール通知を受け取るユーザーは、kintoneの個人設定でメール通知を有効にしておく必要がある。
エンジニアがヨガを取り入れると生活の質が向上する理由 姿勢改善&集中力アップ!
いいね : 8
10年間エンジニアとして働いてきた著者は、肩や腰の不調に悩まされ、ヨガを始めました。その効果を実感し、ヨガインストラクターの資格を取得。エンジニア向けヨガ講座を開講予定です。
ヨガは、長時間のデスクワークで起こりがちな姿勢の悪化、肩こり、腰痛などを改善する効果があります。また、深い呼吸とポーズで集中力や生産性を向上させ、ストレス軽減にも繋がります。
講座では、デスクワークの合間にできるポーズや、集中力を高める呼吸法、肩こりや腰痛改善に効果的なポーズなどを指導予定です。
著者は、ヨガによって自身の体の不調が改善し、生活の質が向上したと実感しています。
Linux学習 4日目
いいね : 7
タグ : linux
-
UNIXカーネルの大部分はモノリシックカーネルであり、カーネル内の各レイヤが統合されカーネルモードで動作する。マイクロカーネルは最小限の機能(同期プリミティブ、シンプルなスケジューラ、IPC)のみを提供し、その他はユーザ空間のシステムプロセスが処理する。
-
モノリシックカーネルはマイクロカーネルより高速だが、モジュール化が難しい。マイクロカーネルはモジュール化しやすいが、プロセス間通信のオーバーヘッドがある。
-
モジュールは実行中にカーネルに動的に組み込み/削除できるオブジェクトファイルで、ファイルシステム、デバイスドライバ等の機能を提供する。カーネル空間で実行されるため、静的リンクされたカーネル関数と同様に動作する。
-
モジュールの利点は、実行時のロード/アンロードによる拡張性、プラットフォーム非依存性、動的ロード/アンロードによるメモリ使用の効率化、メッセージパッシングオーバーヘッドがないことによる性能維持である。
雨の日の屋根がある歩行者ルート検索を Google Maps API と ZENRIN Maps API で比較してみた
いいね : 4
タグ : javascript, html5, api, googlemapsapi, zenrinmapsapi
Google Maps APIとZENRIN Maps APIを比較し、雨天時の歩行者ルート検索における有用性を検証している。Google Maps APIは、標準的な経路情報(距離・時間)を提供するが、屋根の有無といった詳細は提供しない。一方、ZENRIN Maps APIは日本国内に特化し、屋根の有無や構造情報、歩数、消費カロリーなど、雨天時の歩行に役立つ詳細な情報を提供する。ZENRIN Maps APIは、屋根のある区間を緑、ない区間を赤で色分け表示するなど、視覚的な情報提供にも優れている。結果として、雨の日の安全なルート検索には、ZENRIN Maps APIがより適している。
AgoraSDKを使ってAndroidの音声通話アプリを作ってみる
いいね : 4
タグ : android, android開発, 音声通話, ビデオ通話, agora
Agora SDKを用いたAndroid音声通話アプリ作成の手順は以下の通り。
- Agoraプラットフォームでアカウント作成とプロジェクト作成を行う。
- アプリにAgora SDKの依存関係を追加する(記事執筆時点ではバージョン4.5.0)。
- マイクなど必要なパーミッションを設定する。
- Rtc Engineを生成し、Rtc Channelに参加することで音声の送受信が可能になる。
- これらの手順により、比較的簡単に音声通話機能を実装できる。
AgoraSDKを使ってAndroidのビデオ通話アプリを作ってみる
いいね : 4
タグ : android, jetpackcompose, 音声通話, ビデオ通話, agora
この記事では、Agora SDKを用いたAndroidビデオ通話アプリの作成方法を解説しています。
- Agoraはリアルタイムの音声・ビデオ通話やライブストリーミング機能を提供するライブラリです。
- アプリは起動後に音声と映像の送受信ができるシンプルな構成です。
- ビデオ通話の実装手順は、Agora Project作成、SDKの依存関係追加、パーミッション設定、Rtc Engine生成、Rtc Channel参加です。
- 事前準備として、Agora Consoleでアカウント作成とプロジェクト作成が必要です。
- 記事執筆時点(2025年2月)で最新のAgora SDK 4.5.0を使用しています。
AWSで音声解析 〜Kinesisに音声を流し込んだら、Transcribeがなんとかしてくれるらしい〜
いいね : 3
タグ : aws, ffmpeg, 初心者, kinesis, transcribe
FFmpeg、Kinesis、Transcribe、Lambda、S3を用いてリアルタイム音声解析システムを構築する方法が紹介されている。FFmpegでキャプチャした音声をKinesis Data Streamsにストリーミング送信する。Kinesisの1MBペイロード制限に対応するため、Lambdaでデータを受け取りS3へ一時保存する。TranscribeがS3の音声ファイルを解析しテキスト化、結果をS3に保存する。つまり、音声データの流れは、FFmpeg → Kinesis → Lambda → S3 → Transcribe → S3 となる。
エンジニアとクリエイターの壁をなくす!思考法の違いと共創の実践
いいね : 3
タグ : エンジニア, #チーム開発, #勉強法, chatgpt, #クリエイター
エンジニアとクリエイターの思考法の違いを理解し、円滑なチーム開発を進めるための方法が述べられている。エンジニアは減点法で、クリエイターは加点法で思考する傾向があるため、認識の齟齬が生じやすい。それを防ぐには、両者の思考法の違いを理解し、ディスカッションの段階によって加点法・減点法を使い分けることが重要となる。また、ChatGPTなどのAIツールを活用することで、企画・開発をスムーズに進める助けになる。
Pyxel先生GPT作ってみた、ちゃんと遊べるゲームのコードも書けるぞ
いいね : 3
・PyxelというレトロゲームエンジンをChatGPTで学習できるGPTを作成した。
・このGPTは、Pyxelのインストール方法から簡単なゲーム作成まで、対話形式でガイドしてくれる。
・実際に簡単なゲーム(プレイヤーが操作する四角と、増え続ける敵の丸を避けるゲーム)のコードを生成し、動作させることができた。
・GPTへのプロンプトは、Pyxelの公式ReadMeを参照させる単純なものだが、詳細な指示よりも効果的だった。
・このGPTにより、Pyxelの学習ハードルが下がることが期待される。
GitHub Actions とは
いいね : 3
タグ : githubactions
GitHub Actionsは、GitHub上でコード変更をトリガーとして自動的に処理を実行できる仕組み。主な機能として、コードのプッシュ時に自動テストの実行、Pull Request作成時のコードチェック、mainブランチへのマージを契機とした本番環境へのデプロイなどが挙げられる。これにより開発作業の自動化が可能になる。「actions/checkout@v4」は、ワークフロー内でリポジトリをチェックアウトするためのActionである。
氣づき – AIを超えて – これからの時代に必要なこと
いいね : 5
AI時代において、人間がAIを使いこなし、超えていくために必要なのは以下の3点である。
- 情熱:優れた創造の源は、AIには持ち得ない強い情熱である。
- 好奇心:新しい学びや探求への欲求は、AIのデータ蓄積とは異なる人間の強みである。
- 楽しむこと:学ぶことを楽しみへと転換できることが、AIを超える鍵となる。
AIは推測はできても、本当に必要なものを理解することはできない。主体性を持って、何を学び、何を作るかを決めるのは人間自身である。AIの一般化によって、文化や歴史の深みが失われるリスクを避けるため、人間独自の価値観を育み、継承していく必要がある。
DataRobot CodeSpaceでLLMを活用した名寄せ処理をやってみた
いいね : 3
タグ : datarobot, llm,, codespace,, 名寄せ,, 前処理,
DataRobot CodeSpace上でLLM(Azure OpenAI)を用いた名寄せ処理の実装方法を紹介している。CodeSpaceはDataRobotプラットフォーム上の統合開発環境で、Jupyter NotebookやPythonスクリプトを利用でき、GPU環境も利用可能。LLMを用いた名寄せは従来手法より柔軟だが、APIトークンコストが発生する。コード例では、会社名と社員名のダミーデータセットで会社名を正しく名寄せできるか検証している。GPT-4oを使った名寄せ処理を行い、JSON形式で結果を出力する。
NeurlPS2024 論文可視化マップと注目論文
いいね : 2
タグ : 機械学習, deeplearning, 論文, neurips2024
NeurIPS2024の論文可視化マップと注目論文を紹介する。可視化マップは多数の論文をクラスタリングし、ML最適化、LLM、RLHF、ドメイン汎化、テキスト画像生成、敵対的攻撃、マルチモーダルLMといった主要分野を明らかにした。注目論文として、グラフ対照学習における表現散乱、微分可能な論理ゲートネットワーク、LSTMの拡張、球面拡散を用いた気候モデルのエミュレーション、次のトークン予測によるヒューマノイド移動制御、選択的言語モデリングによるLLM事前学習効率向上、多数の例を用いたFew-Shot学習を超えるMany-Shot ICL、視覚中心マルチモーダルLLM Cambrian-1、次スケール予測による画像生成手法VAR、推論タスク最適化手法IRPOが挙げられる。
どうしてもWPFのWindows10OCRがフォームで使いたい
いいね : 3
クリップボードの画像からOCRでテキストを抽出するC#コードを紹介している。Windows 10のOCR機能を利用し、Windows.Media.Ocr名前空間を使用。クリップボードに画像がない場合はエラーメッセージを表示。取得した画像はMemoryStreamに保存後、Windows Runtime Streamに変換し、デコード処理を経てOCRエンジンに渡す。認識結果はラベルに表示される。
Scikit-Learnが遅いので、C++製の超高速機械学習ライブラリを作った話
いいね : 3
タグ : python, cpp, 機械学習, ライブラリ, ai
Scikit-learnの速度不足を解消するため、C++製の機械学習ライブラリVeloxML(アルファ版)が開発された。VeloxMLは、C++による実装、OpenMP/TBBによる並列処理、BLAS/LAPACKを用いた最適化により高速化を実現している。Python APIを提供し、Scikit-learnのように使いやすい。線形回帰、ロジスティック回帰、決定木、ランダムフォレスト、SVMなど主要アルゴリズムを実装済み。将来的なAutoML、GPU対応も視野に入れている。現在はMacOS(Apple Silicon)のみ対応。
AIで英単語を漫画化するけど、つまらない内容なので人間が面白くする「コミ単」開発事例
いいね : 2
タグ : firebase, #nextjs, #stablediffusion, #gpt4, #生成ai
「コミ単」は、AIを活用した英単語学習Webアプリ。当初、AIが生成する漫画で単語を楽しく学べるよう設計したが、生成漫画の面白さに課題があったため、ユーザーがAI生成漫画をベースに自分で面白くアレンジできる仕組みに変更した。開発にはNext.js、Firebase Functions、GCP/Firebase、Stable Diffusion Ultra、GPT-4oといった技術を採用。当初DALL-E 3を使用していたが、日本の漫画表現に適していなかったためStable Diffusionに切り替えた。Firebaseのサーバーレス構成により少人数での開発を実現した。ユーザーテストでは、AI生成漫画をベースにアレンジする機能に好意的な反応が得られた。
Raggle第2回コンペ 1位解法 – 製薬企業向けRAGの精度改善
いいね : 2
タグ : 自然言語処理, rag, chatgpt, llm, rag精度向上
・Raggle第2回(ロート製薬協賛)で全文入力によるRAGで1位を獲得。
・GraphRAGやベクトル検索は制限により使用不可のため、Long-Context(LC)を採用。
・複数文書は、1段階目で回答に必要な文書を特定、2段階目で回答生成する二段階処理を採用。
・スコアばらつき抑制のため、回答生成後の修正処理は行わず、質問への直接回答生成方式を採用。
・画像データはgpt-4o-miniのVision機能を使用したが、テキスト抽出に課題があり、EasyOCR等のオフライン処理が安定する可能性を指摘。
2/22/2025, 11:19:56 AM 時点の情報です。