if I want to make generative AI platform, what knowledges need to me? book, youtube, lecture anything recommends.

Creating a generative AI platform requires a combination of knowledge in machine learning, software development, and domain-specific expertise depending on the type of content you want to generate (e.g., images, text, music, etc.). Here’s a general roadmap of the knowledge areas and some resources to get you started:

  1. Foundational Knowledge:
    • Linear Algebra, Probability, and Statistics: Crucial for understanding the underlying math of most algorithms.
      • Book: “Linear Algebra and Its Applications” by Gilbert Strang
      • Book: “Pattern Recognition and Machine Learning” by Christopher Bishop
    • Programming: Proficiency in a language like Python is essential.
      • Online: Codecademy’s Python Course, LeetCode for practice
  2. Machine Learning Basics:
    • Book: “Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow” by Aurélien Géron
    • Online Course: Coursera’s “Machine Learning” by Andrew Ng
  3. Deep Learning and Generative Models:
    • Book: “Deep Learning” by Goodfellow, Bengio, and Courville
    • Online Course: Coursera’s “Deep Learning Specialization” by Andrew Ng
    • Topics to focus on:
      • Convolutional Neural Networks (CNNs) for image data.
      • Recurrent Neural Networks (RNNs), especially Long Short-Term Memory (LSTM) networks for sequences like text or time series.
      • Generative Adversarial Networks (GANs) for generating new data samples.
      • Variational Autoencoders (VAEs) for generative tasks.
  4. Generative AI Specializations:
    • For text:
      • Dive into models like GPT-2, GPT-3, or BERT. OpenAI and HuggingFace have great resources and APIs for these.
    • For images:
      • Explore DCGANs, StyleGAN, and Pix2Pix.
    • For music:
      • Look into WaveGAN or OpenAI’s MuseNet.
  5. Software Development & Platform Creation:
    • Frameworks: TensorFlow, PyTorch, Keras are the popular choices for deep learning.
    • Deployment: Learn about tools like Docker, Flask/Django for web-based platforms, and cloud platforms like AWS, GCP, or Azure for scalability.
    • Book: “Flask Web Development” by Miguel Grinberg for web-based applications.
  6. Continuous Learning:
    • Follow AI researchers and organizations on platforms like Twitter or LinkedIn.
    • Read arXiv for the latest research papers.
    • Attend conferences, either in-person or virtually, such as NeurIPS, ICML, ICLR.
  7. YouTube Channels:
    • Two Minute Papers: Great for keeping up with the latest research.
    • Sentdex: Provides tutorials on a wide range of programming and machine learning topics.
    • Yannic Kilcher: Deep dives into AI research papers.
  8. Practice:
    • Work on projects and put your knowledge to the test.
    • Participate in Kaggle competitions to apply what you’ve learned and learn from kernels shared by others.

Lastly, remember that the field of AI and machine learning is vast and constantly evolving. It’s essential to stay curious and continue learning.

플라스틱 재활용에 대한 Chat GPT 답변

tell me the reason plastic can not re-usable on chemistry. why can not re assemble them?

ChatGPT

Plastics are typically challenging to reassemble or reuse through chemical processes for several reasons:

  1. Polymer Complexity: Plastics are composed of long chains of polymers, which are large molecules made up of repeating units. These polymers can be very complex and vary significantly depending on the type of plastic (e.g., polyethylene, polypropylene, PVC). Breaking down these complex polymers and reassembling them is a complex and energy-intensive process.
  2. Irreversible Cross-Linking: Some plastics, such as thermosetting plastics like epoxy and phenolic resins, contain cross-linking chemical bonds that form a three-dimensional network. These cross-links are irreversible, making it difficult to break them down and reassemble the material into its original form.
  3. Contaminants: Used plastics often contain contaminants like dirt, oils, and other materials that can interfere with chemical processes. These impurities can make it challenging to obtain high-purity plastic materials through chemical recycling.
  4. Degradation: Plastics can undergo degradation when exposed to heat, light, and oxygen over time. This degradation can result in changes to the chemical structure of the plastic, making it difficult to return it to its original properties.
  5. Energy Intensive: Recycling plastics chemically can be energy-intensive and expensive. The high temperatures and pressures required to break down the polymers and reassemble them into new materials can make the process economically impractical in many cases.
  6. Limited Reusability: Even when chemical recycling is possible, it often results in the production of lower-quality plastics with properties inferior to virgin materials. This limits the number of times plastics can be recycled chemically before they become unsuitable for most applications.

