Seth Godin’s Akimbo: Small Apertures

In his Akimbo podcast, Seth Godin teaches us how to adopt a posture of possibility, change the culture, and choose to make a difference. Here are my takeaways from the episode.

In this podcast, Seth discusses the function of apertures on the camera lens and uses it as an example of how various gatekeepers have shaped or defined our culture.

Camera lenses are round, but pictures are square because the light goes through a camera lens via a tiny pinhole in the lens. It turns out that, through that little, small hole, plenty of photons can work their way to the other side and land on a square piece of film. The pinhole acts as a gatekeeper for the photons.

Many aspects of our culture also have corresponding gatekeepers. The music industry used to have many gatekeepers that work together in the music ecosystem. The supply chain was made up of listeners, radio program directors, record producers, media executives, and many specialized support personnel and teams.

These supply chains and gatekeepers together act an aperture, a tiny little hole between the people who create things and the market that is open to consuming them.

Over time, the music ecosystem evolves, we got rid of the gatekeepers in many ways. The scarcity of radio time slots and album shelf space is no longer the constraint for music publishing. While there is a portion of the population that wants to listen to what the gatekeepers pick out for them, acquiring an audience in the age of iTunes and YouTube has clearly illustrated the concept of “Long Tail” named by Chris Andersen.

More importantly, these gatekeepers in many industries who used to define or shape our culture are not driving the culture anymore. These gatekeepers existed because we need them to manage the scarcity in time slots or shelf space. Scarcity comes with opportunity costs. If we play this song on the radio during this time slot, we will not be able to play another music simultaneously.

Also, the traditional gatekeepers were conservative primarily because they were trying to appeal to the largest segment of the audience possible. They did not want to risk alienating any group of audience. Today, the dynamic in the media has shifted from the conservative end to going to the edges. It does not matter if something is not valid. If something bleeds, it leads.

Whether being conservative or being edgy is a critical consideration for those trying to do work that will have an impact on the culture. More likely, somewhere in the middle, there might be a sweet spot for us, the change agent.

As creators of culture, each of us has the chance to hone our voice, practice shipping the work, and figure out who is our smallest viable audiences. For those audiences, we need to learn to see them, understand them, cater to them, and give them something they want to share. If we can earn permission to do the work for those audiences, we can become our own gatekeepers.

Each of us needs to be responsible for what we put our name on. Each of us is going to have a following, small or big. What we do with that following is that we can no longer use it as an excuse. We need to stand up for what is right and to bring things we are proud of to the world.

The mega-hits will become rarer as the audience fragments into many long-tail segments. It is more likely we will end up somewhere closer to the middle where some people will be able to find their true fans and make the work they are proud of. Doing the work that makes us proud and not hiding behind a badge or a label is the only way to make things better.

“你做的不是那麼好”

(從我一個尊敬的作家,賽斯·高汀

創造性工作通常會有三個問題。

首先的問題是當我們開始的時候,我們做的並不那麼好。這也沒錯,對於在創作旅程中的任何人來說,突破都是個添加了“還沒有”的一詞。

如果我們在沒熟練之前就假裝的是什麼事情都已經都弄清楚了,這是沒有用的。面對批評而採取脆弱的態度反而會適得其反。實際上在此階段,“您做的不是那麼好”正是我們所需要聽到的,因為在此之後您可能會洞悉如何變得更好。

第二個問題是一旦我們開始培養技能並提供有價值的東西,一些人還是會堅持認為我們做不到美好的地方。他們這麼做是告訴了我們一些關於他們自己想要和需要的東西。這也是給我們一個向其他人提供領導力和貢獻的線索,其他人是了解我們正在做的事情並希望得到它的人。最小的可行受眾群體不是個妥協,而是前進的道路。找出那些想被錄取,是開放並且渴望的人,來去服務他們。

一個危險會在於當您在此階段聽到拒絕的話時,您可能會相信自己沒有做成任何事情,而不是意識到自己可能只是在跟錯誤的人說話。

第三個問題是當我們走了個完整的圈子。事實上我們可能還不夠好,並且沒有足夠的人想要我們想擁有的東西。對於這個部分的市場,我們根本不夠好。因此我們接受這個事實並從頭開始。我們還不夠好,我們還沒有足夠的練習,還沒有足夠的同理心,還對流派有足夠了解,並且還沒想出如何做出貢獻的方法,至少對於這個觀眾。

然後一段時間後我們變得更好。

這三個問題遲早將成為實現與眾不同和開展我們能引以為傲的工作的三個里程碑。

Algorithmic Trading Model for Mean-Reversion with Relative Strength Indicator Using Python Take 4

NOTE: This script is for learning purposes only and does not constitute a recommendation for buying or selling any stock mentioned in this script.

SUMMARY: This project aims to construct and test an algorithmic trading model and document the end-to-end steps using a template.

INTRODUCTION: This algorithmic trading model examines a simple mean-reversion strategy for a stock. The model enters a position when the price reaches either the upper or lower Relative Strength Indicator thresholds for the last X number of days. The model will exit the trade when the stock price crosses the upper or the lower RSI line for the same window size.

In iteration Take1, we set up the models using an RSI window size for long trades only. The window size varied from 10 to 50 trading days at a 5-day increment.

In iteration Take2, we set up the models using an RSI window size for long and short trades. The window size varied from 10 to 50 trading days at a 5-day increment.

In iteration Take3, we set up the models using an RSI window size for long trades only. The window size varied from 10 to 50 trading days at a 5-day increment. In addition, we varied the upper and lower RSI thresholds to examine their effects on the return.

In this Take4 iteration, we will set up the models using an RSI window size for long and short trades. The window size will vary from 10 to 50 trading days at a 5-day increment. In addition, we will vary the upper and lower RSI thresholds to examine their effects on the return.

ANALYSIS: In iteration Take1, we analyzed the stock prices for Costco Wholesale (COST) between January 1, 2016, and April 23, 2021. The top trading model produced a profit of 143.51 dollars per share. The buy-and-hold approach yielded a gain of 211.45 dollars per share.

In iteration Take2, we analyzed the stock prices for Costco Wholesale (COST) between January 1, 2016, and April 23, 2021. The top trading model produced a profit of 51.19 dollars per share. The buy-and-hold approach yielded a gain of 211.45 dollars per share.

In this Take3 iteration, we analyzed the stock prices for Costco Wholesale (COST) between January 1, 2016, and April 23, 2021. The top trading model produced a profit of 143.51 dollars per share. The buy-and-hold approach yielded a gain of 211.45 dollars per share.

In this Take4 iteration, we analyzed the stock prices for Costco Wholesale (COST) between January 1, 2016, and April 23, 2021. The top trading model produced a profit of 51.19 dollars per share. The buy-and-hold approach yielded a gain of 211.45 dollars per share.

CONCLUSION: For the stock of COST during the modeling time frame, the long-and-short with variable RSI thresholds trading strategy did not produce a better return than the buy-and-hold approach. We should consider modeling this stock further by experimenting with more variations of the strategy.

Dataset ML Model: Time series analysis with numerical attributes

Dataset Used: Quandl

The HTML formatted report can be found here on GitHub.

Binary-Class Image Classification Deep Learning Model for PatchCamelyon Grand Challenge Using TensorFlow Take 2

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The PatchCamelyon Grand Challenge dataset is a binary-class classification situation where we attempt to predict one of two possible outcomes.

INTRODUCTION: The PatchCamelyon benchmark is a new and challenging image classification dataset. It consists of 327680 color images (96 x 96px) extracted from histopathologic scans of lymph node sections. Each image is annotated with a binary label indicating the presence of metastatic tissue. This dataset provides a useful benchmark for machine learning models that are bigger than CIFAR10 but smaller than ImageNet.

In iteration Take1, we constructed a CNN model using a simple three-block VGG architecture and tested the model’s performance using a held-out test dataset.

In this Take2 iteration, we will construct a CNN model using the InceptionV3 architecture and test the model’s performance using a held-out test dataset.

ANALYSIS: In iteration Take1, the model’s performance achieved an accuracy score of 79.83% on the validation dataset after ten epochs. After we apply the final model to the test dataset, the model achieved an accuracy score of 79.00%.

In this Take2 iteration, the model’s performance achieved an accuracy score of 83.74% on the validation dataset after ten epochs. After we apply the final model to the test dataset, the model achieved an accuracy score of 79.00%.

CONCLUSION: In this iteration, the InceptionV3 CNN model appeared to be suitable for modeling this dataset. We should consider experimenting with TensorFlow for further modeling.

Dataset Used: PatchCamelyon Grand Challenge

Dataset ML Model: Binary-class image classification with numerical attributes

Dataset Reference: https://patchcamelyon.grand-challenge.org/

A potential source of performance benchmarks: https://patchcamelyon.grand-challenge.org/evaluation/challenge/leaderboard/

The HTML formatted report can be found here on GitHub.

Algorithmic Trading Model for Mean-Reversion with Relative Strength Indicator Using Python Take 3

NOTE: This script is for learning purposes only and does not constitute a recommendation for buying or selling any stock mentioned in this script.

SUMMARY: This project aims to construct and test an algorithmic trading model and document the end-to-end steps using a template.

INTRODUCTION: This algorithmic trading model examines a simple mean-reversion strategy for a stock. The model enters a position when the price reaches either the upper or lower Relative Strength Indicator thresholds for the last X number of days. The model will exit the trade when the stock price crosses the upper or the lower RSI line for the same window size.

In iteration Take1, we set up the models using an RSI window size for long trades only. The window size varied from 10 to 50 trading days at a 5-day increment.

In iteration Take2, we set up the models using an RSI window size for long and short trades. The window size varied from 10 to 50 trading days at a 5-day increment.

In this Take2 iteration, we will set up the models using an RSI window size for long trades only. The window size will vary from 10 to 50 trading days at a 5-day increment. In addition, we will vary the upper and lower RSI thresholds to examine their effects on the return.

ANALYSIS: In iteration Take1, we analyzed the stock prices for Costco Wholesale (COST) between January 1, 2016, and April 23, 2021. The top trading model produced a profit of 143.51 dollars per share. The buy-and-hold approach yielded a gain of 211.45 dollars per share.

In iteration Take2, we analyzed the stock prices for Costco Wholesale (COST) between January 1, 2016, and April 23, 2021. The top trading model produced a profit of 51.19 dollars per share. The buy-and-hold approach yielded a gain of 211.45 dollars per share.

In this Take3 iteration, we analyzed the stock prices for Costco Wholesale (COST) between January 1, 2016, and April 23, 2021. The top trading model produced a profit of 143.51 dollars per share. The buy-and-hold approach yielded a gain of 211.45 dollars per share.

CONCLUSION: For the stock of COST during the modeling time frame, the long-only with variable RSI thresholds trading strategy did not produce a better return than the buy-and-hold approach. We should consider modeling this stock further by experimenting with more variations of the strategy.

Dataset ML Model: Time series analysis with numerical attributes

Dataset Used: Quandl

The HTML formatted report can be found here on GitHub.

Binary-Class Image Classification Deep Learning Model for PatchCamelyon Grand Challenge Using TensorFlow Take 1

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The PatchCamelyon Grand Challenge dataset is a binary-class classification situation where we attempt to predict one of two possible outcomes.

INTRODUCTION: The PatchCamelyon benchmark is a new and challenging image classification dataset. It consists of 327680 color images (96 x 96px) extracted from histopathologic scans of lymph node sections. Each image is annotated with a binary label indicating presence of metastatic tissue. This dataset provides a useful benchmark for machine learning models that are bigger than CIFAR10 but smaller than ImageNet.

In this Take1 iteration, we will construct a CNN model using a simple three-block VGG architecture and test the model’s performance using a held-out test dataset.

ANALYSIS: In this Take1 iteration, the model’s performance achieved an accuracy score of 79.83% on the validation dataset after 10 epochs. After we apply the final model to the test dataset, the model achieved an accuracy score of 79.00%.

CONCLUSION: In this iteration, the simple three-block VGG CNN model appeared to be suitable for modeling this dataset. We should consider experimenting with TensorFlow for further modeling.

Dataset Used: PatchCamelyon Grand Challenge

Dataset ML Model: Binary-class image classification with numerical attributes

Dataset Reference: https://patchcamelyon.grand-challenge.org/

Potential source of performance benchmarks: https://patchcamelyon.grand-challenge.org/evaluation/challenge/leaderboard/

The HTML formatted report can be found here on GitHub.

Multi-Class Image Classification Model for Robusta Coffee Leaf Images Using TensorFlow Take 4

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The Robusta Coffee Leaf Images dataset is a multi-class classification situation where we attempt to predict one of several (more than two) possible outcomes.

INTRODUCTION: The dataset contains 1560 Robusta coffee leaf images with visible mites and spots for infection cases and images without such appearance for healthy cases. Also, the dataset includes labels regarding the health state (healthy and unhealthy) and the severity of the disease (leaf area with spots).

In iteration Take1, we constructed a CNN model using a simple three-block VGG architecture and tested the model’s performance using a validation dataset (20%) set aside from the training images.

In iteration Take2, we constructed a CNN model using the DenseNet121 architecture and tested the model’s performance using a validation dataset (20%) set aside from the training images.

In iteration Take3, we will construct a CNN model using the InceptionV3 architecture and test the model’s performance using a validation dataset (20%) set aside from the training images.

In this Take4 iteration, we will construct a CNN model using the ResNet50V2 architecture and test the model’s performance using a validation dataset (20%) set aside from the training images.

ANALYSIS: In iteration Take1, the baseline model’s performance achieved an accuracy score of 98.16% on the training dataset after 15 epochs. Furthermore, the final model achieved an accuracy score of 51.28% on the validation dataset.

In iteration Take2, the DenseNet121 model’s performance achieved an accuracy score of 97.61% on the training dataset after 15 epochs. Furthermore, the final model achieved an accuracy score of 73.08% on the validation dataset.

In iteration Take3, the InceptionV3 model’s performance achieved an accuracy score of 97.84% on the training dataset after 15 epochs. Furthermore, the final model achieved an accuracy score of 71.15% on the validation dataset.

In this Take4 iteration, the ResNet50V2 model’s performance achieved an accuracy score of 97.82% on the training dataset after 15 epochs. Furthermore, the final model achieved an accuracy score of 73.72% on the validation dataset.

CONCLUSION: In this iteration, the ResNet50V2 CNN model appeared to be suitable for modeling this dataset. We should consider experimenting with more CNN architectures for further modeling.

Dataset Used: Robusta Coffee Leaf Images

Dataset ML Model: Multi-class image classification with numerical attributes

Dataset Reference: Parraga-Alava, Jorge; Cusme, Kevin; Loor, Angélica; Santander, Esneider (2019), “RoCoLe: A robusta coffee leaf images dataset”, Mendeley Data, V2, doi: 10.17632/c5yvn32dzg.2 http://dx.doi.org/10.17632/c5yvn32dzg.2

A potential source of performance benchmarks: https://data.mendeley.com/datasets/c5yvn32dzg/2

The HTML formatted report can be found here on GitHub.

Seth Godin’s Akimbo: The Complex of Complexes

In his Akimbo podcast, Seth Godin teaches us how to adopt a posture of possibility, change the culture, and choose to make a difference. Here are my takeaways from the episode.

In this podcast, Seth discusses the various industrial complexes surrounding our lives and why we need to be aware of them.

An industrial complex gets organized when capitalists realize that they can make money doing something and have the levers to keep up with the money-making activities. Within the industrial complex, the capitalists make money by selling to their customers. The complex also spawns other mechanisms that create demands for the capitalists’ goods or services. The market feeds into the output, and output creates demand that feeds back into the complex.

Various industrial complexes surround our societies, and those complexes influence many aspects of our lives. Some examples include the military-industrial complex, the education industrial complex, the prison industrial complex, and the TV industrial complex, to name a few. Many businesses thrive within these complexes because they have found ways and leverages to participate in the complex profitable.

Organizations within the complex also compete with each other for business and resources. As one company gets ahead, other companies try to beat the competition. This racing-like competition creates a ratchet that turns the cycle in one direction.

A critical aspect of the industrial complex to understand is the market. The market is a need-sensing device. The market understands that time comes with an opportunity cost, and the market will rush to serve people’s short-term needs.

Over time, all complexes evolve with the profit-making cycle continuing. The TV industrial complex began by solving our problem of what do we put on TV. But now, it is solving how the advertisers could get a more significant return on the money they are spending.

The industrial complex model also needs a surplus of compliant workers to staff the factories. If there are enough obedient workers available, the factory can move the ratchet forward by making goods or services cheaper. Our education system (or industrial complex) was created primarily to produce as many compliant workers as possible. The system is not so much about encouraging creativity, insight, and connection but encouraging us to be part of an industrial complex.

We have a chance to contribute if we want to but without being part of a complex. People are discovering ways to improve our societies without everything comes down to money-making. One approach is to create software that can change the rules. The industrialist is all about marginal cost, raw materials, and supply chains. The software can change a bunch of those rules because software can be free and accessible. Once we start interacting with people in that way that is not harvesting their attention and turning it into money, we stand a chance to produce something without an industrial complex.

What we need to realize is that our culture does not belong to the industrial complex. While the industrial complex has proven to be helpful, it will require some ongoing boundaries. The purpose of having the industrial complex is to build the culture. Culture does not exist to make capitalists happy; instead, capitalism exists to make our culture work.