While chemical recycling techniques are continually improving, they still face significant challenges in terms of efficiency, cost-effectiveness, and scalability. Mechanical recycling, such as melting and reshaping plastics, remains a more common and economically viable method for reusing plastics. Innovations in recycling technologies are ongoing, and researchers are exploring ways to make plastics more recyclable and environmentally friendly.

is plastic extracted from oil?

ChatGPT

Yes, plastic is typically derived from petroleum, which is a fossil fuel. The process of making plastic from petroleum involves several chemical steps, and it is called petrochemical production. Here’s a simplified overview of how plastic is produced from oil:

  1. Crude Oil Extraction: Crude oil is extracted from underground reservoirs through drilling and pumping. Crude oil is a mixture of hydrocarbons and other compounds.
  2. Refining: Crude oil is transported to refineries, where it undergoes a refining process to separate various components, including gasoline, diesel fuel, jet fuel, and petrochemical feedstocks.
  3. Petrochemical Production: The petrochemical feedstocks obtained from the refining process are then used as raw materials for the production of plastics. The primary petrochemicals used in plastic production are ethylene, propylene, and other monomers.
  4. Polymerization: In polymerization, these monomers are chemically bonded together in a controlled process to form long chains of polymers, which are the building blocks of plastics.
  5. Additives and Processing: Various additives, such as stabilizers, plasticizers, and colorants, are mixed with the polymer to give the plastic its desired properties. The resulting mixture is then processed into various forms, such as pellets, sheets, or molded products.
  6. Manufacturing: The processed plastic is used to manufacture a wide range of products, from packaging materials and automotive parts to toys and consumer goods.

It’s important to note that not all plastics are made from petroleum. Some plastics can be produced from alternative feedstocks, such as natural gas or renewable resources like biomass. These alternative feedstocks can help reduce the environmental impact of plastic production and lessen dependence on fossil fuels. However, petroleum-based plastics are still the most common and widely used types of plastics.

what kind of studies or researches are process about plastic reuse or reassemble nowadays? and were they got result? tell me anything about it.

ChatGPT

Research and studies related to plastic reuse and reassembly are ongoing in various fields, including materials science, chemistry, and engineering. These efforts aim to develop more sustainable methods for recycling and reusing plastics, reduce environmental impacts, and minimize plastic waste. Here are some areas of research and recent developments in the field of plastic reuse and reassembly:

  1. Chemical Recycling: Scientists are working on improving chemical recycling techniques, such as depolymerization and pyrolysis, which break down plastics into their constituent monomers or smaller chemical compounds. These processes can potentially yield higher-quality recycled plastics and reduce the need for virgin plastic production. Research has made progress in optimizing these processes and scaling them up for industrial use.
  2. Biodegradable Plastics: Researchers are developing biodegradable plastics made from renewable resources like plant starch, cornstarch, or algae. These plastics can break down naturally in the environment, reducing the persistence of plastic waste. However, challenges remain in terms of their cost-effectiveness, performance, and widespread adoption.
  3. Mechanical Recycling: Innovations in mechanical recycling technologies are aimed at improving the efficiency of sorting, cleaning, and reprocessing used plastics. Advanced sorting and separation techniques, along with better recycling equipment, are being explored to increase the quality and yield of recycled materials.
  4. Plastic Upcycling: Some researchers are exploring methods to “upcycle” plastics into higher-value products, such as textiles, building materials, and chemical feedstocks. For example, recycled PET bottles can be used to make polyester fabrics, reducing the need for virgin polyester production.
  5. Biotechnological Solutions: Biotechnology is being applied to develop microorganisms that can break down and digest plastics, potentially offering a more environmentally friendly approach to plastic degradation. Enzymes that can degrade specific types of plastics have also been studied.
  6. Eco-Friendly Additives: Scientists are researching and developing additives that can enhance the recyclability and biodegradability of plastics. These additives can help mitigate the environmental impact of plastic waste.
  7. Circular Economy Initiatives: Governments, businesses, and organizations are promoting the concept of a circular economy for plastics. This involves designing products and packaging for reuse and recycling, as well as implementing extended producer responsibility (EPR) programs to incentivize responsible plastic management.
  8. Policy and Regulation: Policymakers and regulators are implementing laws and regulations aimed at reducing single-use plastics, increasing recycling rates, and promoting sustainable plastic use. These policies are designed to drive industry innovation and consumer behavior change.

It’s important to note that while significant progress has been made in plastic reuse and recycling, challenges remain, including economic viability, scalability, and consumer behavior. The development and adoption of more sustainable practices and technologies are ongoing efforts, and the effectiveness of these solutions will continue to evolve over time.

안드로이드 웹 뷰에 HTML 로드하기

안드로이드 앱에 내가 만든 THREE.JS 뷰어를 로드 해야할 일이 생겼다.

threejs 캔버스가 들어간 HTML파일을 준비하고 다음과 같이 로드 해주면 된다. 단, 안드로이드 웹 앱에서 자바스크립트를 실행하려면 다음과 같은 설정이 필요하다.

webView.addJavascriptInterface(this, "android");
webView.loadUrl("javascript:android.onData(functionThatReturnsSomething)");


참고

https://blog.naver.com/urbanbaseinc/221672052557

https://stackoverflow.com/questions/3298597/how-to-get-return-value-from-javascript-in-webview-of-android

Nuxt build config

https://v2.nuxt.com/docs/configuration-glossary/configuration-target/

nuxt (vue) 를 정적 사이트 ( index.html ) 형태로 빌드 하고 싶다면 다음의 옵션을 조정하면 된다.

// nuxt.config.js
export defulat {
   target: "static",  // server 를 바꾼다.
   ssr: false,        // true 
   ...
}

+ 추가사항 ) nuxt 는 SSR 이기 때문에 각 모듈을 렌더링 타임에 link 하는 방식으로 동작하여 완벽한 방식은 아니다

따라서 컴팩트한 html 을 원할 경우 SSR 이 아닌 다른 Front end 프레임워크 ( vue, flutter 등.. ) 을 사용하는게 좋다.

Differences retain context between arrow function and regular function

class Test {
  constructor() {
    this.func1 = () => {
      // use keyword 'this' on the event handler
    }
  }
  
  func2() {
    // doesn't use keyword 'this' on the event handler
  }
}

The differences between `func1` and `func2` in the provided JavaScript code relate to how they handle the context of the `this` keyword. Let’s break down the differences step by step.

1. **Arrow Function vs Regular Function:** `func1` is defined using an arrow function (`() => { … }`), whereas `func2` is defined using a regular function (`function() { … }`). Arrow functions capture the surrounding context, including the value of `this`, while regular functions have their own `this` binding that is determined by how the function is called.

2. **Binding of `this`:** In `func1`, since an arrow function is used, the value of `this` inside `func1` will refer to the instance of the `Test` class where `func1` is defined. This means that no matter where `func1` is called, the `this` context remains the same as the instance of the class. Arrow functions don’t have their own `this` context; they inherit it from their enclosing function (or in this case, the constructor). In `func2`, since a regular function is used, the value of `this` will depend on how `func2` is called. If `func2` is called as a method of the `Test` instance (`testInstance.func2()`), then `this` will refer to the instance. However, if `func2` is extracted and called in a different context (e.g., as a standalone function), the value of `this` can change, possibly leading to errors or unintended behavior.

3. **Usage in Event Handlers:** If you intend to use these functions as event handlers, `func1` might be more convenient. Since it’s an arrow function, it retains the instance context, ensuring that you can use the `this` keyword inside the event handler to refer to the instance of the class. On the other hand, if you use `func2` as an event handler, the value of `this` might change based on how the event is triggered, potentially leading to unexpected results or errors.

In summary, the key difference between `func1` and `func2` lies in how they handle the `this` keyword, with `func1` using an arrow function to maintain the instance context and `func2` relying on the standard function’s `this` binding, which can be influenced by how it’s called.

크롬에서 웹페이지 전체 캡쳐

웹 페이지 상에 보여지는 부분만 캡쳐하는 것이 아닌 포함하는 웹페이지 전체영역을 한번에 캡쳐하는 방법이 있다.

이 방법은 크롬, 엣지에서만 사용 할수 있다.

  • 브라우저 정보
    Chrome(115.0.5790.111)
    Edge (115.0.1901.188)

방법은 다음과 같다.

  1. 캡쳐할 웹페이지에 접속한다.
  2. F12 키를 눌러 개발자 도구창을 열어준다.
    • 크롬 : 설정 > 도구 더보기 > 개발자 도구
    • 엣지 : 설정 > 기타 도구 > 개발자 도구 ( Ctrl + Shift + I )
  3. Ctrl + Shift + P 를 열어 명령어 창을 연다.
  4. 명령어 입력 박스에 “스크린샷” 이라고 입력한다. 영문 브라우저 일 경우 “Screenshot”
  5. “원본 크기 스크린샷 캡쳐” 메뉴를 클릭한다. 영문 브라우저 일 경우 “Full Size Screenshot”
  6. 페이지 캡쳐 이미지가 내 컴퓨터로 다운로드 된다.

주식 이야기 1

토스 주식창에서 배당주 검색을 하다가 시티즌 파이낸셜이란 회사를 발견 했다.

금융 주식같은데 올해 상반기 재무실적을 보면 살짝 줄어들고 있는걸 확인했는데 반대로 주식은

작년 초반에 비해 무려 40%가량 떨어진 가격에서 횡보 하고 있는 것으로 보인다.

무엇때문에 떨어지다 다시 오르고 있는 걸까?

초이스 스탁에 내용을 살펴보니 해당 업종 독점이 상당한 것으로 보인다. 최근에 미국에서 뱅크런 사건이 연이어 터지고 있다는 뉴스를 많이 접하는데 그래서 그런걸까? 경쟁사들이 알아서 떨어져 나가 주니 나머지 재무가 탄탄한 은행들이 반사이익을 보고 있는 게 아닐까 싶다.

총 자산을 연단위로 봤을때 자산이 늘어나고 있어서 꽤 괜찮아 보이는데 금융쪽은 지식이 전혀 없어서 이게 들어가는게 맞는지 모르겠다. 해당 주식에 대한 토스 주식이나 각 사이트에 적혀있는 의견은 적극 구매라 이번달 월급이 들어오면 살짝 담가볼까 싶다.

여태까지 구입한 주식들이 거의 기술주 여서 다른 종목도 한번 경험해 보는 것도 나쁘지 않을 것 같다. 물론 내가 보기에 현재 상태가 매력적으로 보이기도 하고.. 여전히 분석에 대한 사이트는 전무해서 감으로 계속 해나가지 싶다.

문자열 클립보드로 복사

// 클립보드로 내용 복사
// window.navigator.clipboard.writeText( [string] )

window.navigator.clipboard.writeText( 'content what you want' ).then( () => {
   console.log( 'copy done' );
} );
// HTML 요소 내용 복사
// HTML document 내용 생략
<body>
   <textarea id="myTextArea"/>
</body>
<script>
   const myTextArea = document.getElementById( 'myTextArea' );
   window.navigator.clipboard.writeText( myTextArea.value ).then( () => {
      alert('copy done');
   });
</script>
...

https://curryyou.tistory.com/480

https://developer.mozilla.org/en-US/docs/Web/API/Navigator/clipboard

Plugin

호스트 응용 프로그램과 서로 응답하는 컴퓨터 프로그램

특정한 “주문식” 기능을 제공한다. (확장 기능 이라고도 함)

애드온(add-on), 애드인(add-in) 이라고도 부른다.

어떤 프로그램에서 특정한 기능을 수행 하기 위하여 만들어진 프로그램

플러그인은 단독으로 사용 될 수 없으며 타겟 프로그램에 종속적이다. 간혹 다른 프로그램과 호환가능 하도록 제작하는 경우도 있다. (ex, 어도비 플래시, 자바, 아크로벳 리더 등등…)

기업 / 그룹 또는 개인이 다수의 사용자에 맞는 기능을 전부 구현 할 수는 없으므로 개별 사용자가 직접 구현하도록 한 프로그램의 한 형태.

플러그인이 많아지면 많아질 수록 프로그램이 무거워지는 단점이 있다.

ex1) 비주얼 코드의 수많은 플러그인을 보라. 마이크로 소프트에서 개발한 것이 아닌 개별의 개발자가 만들어낸 추가 기능들 이다.

ex2) 언리얼 엔진의 수많은 기능들 중 플러그인 (애니메이션 편집툴, 본 편집툴 등…) 형태에서 언리얼 엔진 기능으로 합병된 경우가 많다.

C++ 플러그인 구조 예시 https://luckygg.tistory.com/265

SUPERQUASAR